On Fri, 2009-09-11 at 09:46 +0200, André Roth wrote: > Hello list, > > We have a problem with the NFS client on Linux on a NetApp filer. Every > now and then we are getting huge amounts of "Remote IO Errors" on the > mounted home directories. This is new, we had no problems with the same > setup some months ago. > > The reason for the Remote IO Errors is that the server is returning an > NFS4ERR_RESOURCE error, even just for > a simple "touch foo". The tcpdump of such a touch command I have listed > below. > > I suspect that maybe the deduplication or backup operation make the > filer "busy" so it cannot respond to all compound operations. > > I've seen that linux NFS just passes this error to the user as > EREMOTEIO. OpenSolaris seems to delay and retry. According to the RFC > I'm not sure what would be the right thing to do. But I think this is > meant to be a temporary error, and an NFS client should, in the example > below, take the first two operations as completed, and retry the > remaining 5 ones, or maybe retry the whole compound message. > > What is your insight on this error ? > Is there something I can try, like returning EAGAIN and see if the error > gets handled correctly ? > The problem ocurred one or twice a week, without any regularity.. This has been discussed extensively on the IETF mailing lists, and the code therefore reflects our current understanding of RFC3530. Unlike NFS4ERR_DELAY, the error NFS4ERR_RESOURCE is not listed as a temporary error, nor is there any admonition in the RFC to retry or should do anything other than to split up a possible overly-complex COMPOUND (which is usually not possible for us). To quote: In the processing of the COMPOUND procedure, the server may find that it does not have the available resources to execute any or all of the operations within the COMPOUND sequence. In this case, the error NFS4ERR_RESOURCE will be returned for the particular operation within the COMPOUND procedure where the resource exhaustion occurred. This assumes that all previous operations within the COMPOUND sequence have been evaluated successfully. The results for all of the evaluated operations must be returned to the client. IOW: If dedup is causing the filer to start returning NFS4ERR_RESOURCE errors to the client, then that would appear to be a serious server bug. I'd suggest you contact your NetApp sales rep, and ask them to help you escalate this so that it gets due attention. Cheers, Trond -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@xxxxxxxxxx www.netapp.com -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html