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
Unknown Object (File)
Wed, May 1, 9:58 PM
Unknown Object (File)
Mon, Apr 29, 10:06 PM
Unknown Object (File)
Sat, Apr 27, 3:54 PM
Unknown Object (File)
Fri, Apr 26, 1:35 PM
Unknown Object (File)
Thu, Apr 25, 7:58 PM
Unknown Object (File)
Wed, Apr 24, 7:49 PM
Unknown Object (File)
Wed, Apr 24, 6:36 PM
Unknown Object (File)
Sat, Apr 20, 6:33 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.