tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: NFS mount returning EAGAIN
On Tue, Oct 27, 2009 at 12:55:36PM +0100, Manuel Bouyer wrote:
> Hi,
> on a netbsd-5 system, access to a NFS TCP mount occasionally returns
> EWOULDBLOCK/EAGAIN to userland. This is a hard mount so it should not
> happens. Here's the kind of errors we're seeing:
> rsync: write failed on
> "/home/builds/output/netbsd-5-0/200910250000Z/cats/binary/sets/comp.tgz":
> Resource temporarily unavailable (35)
> And in dmesg on the client:
> nfs server aa.bb.cc.dd:/NetBSD-daily: not responding
> nfs server aa.bb.cc.dd:/NetBSD-daily: is alive again
> nfs send error 35 for aa.bb.cc.dd:/NetBSD-daily
> nfs server aa.bb.cc.dd:/NetBSD-daily: not responding
> nfs server aa.bb.cc.dd:/NetBSD-daily: is alive again
>
> On the server there are:
> nfsd send error 32
> though I don't know if they're happening at the same time at this point.
>
> I think the EWOULDBLOCK is returned to userland from nfs_request(),
> itself getting it from nfs_send() at line 1144 (nfs_socket.c 1.173.4.3).
> After the nfs_send() nfs_request() waits for a reply if there was no
> error, or if error was EPIPE. As when nfs_send() returns EWOULDBLOCK
> it would have set R_MUSTRESEND (in this situation at last), I wonder
> if nfs_request() should check for EWOULDBLOCK in addition to EPIPE,
> and go to nfs_reply() in this case as well.
commited, will request a pullup to netbsd-5
This has been tested successfully on the client where this problem
did show up.
--
Manuel Bouyer, LIP6, Universite Paris VI.
Manuel.Bouyer%lip6.fr@localhost
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index