From: Olaf Kirch <okir@suse.de>
To: Johan van den Dorpe <johan.vandendorpe@framestore-cfc.com>
Cc: nfs@lists.sourceforge.net
Subject: Re: nfsd: terminating on error 104 problem
Date: Thu, 4 Mar 2004 12:11:38 +0100 [thread overview]
Message-ID: <20040304111138.GO22726@suse.de> (raw)
In-Reply-To: <404707BE.9070401@framestore-cfc.com>
[-- Attachment #1: Type: text/plain, Size: 654 bytes --]
On Thu, Mar 04, 2004 at 10:41:02AM +0000, Johan van den Dorpe wrote:
> So from my limited knowledge of the kernel source I can see that
> "terminating on error 104" corresponds to line 221 of
> /usr/src/linux-2.4.25/fs/nfsd/nfssvc.c. So svc_recv on line 191 is
> obviously returning -104.
104 is ECONNRESET, this means the client reset the connection.
The server should really clean up the socket in this case.
Does the attached patch help?
Beware - totally untested, better not try this on a production
machine :)
Olaf
--
Olaf Kirch | Stop wasting entropy - start using predictable
okir@suse.de | tempfile names today!
---------------+
[-- Attachment #2: nfsd-handle-econnreset --]
[-- Type: text/plain, Size: 483 bytes --]
--- svcsock.c.orig 2004-03-04 12:08:51.000000000 +0100
+++ svcsock.c 2004-03-04 12:10:08.000000000 +0100
@@ -904,6 +904,10 @@
if (len == -EAGAIN) {
dprintk("RPC: TCP recvfrom got EAGAIN\n");
svc_sock_received(svsk);
+ } else if (len == -ECONNRESET) {
+ dprintk("RPC: TCP recvfrom got ECONNRESET\n");
+ svc_sock_received(svsk);
+ set_bit(SK_DEAD, &svsk->sk_flags);
} else {
printk(KERN_NOTICE "%s: recvfrom returned errno %d\n",
svsk->sk_server->sv_name, -len);
next prev parent reply other threads:[~2004-03-04 11:17 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-04 10:41 nfsd: terminating on error 104 problem Johan van den Dorpe
2004-03-04 11:11 ` Olaf Kirch [this message]
2004-03-04 12:59 ` Johan van den Dorpe
2004-03-05 18:01 ` Johan van den Dorpe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040304111138.GO22726@suse.de \
--to=okir@suse.de \
--cc=johan.vandendorpe@framestore-cfc.com \
--cc=nfs@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox