]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Implement atomic state updates using the new vm_page_astate_t structure.
authormarkj <markj@FreeBSD.org>
Thu, 12 Dec 2019 21:13:20 +0000 (21:13 +0000)
committermarkj <markj@FreeBSD.org>
Thu, 12 Dec 2019 21:13:20 +0000 (21:13 +0000)
commita02a8ec7c1f64d4ce2874713476d471d2b9b894a
tree23ef2962904c941b72f4d449663afe472c57576f
parentb8eb9f3672faad8566fffd7443892a447154e228
Implement atomic state updates using the new vm_page_astate_t structure.

Introduce primitives vm_page_astate_load() and vm_page_astate_fcmpset()
to operate on the 32-bit per-page atomic state.  Modify
vm_page_pqstate_fcmpset() to use them.  No functional change intended.

Introduce PGA_QUEUE_OP_MASK, a subset of PGA_QUEUE_STATE_MASK that only
includes queue operation flags.  This will be used in subsequent
patches.

Reviewed by: alc, jeff, kib
Sponsored by: Netflix, Intel
Differential Revision: https://reviews.freebsd.org/D22753
sys/vm/vm_page.h