For clarification:
> There is still the issue of doing 512-byte
> writes and RAID 5 only does 1024.
Raid 5 resync is done in "multiples of 1K", but XFS
appears to need 512-byte resyncs as the base unit.
Sorry for the terse explanation that probably
seemed unclear.
Scott
-----Original Message-----
From: Scott Smyth
To: 'Steve Lord '; 'linux-xfs@xxxxxxxxxxx '
Sent: 1/22/01 9:25 AM
Subject: RE: [PATCH] - filesystem corruption on soft RAID5 in 2.4.0+ (fwd)
Hi Steve;
Several issues are coming up in debugging the RAID5
and XFS issue(s). We will try this patch, but there are
larger issues as well one of our engineers flushed out
with Martin and Neils' help. However, this will solve
part of them.
There is still the issue of doing 512-byte writes and
RAID 5 only does 1024. We are working on it with Neil
and Martin with two of our engineers: Danny Cox (who sent
this email), dcox@xxxxxxxxxx; and Robert Lasirona,
rlasirona@xxxxxxxxxxx See the email below.
Danny sent a patch to allow mkfs.xfs and mounting after
play well while it is resyncing that we are trying now
and will send on to the list.
BTW, why are 512-byte writes done?
thanks, Scott
Neil Brown wrote:
>
> On Friday January 19, danscox@xxxxxxxxxxxxxx wrote:
> > Neil,
> >
> >
> > I'm Danny Cox, one of Scott's engineers. I have some
insight:
> > sometimes, XFS writes to the block device using a block size of 512
> > bytes. This is apparently what gives MD/RAID5 problems. For
example,
> > in raid5_sync_request, the last statement is:
> >
> > return (bufsize>>10)-redone;
> >
> > Well, if bufsize (which comes from sh->size) is 512, then
bufsize>>10
is
> > 0! This causes an infinite loop in md_do_sync(). Martin Petersen
@
> > Linuxcare also confirms that MD/RAID5 doesn't work with 512 byte
blocks,
> > and said he'll contact you also, to see how you feel about it.
> >
> > If I can be of further assistance, please let me know.
> >
> > Thanks for your time!
>
> Looks like a good call to me. It definately would have problems with
> a 512 byte block size.
>
> The resync code has always been done in multiples of 1K, and as I
> wasn't really sure why, I didn't change it. But now I am a lot more
> familiar with all the code and I am quite confident that changing it
> to work in 512 byte units would be fine. Probably make various bits
> of code cleaner too.
> I will put togethe a patch just as soon as I resolve all the
> filesystem corruptions.... unless you beat me to it.
>
> Thanks,
> NeilBrown
Sincerely,
Scott
--
Scott Smyth <ssmyth@xxxxxxxxxx>
408-605-4743
-----Original Message-----
From: Steve Lord
To: linux-xfs@xxxxxxxxxxx
Sent: 1/22/01 9:03 AM
Subject: Re: [PATCH] - filesystem corruption on soft RAID5 in 2.4.0+
(fwd)
I am wondering if this will help out in the
'XFS and RAID5 Aren't Playing Well Together'
issue?
Steve
------- Forwarded Message
Date: Mon, 22 Jan 2001 19:36:30 +0000
From: Edward <edward@xxxxxxxxxxx>
To: Neil Brown <neilb@xxxxxxxxxxxxxxx>
cc: Otto Meier <gf435@xxxxxxx>, Holger Kiehl <Holger.Kiehl@xxxxxx>,
Hans Reiser <reiser@xxxxxxxxxxx>, Ed Tomlinson
<tomlins@xxxxxxx>,
Nils Rennebarth <nils@xxxxxxxxxxxxxxxxxxxx>,
Manfred Spraul <manfred@xxxxxxxxxxxxxxxx>,
David Willmore <n0ymv@xxxxxxxxxxxx>,
Linus Torvalds <torvalds@xxxxxxxxxxxxx>,
Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>,
linux-kernel@xxxxxxxxxxxxxxx,
linux-raid@xxxxxxxxxxxxxxx
Subject: Re: [PATCH] - filesystem corruption on soft RAID5 in 2.4.0+
Neil Brown wrote:
>
> There have been assorted reports of filesystem corruption on raid5 in
> 2.4.0, and I have finally got a patch - see below.
> I don't know if it addresses everybody's problems, but it fixed a very
> really problem that is very reproducable.
>
> The problem is that parity can be calculated wrongly when doing a
> read-modify-write update cycle. If you have a fully functional, you
> wont notice this problem as the parity block is never used to return
> data. But if you have a degraded array, you will get corruption very
> quickly.
> So I think this will solve the reported corruption with ext2fs, as I
> think they were mostly on degradred arrays. I have no idea whether it
> will address the reiserfs problems as I don't think anybody reporting
> those problems described their array.
But we deal with a fully functional one.
Nevertheless this patch fixed reiserfs corruption..
Thanks.
Edward.
>
> In any case, please apply, and let me know of any further problems.
>
> --- ./drivers/md/raid5.c 2001/01/21 04:01:57 1.1
> +++ ./drivers/md/raid5.c 2001/01/21 20:36:05 1.2
> @@ -714,6 +714,11 @@
> break;
> }
> spin_unlock_irq(&conf->device_lock);
> + if (count>1) {
> + xor_block(count, bh_ptr);
> + count = 1;
> + }
> +
> for (i = disks; i--;)
> if (chosen[i]) {
> struct buffer_head *bh = sh->bh_cache[i];
- -
To unsubscribe from this list: send the line "unsubscribe linux-kernel"
in
the body of a message to majordomo@xxxxxxxxxxxxxxx
Please read the FAQ at http://www.tux.org/lkml/
------- End of Forwarded Message
|