git: kernel - Fix lockmgr non-zero exclusive count panic

Matthew Dillon dillon at
Wed Dec 29 00:37:40 PST 2010

commit 7a4c56501df11e04efafe58591214c5806606c25
Author: Matthew Dillon <dillon at>
Date:   Wed Dec 29 00:32:27 2010 -0800

    kernel - Fix lockmgr non-zero exclusive count panic
    * The vm_map lock uses shared & exclusive locks and tries to upgrade
      shared to exclusive.  There is a race where a shared upgrade can
      steal an exclusive lock from an exclusive request which has already
      acquired the LK_WANT_EXCL flag.
    * Deal with the case by having the exclusive lock also acquire
      LK_HAVE_EXCL to catch any shared upgrades which beat out the
    Reported-by: YONETANI Tomokazu <qhwt.dfly at>
    Researched-by: YONETANI Tomokazu <qhwt.dfly at>

Summary of changes:
 sys/kern/kern_lock.c |   24 ++++++++++++++++++------
 1 files changed, 18 insertions(+), 6 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list