Re: nfs_statfs: statfs error = 116

From: Trond Myklebust
Date: Thu Nov 13 2003 - 10:33:19 EST


>>>>> " " == Richard B Johnson <root@xxxxxxxxxxxxxxxxxx> writes:

> ESTALE happens when a mounted file-system is on a server that
> went down or re-booted. The file-handles are then "stale".

Sort of. It means that the server is unable to find the file that
corresponds to the filehandle that the client sent it. If the server
strictly follows the NFS specs, then this is only supposed to happen
if somebody else has deleted the file (and this is why designing a
scheme for generating filehandles is such a difficult job).

Some broken servers do, however, "lose" the file in other interesting
and unpredictable ways.

> ERESTARTSYS is the error returned by a server that has
> re-booted that is supposed to tell the client-side software to
> get a new file-handle because of an attempt to access with a
> stale file-handle. When getting this error, the client should
> have reopened the file(s) to obtain a new handle.

ERESTARTSYS actually just means that a signal was received while
inside a system call. If this results in a interruption of that
syscall, the kernel is supposed to translate ERESTARTSYS into the user
error EINTR.

Userland should therefore never have to handle ERESTARTSYS errors.

Cheers,
Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/