From: fs <fs@ercist.iscas.ac.cn>
To: Andreas Dilger <adilger@clusterfs.com>
Cc: Hans Reiser <reiser@namesys.com>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
zhiming <zhiming@admin.iscas.ac.cn>,
madsys <madsys@ercist.iscas.ac.cn>, xuh <xuh@nttdata.com.cn>,
koichi@intellilink.co.jp, kuroiwaj@intellilink.co.jp,
Kenichi Okuyama <okuyama@intellilink.co.jp>,
matsui_v@valinux.co.jp, kikuchi_v@valinux.co.jp,
fernando@intellilink.co.jp, kskmori@intellilink.co.jp,
takenakak@intellilink.co.jp, yamaguchi@intellilink.co.jp,
ext2-devel@lists.sourceforge.net, shaggy@austin.ibm.com,
xfs-masters@oss.sgi.com,
Reiserfs developers mail-list <Reiserfs-Dev@namesys.com>
Subject: Re: [Ext2-devel] Re: [RFD] FS behavior (I/O failure) in kernel summit
Date: Tue, 14 Jun 2005 13:41:56 -0400 [thread overview]
Message-ID: <1118770916.2516.14.camel@CoolQ> (raw)
In-Reply-To: <20050613201315.GC19319@moraine.clusterfs.com>
On Mon, 2005-06-13 at 16:13, Andreas Dilger wrote:
> > fs wrote:
> > >Dear Linus, Andrew Morton, and all FS maintainers,
> > >1) When I/O failure occurs(e.g.: unrecoverable media failure - USB
> > >unplug), FS should
> > > a. shutdown the FS right now(XFS does this)
> > > b. try to make the media serve as long as possible(EXT3 remounts
> > > read-only, cache is still valid for read)
> > > c. do not care, just print some kernel debugging info(EXT2 JFS
> > > ReiserFS)
>
> Actually, 1b is just the default behaviour for ext3 (because of journal
> errors). It is also possible to mount the filesystem with error=panic,
> which will implement 1a, and it is also possible to mount ext2 with
> error=remount-ro (which is default on Debian for ext2) which implements
> 1b. I don't think it is possible to get 1c behaviour for journal
> errors on ext3.
>
> > >2) When I/O failure occurs, FS should
> > > a. give a unified error
> > > b. give errors according to the FS type
Of coz EIO is not always right. But suppose the same unplug action
results different errors, just because of FS type? You think both EIO
and EROFS are right, what if new FS return EXXX? Even it's correct, the
community should AT LEAST define a set of error values which are
considered right. So, the application user can handle these errors one
by one. If not, that means errno can't provide enough info, that's the
case of 3)c
Well, I give question 1) 2) and 3), they're just examples. FS developers
use 'de facto' standard, it's ambiguous. We need an accurate one.
> What is "unified error"? Does this mean "-EIO" for all cases? I also
> don't understand why this is so important to your application... If
> you get an error back from the filesystem that isn't expected, that is
> generally a problem regardless of what the error is...
>
> > >3) the returned errno should be
> > > a. real cause of failure, e.g. USB unplug returns EIO
> > > b. cause from FS, e.g. USB unplug made FS remount read-only,
> > > so open(O_RDONLY) returns ENOENT while open(O_RDWR) returns
> > > EROFS
> > > c. errno means nothing, you already get -1, that's enough
> This doesn't make sense. If the "real cause of failure" is that the
> journal code detected an inconsistency (it might not be an IO error at
> the time, just some structure that is not what it should be, maybe the
> user tried to format their partition while in use ;-) then the real
> error is that the journal turned the filesystem read-only. In any case,
> you can't expect to get more information that "EIO", regardless of the
> root cause (e.g. ENOMEM causes async buffer read to not complete, caller
> checks buffer_uptodate() and it isn't uptodate, returns EIO).
>
> Cheers, Andreas
> --
> Andreas Dilger
> Principal Software Engineer
> Cluster File Systems, Inc.
yours,
----
Qu Fuping
next prev parent reply other threads:[~2005-06-14 6:43 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-13 19:53 [RFD] FS behavior (I/O failure) in kernel summit fs
2005-06-13 17:59 ` Hans Reiser
2005-06-13 20:13 ` [Ext2-devel] " Andreas Dilger
2005-06-13 23:56 ` Hans Reiser
2005-06-14 2:46 ` Kenichi Okuyama
2005-06-15 14:01 ` [Ext2-devel] " Theodore Ts'o
2005-06-15 19:40 ` Kenichi Okuyama
2005-06-15 20:37 ` [Ext2-devel] " Theodore Ts'o
2005-06-15 20:38 ` Hans Reiser
2005-06-15 22:53 ` Theodore Ts'o
2005-06-16 19:08 ` [Ext2-devel] " Hans Reiser
2005-06-16 11:52 ` Helge Hafting
2005-06-16 19:52 ` Hans Reiser
2005-06-16 21:27 ` Pavel Machek
2005-06-16 11:38 ` Matthew Wilcox
2005-06-14 12:51 ` Erik Mouw
2005-06-14 13:48 ` Denis Vlasenko
2005-06-14 17:16 ` Kenichi Okuyama
2005-06-14 20:17 ` Szakacsits Szabolcs
2005-06-14 3:46 ` Valdis.Kletnieks
2005-06-14 17:41 ` fs [this message]
2005-06-13 21:51 ` Jeff Mahoney
2005-06-14 0:03 ` Hans Reiser
2005-06-15 17:39 ` Jeff Mahoney
2005-06-16 2:18 ` Dave Chinner
2005-06-16 15:21 ` Jeff Mahoney
2005-06-16 18:52 ` Hans Reiser
2005-06-14 13:22 ` Dave Kleikamp
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=1118770916.2516.14.camel@CoolQ \
--to=fs@ercist.iscas.ac.cn \
--cc=Reiserfs-Dev@namesys.com \
--cc=adilger@clusterfs.com \
--cc=ext2-devel@lists.sourceforge.net \
--cc=fernando@intellilink.co.jp \
--cc=kikuchi_v@valinux.co.jp \
--cc=koichi@intellilink.co.jp \
--cc=kskmori@intellilink.co.jp \
--cc=kuroiwaj@intellilink.co.jp \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=madsys@ercist.iscas.ac.cn \
--cc=matsui_v@valinux.co.jp \
--cc=okuyama@intellilink.co.jp \
--cc=reiser@namesys.com \
--cc=shaggy@austin.ibm.com \
--cc=takenakak@intellilink.co.jp \
--cc=xfs-masters@oss.sgi.com \
--cc=xuh@nttdata.com.cn \
--cc=yamaguchi@intellilink.co.jp \
--cc=zhiming@admin.iscas.ac.cn \
/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;
as well as URLs for NNTP newsgroup(s).