On Sat, May 16, 2009 at 08:29:54AM +0000, YAMAMOTO Takashi wrote:

> Modified Files:
>       src/sys/kern: vfs_subr.c
>       src/sys/sys: vnode.h
> 
> Log Message:
> put a flag bit into v_usecount to prevent vtryget during getcleanvnode.
> this fixes the following deadlock.

Thanks! How about this to avoid potential sign compare issues? I forgot
to e-mail you about it earlier.

@@ -252,8 +252,8 @@ typedef struct vnode vnode_t;
 /*
  * v_usecount; see the comment in vfs_subr.c
  */
-#define        VC_XLOCK        0x80000000
-#define        VC_MASK         0x7fffffff
+#define        VC_XLOCK        0x40000000
+#define        VC_MASK         (0xffffffff & ~VC_XLOCK)

Reply via email to