diff options
| author | Bruce Evans <bde@FreeBSD.org> | 2000-11-04 08:10:56 +0000 |
|---|---|---|
| committer | Bruce Evans <bde@FreeBSD.org> | 2000-11-04 08:10:56 +0000 |
| commit | 1c1752872f0b5a55c89a940ccd2c9e0fe7f5cd3a (patch) | |
| tree | c87a5d0458befae0650a31b2d233097db8ed3b53 /sys/gnu | |
| parent | af6f98bd1073818205d46a3d7587d91a64035a0c (diff) | |
Notes
Diffstat (limited to 'sys/gnu')
| -rw-r--r-- | sys/gnu/ext2fs/ext2_vnops.c | 4 | ||||
| -rw-r--r-- | sys/gnu/fs/ext2fs/ext2_vnops.c | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/sys/gnu/ext2fs/ext2_vnops.c b/sys/gnu/ext2fs/ext2_vnops.c index b96e01c64bdd..a99c04f00a32 100644 --- a/sys/gnu/ext2fs/ext2_vnops.c +++ b/sys/gnu/ext2fs/ext2_vnops.c @@ -264,6 +264,7 @@ ext2_mknod(ap) struct vattr *vap = ap->a_vap; struct vnode **vpp = ap->a_vpp; struct inode *ip; + ino_t ino; int error; error = ext2_makeinode(MAKEIMODE(vap->va_type, vap->va_mode), @@ -286,8 +287,9 @@ ext2_mknod(ap) */ vput(*vpp); (*vpp)->v_type = VNON; + ino = ip->i_number; /* Save this before vgone() invalidates ip. */ vgone(*vpp); - error = VFS_VGET(ap->a_dvp->v_mount, ip->i_ino, vpp); + error = VFS_VGET(ap->a_dvp->v_mount, ino, vpp); if (error) { *vpp = NULL; return (error); diff --git a/sys/gnu/fs/ext2fs/ext2_vnops.c b/sys/gnu/fs/ext2fs/ext2_vnops.c index b96e01c64bdd..a99c04f00a32 100644 --- a/sys/gnu/fs/ext2fs/ext2_vnops.c +++ b/sys/gnu/fs/ext2fs/ext2_vnops.c @@ -264,6 +264,7 @@ ext2_mknod(ap) struct vattr *vap = ap->a_vap; struct vnode **vpp = ap->a_vpp; struct inode *ip; + ino_t ino; int error; error = ext2_makeinode(MAKEIMODE(vap->va_type, vap->va_mode), @@ -286,8 +287,9 @@ ext2_mknod(ap) */ vput(*vpp); (*vpp)->v_type = VNON; + ino = ip->i_number; /* Save this before vgone() invalidates ip. */ vgone(*vpp); - error = VFS_VGET(ap->a_dvp->v_mount, ip->i_ino, vpp); + error = VFS_VGET(ap->a_dvp->v_mount, ino, vpp); if (error) { *vpp = NULL; return (error); |
