Stop clearing page flags in vm_page_pqbatch_submit().
All existing callers guarantee that the page does not have a pre-existing dequeue pending. Thus, if the page is dequeued before pqbatch_submit() acquires the page queue lock, we do not need to do anything since vm_page_dequeue_complete() takes care of clearing all page queue state flags for us. With this change, vm_page_pqbatch_submit() has the nice property that it does not directly modify any fields in the page structure. Reviewed by: alc, kib Tested by: pho (part of a larger change) MFC after: 1 week Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D21372
This commit is contained in:
parent
386eba08bd
commit
f93670b7b9
@ -3174,7 +3174,6 @@ vm_page_pqbatch_submit(vm_page_t m, uint8_t queue)
|
||||
("invalid queue transition for page %p", m));
|
||||
KASSERT((m->aflags & PGA_ENQUEUED) == 0,
|
||||
("page %p is enqueued with invalid queue index", m));
|
||||
vm_page_aflag_clear(m, PGA_QUEUE_STATE_MASK);
|
||||
}
|
||||
vm_pagequeue_unlock(pq);
|
||||
critical_exit();
|
||||
|
Loading…
Reference in New Issue
Block a user