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

Brian Fundakowski Feldman green at FreeBSD.org
Sun Aug 15 23:28:01 PDT 2004


On Mon, Aug 16, 2004 at 06:16:12AM +0000, Alan Cox wrote:
> alc         2004-08-16 06:16:12 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/vm               vm.h vm_fault.c vm_map.c vm_meter.c 
>   Log:
>    - Introduce and use a new tunable "debug.mpsafevm".  At present, setting
>      "debug.mpsafevm" results in (almost) Giant-free execution of zero-fill
>      page faults.  (Giant is held only briefly, just long enough to determine
>      if there is a vnode backing the faulting address.)
>   
>      Also, condition the acquisition and release of Giant around calls to
>      pmap_remove() on "debug.mpsafevm".
>   
>      The effect on performance is significant.  On my dual Opteron, I see a
>      3.6% reduction in "buildworld" time.
>   
>    - Use atomic operations to update several counters in vm_fault().

Now all we need is to simply make VFS Giant-free, too!

;)

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> green at FreeBSD.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\


More information about the cvs-src mailing list