Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 May 2010 18:00:44 +0000 (UTC)
From:      Alan Cox <alc@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/amd64/amd64 pmap.c src/sys/arm/arm pmap.c src/sys/i386/i386 pmap.c src/sys/i386/xen pmap.c src/sys/ia64/ia64 pmap.c src/sys/mips/mips pmap.c src/sys/powerpc/aim mmu_oea.c mmu_oea64.c src/sys/powerpc/booke pmap.c src/sys/sparc64/sparc64 ...
Message-ID:  <201005261803.o4QI3LfT088097@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
alc         2010-05-26 18:00:44 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/amd64      pmap.c 
    sys/arm/arm          pmap.c 
    sys/i386/i386        pmap.c 
    sys/i386/xen         pmap.c 
    sys/ia64/ia64        pmap.c 
    sys/mips/mips        pmap.c 
    sys/powerpc/aim      mmu_oea.c mmu_oea64.c 
    sys/powerpc/booke    pmap.c 
    sys/sparc64/sparc64  pmap.c 
    sys/sun4v/sun4v      pmap.c 
    sys/vm               vm_map.c vm_mmap.c vm_page.c 
                         vnode_pager.c 
  Log:
  SVN rev 208574 on 2010-05-26 18:00:44Z by alc
  
  Push down page queues lock acquisition in pmap_enter_object() and
  pmap_is_referenced().  Eliminate the corresponding page queues lock
  acquisitions from vm_map_pmap_enter() and mincore(), respectively.  In
  mincore(), this allows some additional cases to complete without ever
  acquiring the page queues lock.
  
  Assert that the page is managed in pmap_is_referenced().
  
  On powerpc/aim, push down the page queues lock acquisition from
  moea*_is_modified() and moea*_is_referenced() into moea*_query_bit().
  Again, this will allow some additional cases to complete without ever
  acquiring the page queues lock.
  
  Reorder a few statements in vm_page_dontneed() so that a race can't lead
  to an old reference persisting.  This scenario is described in detail by a
  comment.
  
  Correct a spelling error in vm_page_dontneed().
  
  Assert that the object is locked in vm_page_clear_dirty(), and restrict the
  page queues lock assertion to just those cases in which the page is
  currently writeable.
  
  Add object locking to vnode_pager_generic_putpages().  This was the one
  and only place where vm_page_clear_dirty() was being called without the
  object being locked.
  
  Eliminate an unnecessary vm_page_lock() around vnode_pager_setsize()'s call
  to vm_page_clear_dirty().
  
  Change vnode_pager_generic_putpages() to the modern-style of function
  definition.  Also, change the name of one of the parameters to follow
  virtual memory system naming conventions.
  
  Reviewed by:    kib
  
  Revision  Changes    Path
  1.699     +10 -5     src/sys/amd64/amd64/pmap.c
  1.125     +5 -2      src/sys/arm/arm/pmap.c
  1.679     +10 -5     src/sys/i386/i386/pmap.c
  1.41      +6 -4      src/sys/i386/xen/pmap.c
  1.220     +6 -2      src/sys/ia64/ia64/pmap.c
  1.52      +5 -2      src/sys/mips/mips/pmap.c
  1.140     +9 -7      src/sys/powerpc/aim/mmu_oea.c
  1.27      +9 -8      src/sys/powerpc/aim/mmu_oea64.c
  1.29      +10 -5     src/sys/powerpc/booke/pmap.c
  1.197     +13 -6     src/sys/sparc64/sparc64/pmap.c
  1.55      +9 -1      src/sys/sun4v/sun4v/pmap.c
  1.430     +1 -14     src/sys/vm/vm_map.c
  1.241     +10 -3     src/sys/vm/vm_mmap.c
  1.406     +12 -3     src/sys/vm/vm_page.c
  1.263     +22 -18    src/sys/vm/vnode_pager.c



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