kernel - Refactor swapcache heuristic
authorMatthew Dillon <dillon@apollo.backplane.com>
Sun, 24 Mar 2019 05:57:02 +0000 (22:57 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 27 Mar 2019 03:32:47 +0000 (20:32 -0700)
commitb396bb03905035e2d0e69f9993b2ccc47e77ae73
tree618173c51261818fcca78ca95e374c37eadc3aef
parente05899ceef0e1a34c88b6d12dd59538f627df6d4
kernel - Refactor swapcache heuristic

* Refactor the swapcache inactive queue heuristic to remove a
  write to a global variable that is in the critical path, and
  to improve operation.  This should reduce cpu cache ping-ponging.

* Change vpgqueues.lcnt from an int to a long, change misc use
  cases in the pageout code to a long.

* Use __aligned(64) to 64-byte-align vm_page_queues[].  It was
  previously only 32-byte aligned.
sys/vm/swap_pager.h
sys/vm/vm_page.c
sys/vm/vm_page.h
sys/vm/vm_pageout.c
sys/vm/vm_swapcache.c