Page MenuHomeFreeBSD

arm64 pmap: Convert PC_IS_FREE into an inline function.
ClosedPublic

Authored by jhb on Aug 16 2022, 5:15 PM.
Tags
None
Referenced Files
F133441369: D36218.id109396.diff
Sat, Oct 25, 8:02 PM
Unknown Object (File)
Wed, Oct 22, 3:54 AM
Unknown Object (File)
Mon, Oct 13, 7:25 AM
Unknown Object (File)
Sat, Oct 11, 7:53 AM
Unknown Object (File)
Sat, Oct 11, 7:53 AM
Unknown Object (File)
Sat, Oct 11, 7:53 AM
Unknown Object (File)
Sat, Oct 11, 12:33 AM
Unknown Object (File)
Thu, Oct 9, 6:58 AM
Subscribers

Details

Summary

This permits inlining the comparisons even in the 16K page case.
Note that since PC_FREEN is -1, values can be compared efficiently
without having to fetch words of pc_freemask from memory via the
'cmn <reg>, #0x1' instruction.

Sponsored by: DARPA

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 46959
Build 43848: arc lint + arc unit

Event Timeline

jhb requested review of this revision.Aug 16 2022, 5:15 PM
markj added inline comments.
sys/arm64/arm64/pmap.c
2480

Is pc_freemask unused?

This revision is now accepted and ready to land.Aug 16 2022, 6:14 PM
sys/arm64/arm64/pmap.c
2480

No, we still use it to initialize the mask in new chunks via memcpy.