Page MenuHomeFreeBSD

amd64 pmap: preset A and M bits for pmap_qenter() mappings
ClosedPublic

Authored by kib on Jan 6 2022, 11:09 PM.

Details

Summary
This removes one or two atomic update of the pte on access. Also it
makes the pte constant during its lifecycle.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

kib requested review of this revision.Jan 6 2022, 11:09 PM
alc added inline comments.
sys/amd64/amd64/pmap.c
3900–3901

Here too?

3912–3913

Here too?

P.S. If you decide to update pmap_kenter{,_attr}(), please pick one ordering for the flags and use it consistently.

This revision is now accepted and ready to land.Jan 6 2022, 11:48 PM
kib marked 2 inline comments as done.

Handle kenter. Unify pte bits order in kenter/qenter.

This revision now requires review to proceed.Jan 7 2022, 12:01 AM
This revision is now accepted and ready to land.Jan 7 2022, 12:05 AM

As an aside, I just verified that arm64 is already setting the equivalent bits.