Page MenuHomeFreeBSD

Fix memory corruption while configuring CPU windows on Marvell SoCs
ClosedPublic

Authored by mw_semihalf.com on May 14 2017, 12:58 AM.
Tags
Referenced Files
F138857645: D10720.diff
Fri, Dec 5, 11:31 AM
Unknown Object (File)
Tue, Dec 2, 8:09 AM
Unknown Object (File)
Thu, Nov 27, 9:16 AM
Unknown Object (File)
Mon, Nov 24, 1:54 PM
Unknown Object (File)
Sat, Nov 22, 8:40 AM
Unknown Object (File)
Fri, Nov 21, 1:49 AM
Unknown Object (File)
Fri, Nov 21, 1:46 AM
Unknown Object (File)
Fri, Nov 21, 1:43 AM

Details

Summary

Resolving CPU windows from localbus entry caused buffer overflow
and memory corruption. Fix wrong indexing and ensure the index
does not exceed table size.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

I think it is easier to use nitems() here.

sys/arm/mv/mv_common.c
2158 ↗(On Diff #28320)

if (tuples > nitems(cpu_win_tbl)) {

2196 ↗(On Diff #28320)

if (t >= nitems(cpu_win_tbl)) {

Switched to nitems, thanks for the suggestion.

This revision was automatically updated to reflect the committed changes.