Module Name: src Committed By: hannken Date: Tue Sep 30 10:15:03 UTC 2014
Modified Files: src/sys/fs/puffs: puffs_node.c puffs_vnops.c Log Message: Fix the puffs_sop_thread -> puffs_cookie2vnode path: - pass the cookie by reference - add missing mutex_exit() - update assertion for VNON typed vnodes To generate a diff of this commit: cvs rdiff -u -r1.33 -r1.34 src/sys/fs/puffs/puffs_node.c cvs rdiff -u -r1.186 -r1.187 src/sys/fs/puffs/puffs_vnops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/fs/puffs/puffs_node.c diff -u src/sys/fs/puffs/puffs_node.c:1.33 src/sys/fs/puffs/puffs_node.c:1.34 --- src/sys/fs/puffs/puffs_node.c:1.33 Fri Sep 5 15:39:18 2014 +++ src/sys/fs/puffs/puffs_node.c Tue Sep 30 10:15:03 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: puffs_node.c,v 1.33 2014/09/05 15:39:18 manu Exp $ */ +/* $NetBSD: puffs_node.c,v 1.34 2014/09/30 10:15:03 hannken Exp $ */ /* * Copyright (c) 2005, 2006, 2007 Antti Kantee. All Rights Reserved. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: puffs_node.c,v 1.33 2014/09/05 15:39:18 manu Exp $"); +__KERNEL_RCSID(0, "$NetBSD: puffs_node.c,v 1.34 2014/09/30 10:15:03 hannken Exp $"); #include <sys/param.h> #include <sys/hash.h> @@ -260,7 +260,7 @@ puffs_cookie2vnode(struct puffs_mount *p return 0; } - rv = vcache_get(PMPTOMP(pmp), ck, sizeof(ck), vpp); + rv = vcache_get(PMPTOMP(pmp), &ck, sizeof(ck), vpp); if (rv != 0) return rv; mutex_enter((*vpp)->v_interlock); @@ -270,6 +270,7 @@ puffs_cookie2vnode(struct puffs_mount *p *vpp = NULL; return PUFFS_NOSUCHCOOKIE; } + mutex_exit((*vpp)->v_interlock); return 0; } Index: src/sys/fs/puffs/puffs_vnops.c diff -u src/sys/fs/puffs/puffs_vnops.c:1.186 src/sys/fs/puffs/puffs_vnops.c:1.187 --- src/sys/fs/puffs/puffs_vnops.c:1.186 Thu Sep 11 07:59:14 2014 +++ src/sys/fs/puffs/puffs_vnops.c Tue Sep 30 10:15:03 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: puffs_vnops.c,v 1.186 2014/09/11 07:59:14 manu Exp $ */ +/* $NetBSD: puffs_vnops.c,v 1.187 2014/09/30 10:15:03 hannken Exp $ */ /* * Copyright (c) 2005, 2006, 2007 Antti Kantee. All Rights Reserved. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.186 2014/09/11 07:59:14 manu Exp $"); +__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.187 2014/09/30 10:15:03 hannken Exp $"); #include <sys/param.h> #include <sys/buf.h> @@ -1428,7 +1428,7 @@ puffs_vnop_reclaim(void *v) if (__predict_true(VPTOPP(vp)->pn_parent != NULL)) vrele(VPTOPP(vp)->pn_parent); else - KASSERT(vp->v_vflag & VV_ROOT); + KASSERT(vp->v_type == VNON || (vp->v_vflag & VV_ROOT)); } puffs_putvnode(vp);