svn commit: r248255 - in head/sys: fs/nfs fs/nfsclient nfsclient rpc
John Baldwin
jhb at FreeBSD.org
Wed Mar 13 21:06:05 UTC 2013
Author: jhb
Date: Wed Mar 13 21:06:03 2013
New Revision: 248255
URL: http://svnweb.freebsd.org/changeset/base/248255
Log:
Revert 195703 and 195821 as this special stop handling in NFS is now
implemented via VFCF_SBDRY rather than passing PBDRY to individual
sleep calls.
Modified:
head/sys/fs/nfs/nfsport.h
head/sys/fs/nfsclient/nfs_clbio.c
head/sys/fs/nfsclient/nfs_clvnops.c
head/sys/nfsclient/nfs_bio.c
head/sys/nfsclient/nfs_vnops.c
head/sys/nfsclient/nfsmount.h
head/sys/rpc/clnt_rc.c
head/sys/rpc/clnt_vc.c
Modified: head/sys/fs/nfs/nfsport.h
==============================================================================
--- head/sys/fs/nfs/nfsport.h Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/fs/nfs/nfsport.h Wed Mar 13 21:06:03 2013 (r248255)
@@ -981,13 +981,6 @@ struct nfsreq {
#define NFSVNO_DELEGOK(v) (1)
#endif
-/*
- * Define this as the flags argument for msleep() when catching signals
- * while holding a resource that other threads would block for, such as
- * a vnode lock.
- */
-#define NFS_PCATCH (PCATCH | PBDRY)
-
#endif /* _KERNEL */
#endif /* _NFS_NFSPORT_H */
Modified: head/sys/fs/nfsclient/nfs_clbio.c
==============================================================================
--- head/sys/fs/nfsclient/nfs_clbio.c Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/fs/nfsclient/nfs_clbio.c Wed Mar 13 21:06:03 2013 (r248255)
@@ -1297,7 +1297,7 @@ nfs_getcacheblk(struct vnode *vp, daddr_
sigset_t oldset;
newnfs_set_sigmask(td, &oldset);
- bp = getblk(vp, bn, size, NFS_PCATCH, 0, 0);
+ bp = getblk(vp, bn, size, PCATCH, 0, 0);
newnfs_restore_sigmask(td, &oldset);
while (bp == NULL) {
if (newnfs_sigintr(nmp, td))
@@ -1332,7 +1332,7 @@ ncl_vinvalbuf(struct vnode *vp, int flag
if ((nmp->nm_mountp->mnt_kern_flag & MNTK_UNMOUNTF))
intrflg = 1;
if (intrflg) {
- slpflag = NFS_PCATCH;
+ slpflag = PCATCH;
slptimeo = 2 * hz;
} else {
slpflag = 0;
@@ -1413,7 +1413,7 @@ ncl_asyncio(struct nfsmount *nmp, struct
}
again:
if (nmp->nm_flag & NFSMNT_INT)
- slpflag = NFS_PCATCH;
+ slpflag = PCATCH;
gotiod = FALSE;
/*
@@ -1478,7 +1478,7 @@ again:
mtx_unlock(&ncl_iod_mutex);
return (error2);
}
- if (slpflag == NFS_PCATCH) {
+ if (slpflag == PCATCH) {
slpflag = 0;
slptimeo = 2 * hz;
}
Modified: head/sys/fs/nfsclient/nfs_clvnops.c
==============================================================================
--- head/sys/fs/nfsclient/nfs_clvnops.c Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/fs/nfsclient/nfs_clvnops.c Wed Mar 13 21:06:03 2013 (r248255)
@@ -2660,7 +2660,7 @@ ncl_flush(struct vnode *vp, int waitfor,
if (called_from_renewthread != 0)
slptimeo = hz;
if (nmp->nm_flag & NFSMNT_INT)
- slpflag = NFS_PCATCH;
+ slpflag = PCATCH;
if (!commit)
passone = 0;
bo = &vp->v_bufobj;
@@ -2866,7 +2866,7 @@ loop:
error = EINTR;
goto done;
}
- if (slpflag & PCATCH) {
+ if (slpflag == PCATCH) {
slpflag = 0;
slptimeo = 2 * hz;
}
@@ -2912,7 +2912,7 @@ loop:
error = newnfs_sigintr(nmp, td);
if (error)
goto done;
- if (slpflag & PCATCH) {
+ if (slpflag == PCATCH) {
slpflag = 0;
slptimeo = 2 * hz;
}
Modified: head/sys/nfsclient/nfs_bio.c
==============================================================================
--- head/sys/nfsclient/nfs_bio.c Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/nfsclient/nfs_bio.c Wed Mar 13 21:06:03 2013 (r248255)
@@ -1242,7 +1242,7 @@ nfs_getcacheblk(struct vnode *vp, daddr_
sigset_t oldset;
nfs_set_sigmask(td, &oldset);
- bp = getblk(vp, bn, size, NFS_PCATCH, 0, 0);
+ bp = getblk(vp, bn, size, PCATCH, 0, 0);
nfs_restore_sigmask(td, &oldset);
while (bp == NULL) {
if (nfs_sigintr(nmp, td))
@@ -1275,7 +1275,7 @@ nfs_vinvalbuf(struct vnode *vp, int flag
if ((nmp->nm_flag & NFSMNT_INT) == 0)
intrflg = 0;
if (intrflg) {
- slpflag = NFS_PCATCH;
+ slpflag = PCATCH;
slptimeo = 2 * hz;
} else {
slpflag = 0;
@@ -1354,7 +1354,7 @@ nfs_asyncio(struct nfsmount *nmp, struct
}
again:
if (nmp->nm_flag & NFSMNT_INT)
- slpflag = NFS_PCATCH;
+ slpflag = PCATCH;
gotiod = FALSE;
/*
@@ -1419,7 +1419,7 @@ again:
mtx_unlock(&nfs_iod_mtx);
return (error2);
}
- if (slpflag == NFS_PCATCH) {
+ if (slpflag == PCATCH) {
slpflag = 0;
slptimeo = 2 * hz;
}
Modified: head/sys/nfsclient/nfs_vnops.c
==============================================================================
--- head/sys/nfsclient/nfs_vnops.c Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/nfsclient/nfs_vnops.c Wed Mar 13 21:06:03 2013 (r248255)
@@ -2992,7 +2992,7 @@ nfs_flush(struct vnode *vp, int waitfor,
int bvecsize = 0, bveccount;
if (nmp->nm_flag & NFSMNT_INT)
- slpflag = NFS_PCATCH;
+ slpflag = PCATCH;
if (!commit)
passone = 0;
bo = &vp->v_bufobj;
@@ -3190,7 +3190,7 @@ loop:
error = EINTR;
goto done;
}
- if (slpflag & PCATCH) {
+ if (slpflag == PCATCH) {
slpflag = 0;
slptimeo = 2 * hz;
}
@@ -3228,7 +3228,7 @@ loop:
error = nfs_sigintr(nmp, td);
if (error)
goto done;
- if (slpflag & PCATCH) {
+ if (slpflag == PCATCH) {
slpflag = 0;
slptimeo = 2 * hz;
}
Modified: head/sys/nfsclient/nfsmount.h
==============================================================================
--- head/sys/nfsclient/nfsmount.h Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/nfsclient/nfsmount.h Wed Mar 13 21:06:03 2013 (r248255)
@@ -125,8 +125,6 @@ struct nfsmount {
#define NFS_DEFAULT_NEGNAMETIMEO 60
#endif
-#define NFS_PCATCH (PCATCH | PBDRY)
-
#endif
#endif
Modified: head/sys/rpc/clnt_rc.c
==============================================================================
--- head/sys/rpc/clnt_rc.c Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/rpc/clnt_rc.c Wed Mar 13 21:06:03 2013 (r248255)
@@ -247,8 +247,7 @@ clnt_reconnect_call(
stat = clnt_reconnect_connect(cl);
if (stat == RPC_SYSTEMERROR) {
error = tsleep(&fake_wchan,
- rc->rc_intr ? PCATCH | PBDRY : 0, "rpccon",
- hz);
+ rc->rc_intr ? PCATCH : 0, "rpccon", hz);
if (error == EINTR || error == ERESTART)
return (RPC_INTR);
tries++;
Modified: head/sys/rpc/clnt_vc.c
==============================================================================
--- head/sys/rpc/clnt_vc.c Wed Mar 13 20:35:51 2013 (r248254)
+++ head/sys/rpc/clnt_vc.c Wed Mar 13 21:06:03 2013 (r248255)
@@ -162,7 +162,7 @@ clnt_vc_create(
interrupted = 0;
sleep_flag = PSOCK;
if (intrflag != 0)
- sleep_flag |= (PCATCH | PBDRY);
+ sleep_flag |= PCATCH;
while ((so->so_state & SS_ISCONNECTING)
&& so->so_error == 0) {
error = msleep(&so->so_timeo, SOCK_MTX(so),
@@ -470,7 +470,6 @@ call_again:
errp->re_errno = error;
switch (error) {
case EINTR:
- case ERESTART:
stat = RPC_INTR;
break;
case EWOULDBLOCK:
@@ -704,7 +703,7 @@ clnt_vc_control(CLIENT *cl, u_int reques
case CLSET_INTERRUPTIBLE:
if (*(int *) info)
- ct->ct_waitflag = PCATCH | PBDRY;
+ ct->ct_waitflag = PCATCH;
else
ct->ct_waitflag = 0;
break;
More information about the svn-src-head
mailing list