diff options
author | marcel <marcel@FreeBSD.org> | 2004-12-11 23:05:30 +0000 |
---|---|---|
committer | marcel <marcel@FreeBSD.org> | 2004-12-11 23:05:30 +0000 |
commit | e951047e5fc0d305dc86bfac925b89b31473a489 (patch) | |
tree | 162fec8ad972f0e42765bdf41fa6134ec4aed569 /sys/ufs | |
parent | e00dca86b97e98b12b1000083da309ebcd43cd48 (diff) | |
download | FreeBSD-src-e951047e5fc0d305dc86bfac925b89b31473a489.zip FreeBSD-src-e951047e5fc0d305dc86bfac925b89b31473a489.tar.gz |
Revert previous commit. The null-pointer function call (a dereference
on ia64) was not the result of a change in the vector operations. It
was caused by the NFS locking code using a FIFO and those bypassing
the vnode. This indirectly caused the panic. The NFS locking code has
been changed.
Requested by: phk
Diffstat (limited to 'sys/ufs')
-rw-r--r-- | sys/ufs/ufs/ufs_vnops.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c index 301e388..ede11e3 100644 --- a/sys/ufs/ufs/ufs_vnops.c +++ b/sys/ufs/ufs/ufs_vnops.c @@ -2020,7 +2020,7 @@ ufsfifo_read(ap) uio = ap->a_uio; resid = uio->uio_resid; - error = vop_read(&fifo_specops, ap); + error = fifo_specops.vop_read(ap); ip = VTOI(ap->a_vp); if ((ap->a_vp->v_mount->mnt_flag & MNT_NOATIME) == 0 && ip != NULL && (uio->uio_resid != resid || (error == 0 && resid != 0))) @@ -2046,7 +2046,7 @@ ufsfifo_write(ap) uio = ap->a_uio; resid = uio->uio_resid; - error = vop_write(&fifo_specops, ap); + error = fifo_specops.vop_write(ap); ip = VTOI(ap->a_vp); if (ip != NULL && (uio->uio_resid != resid || (error == 0 && resid != 0))) ip->i_flag |= IN_CHANGE | IN_UPDATE; @@ -2073,7 +2073,7 @@ ufsfifo_close(ap) if (vp->v_usecount > 1) ufs_itimes(vp); VI_UNLOCK(vp); - return (vop_close(&fifo_specops, ap)); + return (fifo_specops.vop_close(ap)); } /* @@ -2087,7 +2087,7 @@ ufsfifo_kqfilter(ap) { int error; - error = vop_kqfilter(&fifo_specops, ap); + error = fifo_specops.vop_kqfilter(ap); if (error) error = ufs_kqfilter(ap); return (error); |