Page MenuHomeFreeBSD

ARM: Implement synchronization of I cache for user mode address space
ClosedPublic

Authored by mmel on Mar 9 2015, 3:50 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 21 2023, 10:24 PM
Unknown Object (File)
Dec 13 2023, 6:21 AM
Unknown Object (File)
Nov 12 2023, 9:56 PM
Unknown Object (File)
Nov 9 2023, 6:19 PM
Unknown Object (File)
Nov 9 2023, 1:14 AM
Unknown Object (File)
Nov 8 2023, 10:39 PM
Unknown Object (File)
Nov 2 2023, 6:30 AM
Unknown Object (File)
Oct 9 2023, 8:56 PM
Subscribers
None

Details

Reviewers
andrew
imp
ian

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

mmel retitled this revision from to ARM: Implement synchronization of I cache for user mode address space.
mmel updated this object.
mmel edited the test plan for this revision. (Show Details)
mmel added reviewers: ian, imp, andrew.
mmel set the repository for this revision to rS FreeBSD src repository - subversion.
sys/arm/arm/sys_machdep.c
69

-l in align (should be capitalized too)

73

I'm not sure it's necessary to align to a cacheline. the cache ops themselves don't need it, doing any VA in the line will clean/inval the whole line accoruding to the arm arm.

77

PAGE_SIZE-1 can be spelled PAGE_MASK.

93

+a in Invalidate

120

I cannot figure out what the tests with the >>4 expressions are for.

Couldn't this whole check be reduced to just addr+len > VM_MAXUSER_ADDRESS? (Note: not >= because addr+len is the first byte not affected by the operation.)

124

Pedantically, this should be MAX(addr, VM_MAXUSER_ADDRESS) -- either the bad access is above the line or right at the point the operation crosses the line. Might need ugly casting to use MAX() here tho.

Address issues in previous comments.

ian edited edge metadata.
This revision is now accepted and ready to land.Mar 10 2015, 3:46 PM