From: "Theodore Ts'o" <tytso@mit.edu>
To: Khazhismel Kumykov <khazhy@google.com>
Cc: Andreas Dilger <adilger@dilger.ca>,
adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] ext4: Return EIO on read error in ext4_find_entry
Date: Fri, 23 Jun 2017 19:26:16 -0400 [thread overview]
Message-ID: <20170623232616.r3ffksjntjfbrzgb@thunk.org> (raw)
In-Reply-To: <CACGdZYJb4ouFMORaMTM5KubJv_SFpms35fXrTdAK0kxsa7-5Cg@mail.gmail.com>
On Fri, Jun 23, 2017 at 03:33:46PM -0700, Khazhismel Kumykov wrote:
>
> Giving up early or checking future blocks both work, critical thing
> here is not returning NULL after seeing a read error.
> Previously to this the behavior was to continue to check future blocks
> after a read error, and it seemed OK.
Whether or not it is OK probably depends on how big the directory is.
If we need to suffer through N long error retries, whether it is
caused by long SCSI error retries, or long iSCSI error retries, sooner
or later it's going to be problematic if the process which is taking
forever to search through the whole directory has a some kind health
monitoring service or other watchdog timer.
Still, I agree that there will be some cases where instead of "Fast
fail", having the file server try as hard as possible fetch the file
from the failing disk is worthwhile. I tend to be focused on the
cluster file system case where if it's going to several hundred
milliseconds to fetch the file, you're better off getting it from the
one other replicated copies from another server, or start the
reed-solomon reconstruction from. However, if you have an
architecture where the only copy of the file is on the particular file
server (perhaps because you are depending on RAID instead of n=3
replication or reed-solomon erasure codes), having the file server try
as hard as possible to find the file is a good thing.
I wonder if the right answer is to have "fastfail" and "nofastfail"
mount option.
- Ted
next prev parent reply other threads:[~2017-06-23 23:26 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-22 23:23 Khazhismel Kumykov
2017-06-23 4:43 ` Theodore Ts'o
2017-06-23 6:33 ` Andreas Dilger
2017-06-23 12:26 ` Theodore Ts'o
2017-06-23 21:36 ` Andreas Dilger
2017-06-23 22:33 ` Khazhismel Kumykov
2017-06-23 23:26 ` Theodore Ts'o [this message]
2017-06-23 23:34 ` Andreas Dilger
2017-06-24 0:24 ` Theodore Ts'o
2017-06-26 19:22 ` Tahsin Erdogan
2017-06-26 20:45 ` Andreas Dilger
2017-06-27 21:58 ` Pavel Machek
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=20170623232616.r3ffksjntjfbrzgb@thunk.org \
--to=tytso@mit.edu \
--cc=adilger.kernel@dilger.ca \
--cc=adilger@dilger.ca \
--cc=khazhy@google.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/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
all inboxes | Powered by JetHome®