Re: [RFD] What error should FS return when I/O failure occurs?

fs
2005-05-17T05:39:23Z

On Mon, 2005-05-16 at 13:58, Valdis.Kletnieks@vt.edu wrote:

> You'd be better off pointing out that 'man 2 write' lists the errors
that
> might be returned as: EBAF, EINVAL, EFAULT, EFBIG, EPIPE, EAGAIN,
EINTR,
> ENOSPC, and EIO.
>
> Does the POSIX spec allow write() to return -EROFS?
If there is POSIX spec about this issue, I won't post this RFD.
> What happens if you're writing to an NFS-mounted file system, and the
remote
> system remounts the disk R/O? What is reported in that case?
So, it's necessary to define the right error in this case.
Each FS will follow this standard, give the defined error;
User can follow this standard, without caring what FS they're using.

> > The purpose of this RFD, is to get the community to understand,
> > all I/O related syscalls should return VFS error, not FS error.
>
> All fine and good, until you hit a case like ext3 where reporting
> the FS error code will better explain the *real* problem than forcing
> it to fit into one of the provided VFS errors.

So, if linux supports a new FS, which returns another error,
does that mean the app should be rewritten to include the new
error? There should be some standards constraint this behavour.

> > User mode app should not care about the FS they are using.
> > So, the community should define the ONLY VFS error first.
>
> I think that's been done, and the VFS behavior is "if the FS reports
> an error we pass it up to userspace".

Then,from userspace, V (of VFS) loses its meaning, because the
error is FS-related, not FS-unrelated.

regards,
----
Qu Fuping