linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Neil Brown <neilb@suse.de>
To: Doug Ledford <dledford@redhat.com>
Cc: Kay Sievers <kay.sievers@vrfy.org>,
	Andre Noll <maan@systemlinux.org>,
	martin f krafft <madduck@debian.org>,
	linux-raid@vger.kernel.org, Michal Marek <mmarek@novell.com>
Subject: Re: RFC - device names and mdadm with some reference to udev.
Date: Tue, 28 Oct 2008 10:36:32 +1100	[thread overview]
Message-ID: <18694.20608.954160.346473@notabene.brown> (raw)
In-Reply-To: message from Doug Ledford on Monday October 27

On Monday October 27, dledford@redhat.com wrote:
> 
> I've found the udev rules method of starting md devices to be
> problematic (at best).
> 
> Here's the issue (in Fedora at least).  Starting devices via udev means
> starting them as soon as they are capable and not waiting until all
> devices are up and running.  You have to do this in case the device is
> in a degraded state and you aren't going to get all the devices.
> However, we don't create a bitmap on devices by default in the installer
> (a user can add one themselves, but it isn't there by default).  Without
> the bitmap, if the device is written to before all devices are added, it
> triggers a full resync of the device.  As it turns out, for certain
> installations, this happens on *every* single reboot.  It's painful, to
> say the least.   So, I wanted to change the udev rule to work slightly
> differently.  I wanted the invocation of mdadm --incremental that
> happened to be the one that took the array from an unrunable state to a
> runable but degraded state to sleep for say 2 to 5 seconds, and then if
> the array is still not up and running due to subsequent udev rule
> invocations, it would start the array in a degraded state.  This,
> however, breaks udevsettle.  So, the current setup (for the upcoming
> fedora 10) is done such that the udev rule won't start any degraded
> arrays, and instead we have both a specific mdadm invocation in the
> initrd and another in rc.sysinit that will start any degraded arrays
> that are also listed in the mdadm.conf file.  This makes sure that known
> arrays are assembled and started if at all possible, but we only start
> unknown arrays if they are complete.
> 

This is using udev to start md devices, which is not quite the focus
of the previous discussion.  That was more about using udev to create
the entries in /dev when someone else started the arrays.

However this is still a real issue that I would like to handle as best
we can.

I would like to get the md code to always have at least an in-memory
bitmap to allow quite resync after a "re-add".

However even this isn't a perfect solution as there is a window when a
single device failure can kill an array.

Your solution sounds good, but I'd be happy to hear other thoughts on
the issue.

Thanks,
NeilBrown

  reply	other threads:[~2008-10-27 23:36 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-26 22:56 RFC - device names and mdadm with some reference to udev Neil Brown
2008-10-27  8:22 ` martin f krafft
2008-10-27 15:13   ` Doug Ledford
2008-10-27 16:10     ` Andre Noll
2008-10-27 16:37       ` Kay Sievers
2008-10-27 16:59         ` martin f krafft
2008-10-27 18:31           ` Kay Sievers
2008-10-28  6:21             ` Luca Berra
2008-10-27 17:24         ` Doug Ledford
2008-10-27 23:36           ` Neil Brown [this message]
2008-10-29 18:49             ` Doug Ledford
2008-10-28  6:32           ` Luca Berra
2008-10-28  9:42           ` occasional bitmap was " David Greaves
2008-10-27 17:30         ` Andre Noll
2008-10-27 16:13     ` Kay Sievers
2008-10-27 22:37   ` Neil Brown
2008-10-27 22:51     ` Kay Sievers
2008-10-27 23:56       ` Neil Brown
2008-10-28  0:20         ` Kay Sievers
2008-10-28  6:17   ` Luca Berra
2008-10-27 12:41 ` Kay Sievers
2008-10-27 13:23   ` David Lethe
2008-10-27 23:27     ` Neil Brown
2008-10-27 23:48       ` David Lethe
2008-10-27 13:24   ` Andre Noll
2008-10-27 14:20     ` Kay Sievers
2008-10-27 23:23   ` Neil Brown
2008-10-28  0:03     ` Kay Sievers
2008-10-28  0:43       ` Neil Brown
2008-10-28  1:16         ` Kay Sievers
2008-10-28  1:44       ` Neil Brown
2008-10-28  1:52         ` Kay Sievers
2008-10-28  1:54           ` Kay Sievers
2008-10-31 20:54       ` Debian and udev (was: RFC - device names and mdadm with some reference to udev.) martin f krafft
2008-10-31 23:08         ` Bernd Schubert
2008-10-29  8:56     ` RFC - device names and mdadm with some reference to udev Gabor Gombas
2008-10-31 20:49     ` mdp devices on Debian (was: RFC - device names and mdadm with some reference to udev.) martin f krafft
2008-10-30 17:18 ` RFC - device names and mdadm with some reference to udev Doug Ledford
2008-10-31  9:45   ` Neil Brown
2008-11-03  9:29     ` Gabor Gombas
2008-11-03 10:33       ` Kay Sievers
2008-11-03 11:58         ` Gabor Gombas
2008-11-03 12:11           ` Kay Sievers
2008-11-03 14:34     ` Doug Ledford
2008-11-03 15:20       ` Dan Williams
2008-11-07  6:13       ` Neil Brown
2008-11-02 13:47   ` Luca Berra
     [not found] <dledford@redhat.com>
2008-10-31  1:02 ` greg
2008-10-31  9:18   ` Neil Brown
2008-11-02 13:52     ` Luca Berra
  -- strict thread matches above, loose matches on Subject: below --
2008-11-04 15:36 greg

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=18694.20608.954160.346473@notabene.brown \
    --to=neilb@suse.de \
    --cc=dledford@redhat.com \
    --cc=kay.sievers@vrfy.org \
    --cc=linux-raid@vger.kernel.org \
    --cc=maan@systemlinux.org \
    --cc=madduck@debian.org \
    --cc=mmarek@novell.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 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).