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