Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 24 May 2010 14:26:57 +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/kern vfs_bio.c src/sys/mips/mips pmap.c src/sys/powerpc/aim mmu_oea.c mmu_oea64.c src/sys/powerpc/booke ...
Message-ID:  <201005241433.o4OEXYfX053719@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
alc         2010-05-24 14:26:57 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/kern             vfs_bio.c 
    sys/mips/mips        pmap.c 
    sys/powerpc/aim      mmu_oea.c mmu_oea64.c 
    sys/powerpc/booke    pmap.c 
    sys/powerpc/powerpc  mmu_if.m pmap_dispatch.c 
    sys/sparc64/sparc64  pmap.c 
    sys/sun4v/sun4v      pmap.c 
    sys/sys              pcpu.h 
    sys/vm               pmap.h vm_mmap.c vm_object.c vm_page.c 
                         vm_page.h vm_pageout.c 
  Log:
  SVN rev 208504 on 2010-05-24 14:26:57Z by alc
  
  Roughly half of a typical pmap_mincore() implementation is machine-
  independent code.  Move this code into mincore(), and eliminate the
  page queues lock from pmap_mincore().
  
  Push down the page queues lock into pmap_clear_modify(),
  pmap_clear_reference(), and pmap_is_modified().  Assert that these
  functions are never passed an unmanaged page.
  
  Eliminate an inaccurate comment from powerpc/powerpc/mmu_if.m:
  Contrary to what the comment says, pmap_mincore() is not simply an
  optimization.  Without a complete pmap_mincore() implementation,
  mincore() cannot return either MINCORE_MODIFIED or MINCORE_REFERENCED
  because only the pmap can provide this information.
  
  Eliminate the page queues lock from vfs_setdirty_locked_object(),
  vm_pageout_clean(), vm_object_page_collect_flush(), and
  vm_object_page_clean().  Generally speaking, these are all accesses
  to the page's dirty field, which are synchronized by the containing
  vm object's lock.
  
  Reduce the scope of the page queues lock in vm_object_madvise() and
  vm_page_dontneed().
  
  Reviewed by:    kib (an earlier version)
  
  Revision  Changes    Path
  1.698     +56 -51    src/sys/amd64/amd64/pmap.c
  1.124     +22 -1     src/sys/arm/arm/pmap.c
  1.678     +56 -51    src/sys/i386/i386/pmap.c
  1.40      +53 -54    src/sys/i386/xen/pmap.c
  1.219     +55 -56    src/sys/ia64/ia64/pmap.c
  1.579     +0 -2      src/sys/kern/vfs_bio.c
  1.50      +68 -44    src/sys/mips/mips/pmap.c
  1.139     +34 -6     src/sys/powerpc/aim/mmu_oea.c
  1.26      +34 -6     src/sys/powerpc/aim/mmu_oea64.c
  1.28      +48 -32    src/sys/powerpc/booke/pmap.c
  1.14      +5 -4      src/sys/powerpc/powerpc/mmu_if.m
  1.22      +2 -2      src/sys/powerpc/powerpc/pmap_dispatch.c
  1.196     +40 -12    src/sys/sparc64/sparc64/pmap.c
  1.54      +37 -2     src/sys/sun4v/sun4v/pmap.c
  1.38      +1 -0      src/sys/sys/pcpu.h
  1.90      +2 -1      src/sys/vm/pmap.h
  1.240     +67 -26    src/sys/vm/vm_mmap.c
  1.423     +6 -29     src/sys/vm/vm_object.c
  1.404     +4 -3      src/sys/vm/vm_page.c
  1.168     +4 -2      src/sys/vm/vm_page.h
  1.323     +0 -6      src/sys/vm/vm_pageout.c



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