cvs commit: src/sys/vm vm_extern.h vm_fault.c vm_map.c vm_page.c

Paul Saab ps at FreeBSD.org
Tue Nov 16 19:48:10 GMT 2004


ps          2004-11-16 19:48:10 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_4)
    sys/vm               vm_extern.h vm_fault.c vm_map.c vm_page.c 
  Log:
  MFC:
  >alc         2004/05/21 21:53:52 PDT
  >
  >  FreeBSD src repository
  >
  >  Modified files:
  >    sys/vm               vm_extern.h vm_fault.c vm_map.c vm_page.c
  >  Log:
  >    To date, unwiring a fictitious page has produced a panic.  The reason
  >    being that PHYS_TO_VM_PAGE() returns the wrong vm_page for fictitious
  >    pages but unwiring uses PHYS_TO_VM_PAGE().  The resulting panic
  >    reported an unexpected wired count.  Rather than attempting to fix
  >    PHYS_TO_VM_PAGE(), this fix takes advantage of the properties of
  >    fictitious pages.  Specifically, fictitious pages will never be
  >    completely unwired.  Therefore, we can keep a fictitious page's wired
  >    count forever set to one and thereby avoid the use of
  >    PHYS_TO_VM_PAGE() when we know that we're working with a fictitious
  >    page, just not which one.
  >
  >    In collaboration with: green@, tegge@
  >    PR: kern/29915
  
  Reviewed by:    alc
  
  Revision    Changes    Path
  1.46.2.5    +2 -3      src/sys/vm/vm_extern.h
  1.108.2.10  +10 -52    src/sys/vm/vm_fault.c
  1.187.2.31  +17 -5     src/sys/vm/vm_map.c
  1.147.2.22  +4 -0      src/sys/vm/vm_page.c


More information about the cvs-src mailing list