diff options
author | phk <phk@FreeBSD.org> | 2003-06-22 08:41:43 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-06-22 08:41:43 +0000 |
commit | c81c59299bd255eb5ab7510c9e84e9c54b8003d0 (patch) | |
tree | c8262a3d430fc3cafab7fb6aec641ce293cd3361 /sys/i386/ibcs2/ibcs2_misc.c | |
parent | 4a223af282e5f60223c443ce3755f565f9db2465 (diff) | |
download | FreeBSD-src-c81c59299bd255eb5ab7510c9e84e9c54b8003d0.zip FreeBSD-src-c81c59299bd255eb5ab7510c9e84e9c54b8003d0.tar.gz |
Add a f_vnode field to struct file.
Several of the subtypes have an associated vnode which is used for
stuff like the f*() functions.
By giving the vnode a speparate field, a number of checks for the specific
subtype can be replaced simply with a check for f_vnode != NULL, and
we can later free f_data up to subtype specific use.
At this point in time, f_data still points to the vnode, so any code I
might have overlooked will still work.
Diffstat (limited to 'sys/i386/ibcs2/ibcs2_misc.c')
-rw-r--r-- | sys/i386/ibcs2/ibcs2_misc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/i386/ibcs2/ibcs2_misc.c b/sys/i386/ibcs2/ibcs2_misc.c index 013b757..8cd3488 100644 --- a/sys/i386/ibcs2/ibcs2_misc.c +++ b/sys/i386/ibcs2/ibcs2_misc.c @@ -324,7 +324,7 @@ ibcs2_getdents(td, uap) fdrop(fp, td); return (EBADF); } - vp = fp->f_data; + vp = fp->f_vnode; if (vp->v_type != VDIR) { /* XXX vnode readdir op should do this */ fdrop(fp, td); return (EINVAL); @@ -481,7 +481,7 @@ ibcs2_read(td, uap) fdrop(fp, td); return (EBADF); } - vp = fp->f_data; + vp = fp->f_vnode; if (vp->v_type != VDIR) { fdrop(fp, td); return read(td, (struct read_args *)uap); |