Page MenuHomeFreeBSD

Use vm_page_unwire_noq() instead of vm_page_unwire(PQ_NONE).
ClosedPublic

Authored by markj on May 30 2019, 4:36 PM.
Tags
None
Referenced Files
F136154836: D20470.id.diff
Sun, Nov 16, 6:18 AM
F136153557: D20470.id59490.diff
Sun, Nov 16, 5:59 AM
F136139081: D20470.id58077.diff
Sun, Nov 16, 2:42 AM
F136135068: D20470.id59490.diff
Sun, Nov 16, 1:49 AM
Unknown Object (File)
Tue, Oct 28, 3:46 AM
Unknown Object (File)
Sat, Oct 18, 10:58 PM
Unknown Object (File)
Sat, Oct 18, 10:18 PM
Unknown Object (File)
Oct 11 2025, 8:18 AM
Subscribers

Details

Summary

For managed pages, these two calls are not equivalent:
vm_page_unwire(PQ_NONE) will remove the page from its page queue, if
any, while vm_page_unwire_noq() leaves it alone. However, the existing
callers of vm_page_unwire(PQ_NONE) are applying it to fictitious or
unmanaged pages, so there should be no functional impact.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib added inline comments.
sys/vm/vm_glue.c
233 ↗(On Diff #58077)

Just a note that the page is managed. It is because it is freed immediately after, we can use vm_page_unwire_noq().

This revision is now accepted and ready to land.May 30 2019, 5:27 PM
sys/vm/vm_glue.c
233 ↗(On Diff #58077)

This call was added in D19247, so it will not be committed with the rest of this diff.

This revision was automatically updated to reflect the committed changes.