[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <64bb37e0712270630x65ae1da0l3316aca9327d3b6b@mail.gmail.com>
Date: Thu, 27 Dec 2007 15:30:50 +0100
From: "Torsten Kaiser" <just.for.lkml@...glemail.com>
To: "Andrew Morton" <akpm@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, "Alasdair G Kergon" <agk@...hat.com>,
"Greg KH" <greg@...ah.com>, NeilBrown <neilb@...e.de>
Subject: Re: 2.6.24-rc6-mm1
[author CCed]
On Dec 27, 2007 12:42 PM, Torsten Kaiser <just.for.lkml@...glemail.com> wrote:
> On Dec 23, 2007 9:39 PM, Andrew Morton <akpm@...ux-foundation.org> wrote:
> >
> > On Sun, 23 Dec 2007 17:27:12 +0100 "Torsten Kaiser" <just.for.lkml@...glemail.com> wrote:
> >
> > > On Dec 23, 2007 8:30 AM, Andrew Morton <akpm@...ux-foundation.org> wrote:
> > > >
> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.24-rc6/2.6.24-rc6-mm1/
> > > [snip]
> > > > +md-allow-devices-to-be-shared-between-md-arrays.patch
[snip]
> OK, I debugged this some more. It looks like two bugs meshed together.
>
> One new bug: "do_md_run() returned -22"
> I can't seem to start my raid anymore.
> The following part of md-allow-devices-to-be-shared-between-md-arrays
> adds a new check to do_md_run() (drivers/md/md.c) that fails for my system:
> @@ -3213,8 +3283,11 @@ static int do_md_run(mddev_t * mddev)
> /*
> * Analyze all RAID superblock(s)
> */
> - if (!mddev->raid_disks)
> + if (!mddev->raid_disks) {
> + if (!mddev->persistent)
> + return -EINVAL;
> analyze_sbs(mddev);
> + }
>
> chunk_size = mddev->chunk_size;
This hunk is indeed buggy.
analyze_sbs() calls load_super() and validate_super() and only the
validate function is setting mddev->persistent, so this new check
needs to be after the call analyze_sbs(mddev).
Changing this allows my system to boot correctly, including starting KDE.
Please note, that this is not a fix for the OOPS in delayed_delete,
the OOPS just doesn't happen, because the buggy error path is no
longer used.
Torsten
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists