summaryrefslogtreecommitdiffstats
path: root/sys/nfsclient
diff options
context:
space:
mode:
authorrees <rees@FreeBSD.org>2005-05-10 14:25:14 +0000
committerrees <rees@FreeBSD.org>2005-05-10 14:25:14 +0000
commit59c55733793bcd9b59e27a4c51cff131f473b99a (patch)
treec8294428c76d8554e01a787c9a75f576d4f9259b /sys/nfsclient
parenta07412476954cd3e2b3d73359b473f62c6cf06db (diff)
downloadFreeBSD-src-59c55733793bcd9b59e27a4c51cff131f473b99a.zip
FreeBSD-src-59c55733793bcd9b59e27a4c51cff131f473b99a.tar.gz
set R_MUSTRESEND flag in mark_for_reconnect so re-connected requests get
re-sent instead of timing out. don't log an error message on reconnection, which is not an error. remove unused nfs_mrep_before_tsleep. Reviewed by: Mohan Srinivasan Approved by: alfred
Diffstat (limited to 'sys/nfsclient')
-rw-r--r--sys/nfsclient/nfs_socket.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/sys/nfsclient/nfs_socket.c b/sys/nfsclient/nfs_socket.c
index 6ba10e0..9bd1332 100644
--- a/sys/nfsclient/nfs_socket.c
+++ b/sys/nfsclient/nfs_socket.c
@@ -521,8 +521,6 @@ nfs_send(struct socket *so, struct sockaddr *nam, struct mbuf *top,
return (error);
}
-int nfs_mrep_before_tsleep = 0;
-
int
nfs_reply(struct nfsreq *rep)
{
@@ -740,8 +738,10 @@ nfs_mark_for_reconnect(struct nfsmount *nmp)
*/
mtx_lock(&nfs_reqq_mtx);
TAILQ_FOREACH(rp, &nfs_reqq, r_chain) {
- if (rp->r_nmp == nmp)
+ if (rp->r_nmp == nmp) {
+ rp->r_flags |= R_MUSTRESEND;
wakeup_nfsreq(rp);
+ }
}
mtx_unlock(&nfs_reqq_mtx);
}
@@ -805,10 +805,7 @@ nfs_clnt_tcp_soupcall(struct socket *so, void *arg, int waitflag)
* connection.
*/
if (error || auio.uio_resid > 0) {
- if (auio.uio_resid > 0) {
- log(LOG_INFO,
- "nfs/tcp clnt: Peer closed connection, tearing down TCP connection\n");
- } else {
+ if (error != ECONNRESET) {
log(LOG_ERR,
"nfs/tcp clnt: Error %d reading socket, tearing down TCP connection\n",
error);
@@ -851,10 +848,7 @@ nfs_clnt_tcp_soupcall(struct socket *so, void *arg, int waitflag)
(so, (struct sockaddr **)0,
&auio, &mp, (struct mbuf **)0, &rcvflg);
if (error || auio.uio_resid > 0) {
- if (auio.uio_resid > 0) {
- log(LOG_INFO,
- "nfs/tcp clnt: Peer closed connection, tearing down TCP connection\n");
- } else {
+ if (error != ECONNRESET) {
log(LOG_ERR,
"nfs/tcp clnt: Error %d reading socket, tearing down TCP connection\n",
error);
@@ -1235,7 +1229,7 @@ nfs_timer(void *arg)
*/
rep->r_flags |= R_MUSTRESEND;
wakeup_nfsreq(rep);
- continue;
+ continue;
}
if ((so = nmp->nm_so) == NULL)
continue;
OpenPOWER on IntegriCloud