Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Feb 1999 16:37:36 -0800 (PST)
From:      Matt Dillon <dillon@FreeBSD.ORG>
To:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG
Subject:   cvs commit: src/sys/alpha/alpha vm_machdep.c src/sys/i386/i386 vm_machdep.c src/sys/vm vm_page.c vm_page.h vm_pageout.c
Message-ID:  <199902080037.QAA79913@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
dillon      1999/02/07 16:37:36 PST

  Modified files:
    sys/alpha/alpha      vm_machdep.c 
    sys/i386/i386        vm_machdep.c 
    sys/vm               vm_page.c vm_page.h vm_pageout.c 
  Log:
      Rip out PQ_ZERO queue.  PQ_ZERO functionality is now combined in with
      PQ_FREE.  There is little operational difference other then the kernel
      being a few kilobytes smaller and the code being more readable.
  
      * vm_page_select_free() has been *greatly* simplified.
      * The PQ_ZERO page queue and supporting structures have been removed
      * vm_page_zero_idle() revamped (see below)
  
      PG_ZERO setting and clearing has been migrated from vm_page_alloc()
      to vm_page_free[_zero]() and will eventually be guarenteed to remain
      tracked throughout a page's life ( if it isn't already ).
  
      When a page is freed, PG_ZERO pages are appended to the appropriate
      tailq in the PQ_FREE queue while non-PG_ZERO pages are prepended.
      When locating a new free page, PG_ZERO selection operates from within
      vm_page_list_find() ( get page from end of queue instead of beginning
      of queue ) and then only occurs in the nominal critical path case.  If
      the nominal case misses, both normal and zero-page allocation devolves
      into the same _vm_page_list_find() select code without any specific
      zero-page optimizations.
  
      Additionally, vm_page_zero_idle() has been revamped.  Hysteresis has been
      added and zero-page tracking adjusted to conform with the other changes.
      Currently hysteresis is set at 1/3 (lo) and 1/2 (hi) the number of free
      pages.  We may wish to increase both parameters as time permits.  The
      hysteresis is designed to avoid silly zeroing in borderline allocation/free
      situations.
  
  Revision  Changes    Path
  1.9       +7 -6      src/sys/alpha/alpha/vm_machdep.c
  1.117     +23 -19    src/sys/i386/i386/vm_machdep.c
  1.125     +34 -91    src/sys/vm/vm_page.c
  1.55      +28 -14    src/sys/vm/vm_page.h
  1.136     +2 -2      src/sys/vm/vm_pageout.c

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199902080037.QAA79913>