From: Wols Lists <antlists@youngman.org.uk>
To: John Stoffel <john@stoffel.org>, NeilBrown <neilb@suse.com>
Cc: Shaohua Li <shli@kernel.org>, Song Liu <songliubraving@fb.com>,
linux-raid <linux-raid@vger.kernel.org>,
"kumba@gentoo.org" <kumba@gentoo.org>, Shaohua Li <shli@fb.com>
Subject: Re: [PATCH] md: forbid a RAID5 from having both a bitmap and a journal.
Date: Fri, 20 Oct 2017 00:21:51 +0100 [thread overview]
Message-ID: <59E9338F.9060802@youngman.org.uk> (raw)
In-Reply-To: <23015.27076.469924.191613@quad.stoffel.home>
On 18/10/17 15:48, John Stoffel wrote:
>>>>>> "NeilBrown" == NeilBrown <neilb@suse.com> writes:
>
> NeilBrown> On Tue, Oct 17 2017, John Stoffel wrote:
>>>>>>>> "NeilBrown" == NeilBrown <neilb@suse.com> writes:
>>>
> NeilBrown> Having both a bitmap and a journal is pointless.
> NeilBrown> Attempting to do so can corrupt the bitmap if the journal
> NeilBrown> replay happens before the bitmap is initialized.
> NeilBrown> Rather than try to avoid this corruption, simply
> NeilBrown> refuse to allow arrays with both a bitmap and a journal.
> NeilBrown> So:
> NeilBrown> - if raid5_run sees both are present, fail.
>>>
>>> So what happens if there's someone out there with an array setup with
>>> both already? Should the journal or the bitmap be removed at this
>>> time?
>
> NeilBrown> If someone has an array like that they can assemble it with
> NeilBrown> --update=no-bitmap
>
> NeilBrown> I'd rather not automatically disable things.
>
> That works for me, assuming there's a useful message in the logs
> explaining what's gone wrong here. Either mdadm emits the message, or
> the kernel does.
>
Or are we better off, initially, just adding the code that prevents
adding a bitmap or journal? Allow existing arrays to run, emitting
messages to the console and/or log that this is not a good idea?
Then maybe a few versions down the line actually refuse to start an
array in this state.
I don't know how many arrays are in this state now, but doing this
should reduce the number of people getting a nasty shock when their
system fails to boot ...
Cheers,
Wol
next prev parent reply other threads:[~2017-10-19 23:21 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-10 21:20 [PATCH] md/bitmap: avoid read out of the disk Shaohua Li
2017-10-11 12:41 ` Joshua Kinard
2017-10-12 3:09 ` NeilBrown
2017-10-12 17:30 ` Shaohua Li
2017-10-12 17:53 ` Song Liu
2017-10-12 21:46 ` NeilBrown
2017-10-12 22:51 ` Shaohua Li
2017-10-13 5:16 ` NeilBrown
2017-10-13 19:51 ` Shaohua Li
2017-10-16 16:21 ` Song Liu
2017-10-16 21:15 ` NeilBrown
2017-10-16 23:56 ` Shaohua Li
2017-10-17 3:24 ` [PATCH] md: forbid a RAID5 from having both a bitmap and a journal NeilBrown
2017-10-17 20:41 ` John Stoffel
2017-10-17 21:03 ` NeilBrown
2017-10-18 1:51 ` Joshua Kinard
2017-10-19 23:16 ` Wols Lists
2017-10-18 14:48 ` John Stoffel
2017-10-19 23:21 ` Wols Lists [this message]
2017-10-18 1:50 ` Joshua Kinard
2017-10-19 3:16 ` Shaohua Li
2017-10-12 21:44 ` [PATCH] md/bitmap: avoid read out of the disk NeilBrown
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=59E9338F.9060802@youngman.org.uk \
--to=antlists@youngman.org.uk \
--cc=john@stoffel.org \
--cc=kumba@gentoo.org \
--cc=linux-raid@vger.kernel.org \
--cc=neilb@suse.com \
--cc=shli@fb.com \
--cc=shli@kernel.org \
--cc=songliubraving@fb.com \
/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.