git: DragonFly_RELEASE_5_6 kernel - VM rework part 21 - Fix excessive paging to swap bug
Matthew Dillon
dillon at crater.dragonflybsd.org
Fri Jun 28 15:46:46 PDT 2019
commit d7e883fdbf85067272b0d3279e56976cde73ff91
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Fri Jun 28 15:35:18 2019 -0700
kernel - VM rework part 21 - Fix excessive paging to swap bug
* Fix a bug where pages on the inactive queue would sometimes not
get moved to the cache queue after being paged out, and also not
get its [M]odify bit cleared, causing the pageout demon to repeatedly
write numerous pages out without making progress.
This may require some additional work to avoid a double-pageout
condition, but it fixes the main issue.
* Returns us back to the 'feel' of paging prior to the VM rework,
and should reduce stuttering in chrome and other paging-related lag
users might experience.
The bug was introduced due to differences in how the pmap code
handle vm_page_protect(..., VM_PROT_READ).
Summary of changes:
sys/vm/vm_pageout.c | 72 ++++++++++++++++++++++++++++++++++++++++++-----------
1 file changed, 57 insertions(+), 15 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/d7e883fdbf85067272b0d3279e56976cde73ff91
--
DragonFly BSD source repository
More information about the Commits
mailing list