From: NeilBrown <neilb@suse.de>
To: Jonathan Brassow <jbrassow@redhat.com>
Cc: linux-raid@vger.kernel.org
Subject: Re: [PATCH] DM RAID: Add ability to restore transiently failed devices on resume
Date: Mon, 22 Apr 2013 10:43:26 +1000 [thread overview]
Message-ID: <20130422104326.217ef2f8@notabene.brown> (raw)
In-Reply-To: <1365712023.9799.1.camel@f16>
[-- Attachment #1: Type: text/plain, Size: 1525 bytes --]
On Thu, 11 Apr 2013 15:27:03 -0500 Jonathan Brassow <jbrassow@redhat.com>
wrote:
> DM RAID: Add ability to restore transiently failed devices on resume
>
> This patch adds code to the resume function to check over the devices
> in the RAID array. If any are found to be marked as failed and their
> superblocks can be read, an attempt is made to reintegrate them into
> the array. This allows the user to refresh the array with a simple
> suspend and resume of the array - rather than having to load a
> completely new table, allocate and initialize all the structures and
> throw away the old instantiation.
>
> Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Is this really a good idea?
Just because you can read the superblock, that doesn't mean you can read any
other block in the array.
If the auto-recovery were optional I might consider it, but having it be
enforced on every suspend/resume just doesn't seem safe to me.
Have I misunderstood?
Is this that hard to achieve in user-space?
> + if (test_bit(Faulty, &r->flags) && r->sb_page &&
> + !read_disk_sb(r, r->sb_size)) {
I know it is fairly widely used, especially for 'strcmp', but I absolutely
despise this construct.
!read_disk_sb()
sound like
"not read_disk_sb" or "could not read the disk's superblock" but it
actually means "did not fail to read the disk's superblock" - the exact
reverse.
If 0 means success, I like to see an explicit test for 0:
read_disk_sb() == 0
NeilBrown
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
next prev parent reply other threads:[~2013-04-22 0:43 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-11 20:27 [PATCH] DM RAID: Add ability to restore transiently failed devices on resume Jonathan Brassow
2013-04-22 0:43 ` NeilBrown [this message]
2013-04-22 18:57 ` Brassow Jonathan
2013-04-24 6:39 ` NeilBrown
2013-05-02 19:19 ` [PATCH - v2] " Jonathan Brassow
2013-05-06 6:00 ` NeilBrown
2013-05-06 14:55 ` Brassow Jonathan
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=20130422104326.217ef2f8@notabene.brown \
--to=neilb@suse.de \
--cc=jbrassow@redhat.com \
--cc=linux-raid@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.