summaryrefslogtreecommitdiffstats
path: root/sys/fs/unionfs/union_vnops.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2007-05-31 11:51:53 +0000
committerkib <kib@FreeBSD.org>2007-05-31 11:51:53 +0000
commitf13486a2227b9165fce30aa40d12b728f327a909 (patch)
treed5e88e86417c996e0e901ce9a43de8d9ae3ad44e /sys/fs/unionfs/union_vnops.c
parent7f276f0bff169823b786ea0a9bbdfe936361fcb4 (diff)
downloadFreeBSD-src-f13486a2227b9165fce30aa40d12b728f327a909.zip
FreeBSD-src-f13486a2227b9165fce30aa40d12b728f327a909.tar.gz
Revert UF_OPENING workaround for CURRENT.
Change the VOP_OPEN(), vn_open() vnode operation and d_fdopen() cdev operation argument from being file descriptor index into the pointer to struct file. Proposed and reviewed by: jhb Reviewed by: daichi (unionfs) Approved by: re (kensmith)
Diffstat (limited to 'sys/fs/unionfs/union_vnops.c')
-rw-r--r--sys/fs/unionfs/union_vnops.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/fs/unionfs/union_vnops.c b/sys/fs/unionfs/union_vnops.c
index 134fe1c..fbce59d 100644
--- a/sys/fs/unionfs/union_vnops.c
+++ b/sys/fs/unionfs/union_vnops.c
@@ -475,13 +475,13 @@ unionfs_open(struct vop_open_args *ap)
targetvp = uvp;
}
- error = VOP_OPEN(targetvp, ap->a_mode, cred, td, ap->a_fdidx);
+ error = VOP_OPEN(targetvp, ap->a_mode, cred, td, ap->a_fp);
if (error == 0) {
if (targetvp == uvp) {
if (uvp->v_type == VDIR && lvp != NULLVP &&
unsp->uns_lower_opencnt <= 0) {
/* open lower for readdir */
- error = VOP_OPEN(lvp, FREAD, cred, td, -1);
+ error = VOP_OPEN(lvp, FREAD, cred, td, NULL);
if (error != 0) {
VOP_CLOSE(uvp, ap->a_mode, cred, td);
goto unionfs_open_abort;
@@ -493,7 +493,6 @@ unionfs_open(struct vop_open_args *ap)
} else {
unsp->uns_lower_opencnt++;
unsp->uns_lower_openmode = ap->a_mode;
- unsp->uns_lower_fdidx = ap->a_fdidx;
}
ap->a_vp->v_object = targetvp->v_object;
}
@@ -1852,7 +1851,8 @@ unionfs_advlock(struct vop_advlock_args *ap)
unionfs_get_node_status(unp, td, &unsp);
if (unsp->uns_lower_opencnt > 0) {
/* try reopen the vnode */
- error = VOP_OPEN(uvp, unsp->uns_lower_openmode, td->td_ucred, td, unsp->uns_lower_fdidx);
+ error = VOP_OPEN(uvp, unsp->uns_lower_openmode,
+ td->td_ucred, td, NULL);
if (error)
goto unionfs_advlock_abort;
unsp->uns_upper_opencnt++;
OpenPOWER on IntegriCloud