Page MenuHomeFreeBSD

Eliminate unnecessary uses of UMA_ZONE_NOFREE from the swap pager
ClosedPublic

Authored by alc on Sep 22 2018, 10:35 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Nov 28, 9:44 PM
Unknown Object (File)
Thu, Nov 28, 9:41 PM
Unknown Object (File)
Nov 9 2024, 10:54 PM
Unknown Object (File)
Nov 9 2024, 1:35 PM
Unknown Object (File)
Nov 9 2024, 4:50 AM
Unknown Object (File)
Sep 27 2024, 12:44 PM
Unknown Object (File)
Sep 24 2024, 9:07 AM
Unknown Object (File)
Sep 17 2024, 8:14 PM
Subscribers

Details

Summary

Passing UMA_ZONE_NOFREE to uma_zcreate() for swpctrie_zone and swblk_zone is redundant, because uma_zone_reserve_kva() is performed on both zones and it sets this same flag on the zone.

Moreover, I don't see why the swap pager would require either zone to be UMA_ZONE_NOFREE.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

I believe NOFREE there is to reduce risk of the deadlock due to the allocation, and not to prevent memory type change.

This revision is now accepted and ready to land.Sep 23 2018, 3:33 PM
In D17296#368720, @kib wrote:

I believe NOFREE there is to reduce risk of the deadlock due to the allocation, and not to prevent memory type change.

Me too. I would hope, if not expect, that our use of M_USE_RESERVE on allocations by the page daemon would suffice.

This revision was automatically updated to reflect the committed changes.