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
This commit is contained in:
parent
b32a140140
commit
9effe51e45
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user