git: HAMMER VFS - Fix two ip->vp inode/vnode races

Matthew Dillon dillon at
Sat Sep 25 09:48:18 PDT 2010

commit 036ea0c3142400d6417e92fe874773752d683044
Author: Matthew Dillon <dillon at>
Date:   Sat Sep 25 07:58:12 2010 -0700

    HAMMER VFS - Fix two ip->vp inode/vnode races
    * nrename and nremove attempt to dereference ip->vp.  Because ip->vp has
      no other references in these code paths the operation can race and
      either assert or panic on a null-pointer dereference.
      Fix by formally acquiring the vnode before trying to dereference it.
    * All other cases are passed a referenced vnode or properly acquire it
      (e.g. nresolve), and did not have this issue.

Summary of changes:
 sys/vfs/hammer/hammer_vnops.c |   47 +++++++++++++++++++++++++++++++++-------
 1 files changed, 38 insertions(+), 9 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list