kernel - Remove last exclusive vnode vm_object lock from the critical path
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 24 Oct 2013 20:39:11 +0000 (13:39 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 24 Oct 2013 20:39:11 +0000 (13:39 -0700)
commit519883f3e095f25c73785ed449b354f237649f7b
tree55595abfedce70b54e68224735372f96f91ded6f
parent51818c080ae8be00bbd3d0bb4d584ac82a1fb9ec
kernel - Remove last exclusive vnode vm_object lock from the critical path

* Remove the last exclusive vnode vm_object lock from the critical path.

* Path gets hit on exit, but it matters a lot if one is fork/exec'ing a
  lot of binaries.  For example, builds which fork/exec huge numbers of
  concurrent /bin/sh's, compilers, and other programs.

* vfork/exec rate on blade server, 10000 x 8-threads (80000 total) reduced
  from 10.6 seconds to 3.8 seconds, for a major 2.7x improvement in
  performance.
sys/vm/vm_object.c