linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mike Tran <mhtran@us.ibm.com>
To: linux-raid@vger.kernel.org
Subject: Re: Spare disk could not sleep / standby [probably dangerous PATCH]
Date: Wed, 09 Mar 2005 10:29:34 -0600	[thread overview]
Message-ID: <1110385774.6587.46.camel@langvan2.homenetwork> (raw)
In-Reply-To: <200503092005.j29K56j2013533@pec6.gallier.dorf>

I tried the patch and immediately found problems.

On creation of raid1 array, only the spare has md superblock, the raid
disks has no superblock.  For instance:

mdadm -C /dev/md0 -l 1 -n 2 /dev/hdd1 /dev/hdd2 -x 1 /dev/hdd3
[wait for resync to finish if you want to...]
mdadm --stop /dev/md0
mdadm --examine /dev/hdd1 (no super block found)
mdadm --examine /dev/hdd2 (no super block found)
mdadm --examine /dev/hdd3 (nice output)

If you want to skip spares, you will need to alter the patch (see below)

On Wed, 2005-03-09 at 14:05, Peter Evertz wrote:
> Mike Tran writes: 
> 
> > Hi Peter, 
> > 
> > After applying this patch, have you tried stop and restart the MD
> > array?  I believe the spares will be kicked out in analyze_sbs()
> > function (see the second ITERATE_RDEV)
> mdadm ( v1.6.0 - 4 June 2004 )
> shows the arrays complete including spare.
> /proc/mdstat is ok 
> 
> I booted with my patched raid modules. So analyze_sbs() should have run.
> Maybe it works only for 0.90 superblocks, I haven't tried 1.00 
> 
> No problems yet. If it really fails the hard way, I will go to the next 
> Internetcafe and tell you about it :) 
> 
> Peter
> > 
> > --
> > Regards,
> > Mike T. 
> > 
> > 
> > On Wed, 2005-03-09 at 09:53, Peter Evertz wrote:
> >> This patch removes my problem. I hope it doesn't have influence on the 
> >> stability of
> >> the system.
> >> It is simple: The Update routine skips normaly only "faulty" disks. Now it 
> >> skips all disk
> >> that are not part of the working array ( raid_disk == -1 )
> >> I made some testing, but surely not all, so :  
> >> 
> >> DON'T APPLY TO YOUR SYSTEM WITH IMPORTENT DATA !  
> >> 
> >> Regards
> >> Peter  
> >> 
> >>  --- md.c.orig   2005-01-14 16:33:49.000000000 +0100
> >> +++ md.c        2005-03-09 15:27:23.000000000 +0100
> >> @@ -1340,14 +1340,14 @@
> >>        ITERATE_RDEV(mddev,rdev,tmp) {
> >>                char b[BDEVNAME_SIZE];
> >>                dprintk(KERN_INFO "md: ");
> >>  -               if (rdev->faulty)
> >>  -                       dprintk("(skipping faulty ");
> >> +               if (rdev->faulty || rdev->raid_disk < 0)
> >> +                       dprintk("(skipping faulty/spare ");  
> >> 
> >>                dprintk("%s ", bdevname(rdev->bdev,b));
> >>  -               if (!rdev->faulty) {
> >> +               if (!rdev->faulty && !rdev->raid_disk <0 ) {

if (!rdev->faulty && rdev->in_sync)
	err += write_disk_sb(rdev);
else {
	if (rdev->faulty)
		dprintk(" faulty.\n");
	else
		dprintk(" spare.\n");
}

/*
 * Don't try this :(
 * because this still breaks creation of new md array and..
 * for existing arrays with spares, the spares will be kicked out when 
 * the arrays are re-assembled.
 */


--
Regards,
Mike T.


  reply	other threads:[~2005-03-09 16:29 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-08  4:05 Spare disk could not sleep / standby Peter Evertz
2005-03-08  4:14 ` Guy
2005-03-08  4:40   ` Neil Brown
2005-03-08  5:20     ` Molle Bestefich
2005-03-08  5:36       ` Neil Brown
2005-03-08  5:46         ` Molle Bestefich
2005-03-08  6:03           ` Neil Brown
2005-03-08  6:24             ` Molle Bestefich
     [not found]               ` <422D625C.5020803@medien.uni-weimar.de>
2005-03-08  8:57                 ` Molle Bestefich
2005-03-08 10:51                   ` Tobias Hofmann
2005-03-08 13:13                     ` Gordon Henderson
2005-03-09  5:11                       ` Brad Campbell
2005-03-09  9:03                       ` Tobias Hofmann
2005-03-08  8:51         ` David Greaves
2005-03-08 15:59     ` Mike Tran
2005-03-09 15:53     ` Spare disk could not sleep / standby [probably dangerous PATCH] Peter Evertz
2005-03-09 10:44       ` Mike Tran
2005-03-09 20:05         ` Peter Evertz
2005-03-09 16:29           ` Mike Tran [this message]
2005-03-09 23:20             ` Peter Evertz

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=1110385774.6587.46.camel@langvan2.homenetwork \
    --to=mhtran@us.ibm.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 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).