Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Mar 2005 06:08:58 +0000 (UTC)
From:      Jeff Roberson <jeff@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/sys vnode.h src/sys/kern vfs_subr.c
Message-ID:  <200503240608.j2O68wtF015240@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jeff        2005-03-24 06:08:58 UTC

  FreeBSD src repository

  Modified files:
    sys/sys              vnode.h 
    sys/kern             vfs_subr.c 
  Log:
   - If vput() is called with a shared lock it must upgrade to an exclusive
     before it can call VOP_INACTIVE().  This must use the EXCLUPGRADE path
     because we may violate some lock order with another locked vnode if
     we drop and reacquire the lock.  If EXCLUPGRADE fails, we mark the
     vnode with VI_OWEINACT.  This case should be very rare.
   - Clear VI_OWEINACT in vinactive() and vbusy().
   - If VI_OWEINACT is set in vgone() do the VOP_INACTIVE call here as well.
  
  Sponsored by:   Isilon Systems, Inc.
  
  Revision  Changes    Path
  1.597     +12 -3     src/sys/kern/vfs_subr.c
  1.294     +1 -0      src/sys/sys/vnode.h



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