git: kernel - Remove P_SWAPPEDOUT flag and paging mode

Matthew Dillon dillon at crater.dragonflybsd.org
Sat Jul 25 12:31:49 PDT 2020


commit ef866ef722201a075184dad637df61ebde2cda0c
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Fri Jul 24 22:57:11 2020 -0700

    kernel - Remove P_SWAPPEDOUT flag and paging mode
    
    * This code basically no longer functions in any worthwhile or
      useful manner, remove it.
    
      The code harkens back to a time when machines had very little
      memory and had to time-share processes by actually descheduling
      them for long periods of time (like 20 seconds) and paging out
      the related memory.
    
      In modern times the chooser algorithm just doesn't work well
      because we can no longer assume that programs with large
      memory footprints can be demoted.
    
    * In modern times machines have sufficient memory to rely almost
      entirely on the VM fault and pageout scan.  The latencies caused
      by fault-ins are usually sufficient to demote paging-intensive
      processes while allowing the machine to continue to function.
    
      If functionality need to be added back in, it can be added back
      in on the fault path and not here.

Summary of changes:
 sys/kern/tty.c                       |   2 +-
 sys/platform/pc64/x86_64/trap.c      |  16 --
 sys/platform/vkernel64/x86_64/trap.c |  18 --
 sys/sys/proc.h                       |   7 +-
 sys/vfs/procfs/procfs_ctl.c          |   1 -
 sys/vfs/procfs/procfs_status.c       |   5 +-
 sys/vm/vm_extern.h                   |   1 -
 sys/vm/vm_glue.c                     | 326 +----------------------------------
 sys/vm/vm_meter.c                    |  19 +-
 sys/vm/vm_pageout.c                  |  50 +-----
 10 files changed, 22 insertions(+), 423 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/ef866ef722201a075184dad637df61ebde2cda0c


-- 
DragonFly BSD source repository



More information about the Commits mailing list