Page MenuHomeFreeBSD

Add a PC_IS_FULL macro to the arm64 pmap
ClosedPublic

Authored by andrew on Aug 16 2022, 3:45 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Jan 24, 5:19 PM
Unknown Object (File)
Sat, Jan 11, 9:22 PM
Unknown Object (File)
Sep 26 2024, 2:24 PM
Unknown Object (File)
Sep 25 2024, 5:49 PM
Unknown Object (File)
Sep 24 2024, 4:12 AM
Unknown Object (File)
Sep 19 2024, 4:33 PM
Unknown Object (File)
Sep 19 2024, 1:01 AM
Unknown Object (File)
Sep 18 2024, 1:32 AM
Subscribers

Details

Reviewers
jhb
kib
markj
alc
manu
Group Reviewers
arm64
Summary

This is used to handle the difference in size of pc_map between
4k and 16k pages.

Diff Detail

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

Event Timeline

markj added inline comments.
sys/arm64/arm64/pmap.c
2479
This revision is now accepted and ready to land.Aug 16 2022, 4:16 PM

So I started with this locally and ended up adding some different variants. I meant to push them for review yet but haven't. In particular, the versions I have are still able to be unrolled in the case of 16k pages and by using constants can do less loads from memory. I'll upload the set of changes I have in a bit. They are also useful in CheriBSD where we have to have yet another set of constants for _N* for purecap kernels, so I tried to minimize the special cases for differing values of _N*.

Uploaded to D36217 and a followup change to pc_is_free in D36218.

Is this change still useful?

Supplanted by the two reviews noted earlier.