Module Name: src Committed By: dholland Date: Sat May 17 04:07:15 UTC 2014
Modified Files: src/sys/fs/union: union_subr.c union_vnops.c Log Message: Also set or assert that *vpp is null before calling VOP_MKDIR. To generate a diff of this commit: cvs rdiff -u -r1.64 -r1.65 src/sys/fs/union/union_subr.c cvs rdiff -u -r1.60 -r1.61 src/sys/fs/union/union_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/union/union_subr.c diff -u src/sys/fs/union/union_subr.c:1.64 src/sys/fs/union/union_subr.c:1.65 --- src/sys/fs/union/union_subr.c:1.64 Sat May 17 04:03:49 2014 +++ src/sys/fs/union/union_subr.c Sat May 17 04:07:15 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: union_subr.c,v 1.64 2014/05/17 04:03:49 dholland Exp $ */ +/* $NetBSD: union_subr.c,v 1.65 2014/05/17 04:07:15 dholland Exp $ */ /* * Copyright (c) 1994 @@ -72,7 +72,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: union_subr.c,v 1.64 2014/05/17 04:03:49 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: union_subr.c,v 1.65 2014/05/17 04:07:15 dholland Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -811,6 +811,7 @@ union_mkshadow(struct union_mount *um, s va.va_type = VDIR; va.va_mode = um->um_cmode; + KASSERT(*vpp == NULL); error = VOP_MKDIR(dvp, vpp, &cn, &va); VOP_UNLOCK(dvp); PNBUF_PUT(pnbuf); Index: src/sys/fs/union/union_vnops.c diff -u src/sys/fs/union/union_vnops.c:1.60 src/sys/fs/union/union_vnops.c:1.61 --- src/sys/fs/union/union_vnops.c:1.60 Sat May 17 04:03:49 2014 +++ src/sys/fs/union/union_vnops.c Sat May 17 04:07:15 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: union_vnops.c,v 1.60 2014/05/17 04:03:49 dholland Exp $ */ +/* $NetBSD: union_vnops.c,v 1.61 2014/05/17 04:07:15 dholland Exp $ */ /* * Copyright (c) 1992, 1993, 1994, 1995 @@ -72,7 +72,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: union_vnops.c,v 1.60 2014/05/17 04:03:49 dholland Exp $"); +__KERNEL_RCSID(0, "$NetBSD: union_vnops.c,v 1.61 2014/05/17 04:07:15 dholland Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -1385,6 +1385,7 @@ union_mkdir(void *v) int error; struct vnode *vp; + vp = NULL; error = VOP_MKDIR(dvp, &vp, cnp, ap->a_vap); if (error) { vrele(ap->a_dvp);