From: NeilBrown <neilb@suse.com>
To: "Michał Mirosław" <mirq-linux@rere.qmqm.pl>
Cc: Shaohua Li <shli@kernel.org>, linux-raid@vger.kernel.org
Subject: Re: [PATCH] md: allow changing set_name of running array
Date: Tue, 05 Sep 2017 11:00:40 +1000 [thread overview]
Message-ID: <87pob6c62v.fsf@notabene.neil.brown.name> (raw)
In-Reply-To: <20170904193639.iagu5d5iu3tdhce2@qmqm.qmqm.pl>
[-- Attachment #1: Type: text/plain, Size: 3030 bytes --]
On Mon, Sep 04 2017, Michał Mirosław wrote:
> On Mon, Sep 04, 2017 at 12:22:33PM +1000, NeilBrown wrote:
>> On Fri, Sep 01 2017, Michał Mirosław wrote:
>>
>> > On Fri, Sep 01, 2017 at 10:07:29AM +1000, NeilBrown wrote:
>> >> On Wed, Aug 30 2017, Michał Mirosław wrote:
>> >> > Allow changing active array's set_name. This is the only way to
>> >> > safely update superblock on an array which carries a mounted fs.
>> >>
>> >> Do you really need to change the set_name of an active array?
>> >>
>> >> The name is only used when the array is actived, so wait until the next
>> >> time the array is stopped, and change the name then.
>> >>
>> >> You can boot with a rescue CD or similar and use "--assemble
>> >> --update=name", or with a bit of effort you could get the normal boot
>> >> sequence to change the name.
>> >>
>> >> I wouldn't object to adding something to mdadm so that it would read
>> >> something from mdadm.conf, and update the set name at boot time.
>> >>
>> >> What is the underlying problem that you are trying to solve here?
>> >
>> > I had to fix /dev/md* naming on a system with no physical access.
>> >
>> > The problem was that despite matching mdadm.conf entries, arrays started
>> > with random 127-i indexes (because superblocks' set_names didn't match
>> > hostname, I guess).
>>
>> That's odd. If an array is listed in mdadm.conf, that is enough to tell
>> mdadm that it is "local" so that it doesn't need the hostname to match.
>> Can you show me exactly what was in your mdadm.conf?
>
> This is what was I had when it would reassign arrays on boot. System
> hostname is 'rere' - it was renamed some time after creating arrays.
>
> ---8<---
> HOMEHOST <system>
> MAILADDR root
> ARRAY /dev/md/0 metadata=1.2 UUID=d5ea39a9:5ec27c36:c83296d4:70f879d4 name=rere2:0
> ARRAY /dev/md/1 metadata=1.2 UUID=9bf69b92:2e7ba905:5f959c09:c8fecb99 name=rere2:1
> ---8<---
>
> I don't have old versions of mdadm.conf, so had to recreate this one.
> IIRC I verified UUIDs back then, but don't remember whether I modified
> names or not. Thinking of it, how would mdadm behave if it had matching
> UUIDs and mismatching array names in mdadm.conf?
That's what I was wondering and part of why I asked to see the
mdadm.conf.
If a name is given in mdadm.conf and it doesn't match the name in the
metadata, that line will be ignored. If mdadm doesn't find a match in
mdadm.conf and the hostname doesn't match, the the array will be treated
as "foreign" and will be assembled as e.g. /dev/md127 with a symlink
from /dev/md/0_1.
If the name and uuid in mdadm.conf do match the metadata, it will be
treat as "local" and will be given the name that you would expect
(/dev/md0, /dev/md/0).
So my guess is that the mdadm.conf you had at the time doesn't match
what you have provided above.
It would be nice to add an option to "mdadm --incremental" to tell it to
update various details like you can with "mdadm --assemble"....
NeilBrown
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next prev parent reply other threads:[~2017-09-05 1:00 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-29 22:02 [PATCH] md: allow changing set_name of running array Michał Mirosław
2017-09-01 0:07 ` NeilBrown
2017-09-01 16:41 ` Michał Mirosław
2017-09-04 2:22 ` NeilBrown
2017-09-04 19:36 ` Michał Mirosław
2017-09-05 1:00 ` NeilBrown [this message]
2017-09-05 3:06 ` Phil Turmel
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=87pob6c62v.fsf@notabene.neil.brown.name \
--to=neilb@suse.com \
--cc=linux-raid@vger.kernel.org \
--cc=mirq-linux@rere.qmqm.pl \
--cc=shli@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