David Brown | 1 Jul 2011 09:23
Favicon

Re: misunderstanding of spare and raid devices? - and one question more

On 30/06/2011 23:28, NeilBrown wrote:
> On Thu, 30 Jun 2011 16:21:57 +0200 Karsten Römke<k.roemke <at> gmx.de>  wrote:
>
>> Hi Phil
>>>
>>> If your CPU has free cycles, I suggest you run raid6 instead of raid5+spare.
>>>
>>> Phil
>>>
>> I started the raid 6 array and get:
>>
>> Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
>> md0 : active raid6 sde5[4] sdd5[3] sdc5[2] sdb2[1] sda3[0]
>>         13759296 blocks level 6, 64k chunk, algorithm 2 [5/5] [UUUUU]
>>         [=================>...]  resync = 87.4% (4013184/4586432) finish=0.4min speed=20180K/sec
>                                    ^^^^^^
> Note: resync
>
>>
>> when I started the raid 5 array I get
>>
>> md0 : active raid5 sdd5[4] sde5[5](S) sdc5[2] sdb2[1] sda3[0]
>>         13759296 blocks level 5, 64k chunk, algorithm 2 [4/3] [UUU_]
>>         [=>...................]  recovery =  6.2% (286656/4586432) finish=0.9min speed=71664K/sec
>                                    ^^^^^^^^
> Note: recovery.
>
>>
>> so I have to expect a three times less write speed - or is this calculation
>> to simple ?
(Continue reading)

Mathias Burén | 1 Jul 2011 10:26
Picon

mdadm -git compile error

Morning,

Using the git of today I see this:

 $ make
gcc -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter
-ggdb -DSendmail=\""/usr/sbin/sendmail -t"\"
-DCONFFILE=\"/etc/mdadm.conf\" -DCONFFILE2=\"/etc/mdadm/mdadm.conf\"
-DMAP_DIR=\"/dev/.mdadm\" -DMAP_FILE=\"map\"
-DMDMON_DIR=\"/dev/.mdadm\"
-DFAILED_SLOTS_DIR=\"/dev/.mdadm/failed-slots\" -DUSE_PTHREADS   -c -o
Assemble.o Assemble.c
gcc -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter
-ggdb -DSendmail=\""/usr/sbin/sendmail -t"\"
-DCONFFILE=\"/etc/mdadm.conf\" -DCONFFILE2=\"/etc/mdadm/mdadm.conf\"
-DMAP_DIR=\"/dev/.mdadm\" -DMAP_FILE=\"map\"
-DMDMON_DIR=\"/dev/.mdadm\"
-DFAILED_SLOTS_DIR=\"/dev/.mdadm/failed-slots\" -DUSE_PTHREADS   -c -o
Build.o Build.c
gcc -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter
-ggdb -DSendmail=\""/usr/sbin/sendmail -t"\"
-DCONFFILE=\"/etc/mdadm.conf\" -DCONFFILE2=\"/etc/mdadm/mdadm.conf\"
-DMAP_DIR=\"/dev/.mdadm\" -DMAP_FILE=\"map\"
-DMDMON_DIR=\"/dev/.mdadm\"
-DFAILED_SLOTS_DIR=\"/dev/.mdadm/failed-slots\" -DUSE_PTHREADS   -c -o
Create.o Create.c
gcc -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter
-ggdb -DSendmail=\""/usr/sbin/sendmail -t"\"
-DCONFFILE=\"/etc/mdadm.conf\" -DCONFFILE2=\"/etc/mdadm/mdadm.conf\"
-DMAP_DIR=\"/dev/.mdadm\" -DMAP_FILE=\"map\"
(Continue reading)

Robin Hill | 1 Jul 2011 10:50
Picon

Re: misunderstanding of spare and raid devices? - and one question more

On Fri Jul 01, 2011 at 09:23:43 +0200, David Brown wrote:

> On 30/06/2011 23:28, NeilBrown wrote:
> > On Thu, 30 Jun 2011 16:21:57 +0200 Karsten Römke<k.roemke <at> gmx.de>  wrote:
> >
> >> Hi Phil
> >>>
> >>> If your CPU has free cycles, I suggest you run raid6 instead of raid5+spare.
> >>>
> >>> Phil
> >>>
> >> I started the raid 6 array and get:
> >>
> >> Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
> >> md0 : active raid6 sde5[4] sdd5[3] sdc5[2] sdb2[1] sda3[0]
> >>         13759296 blocks level 6, 64k chunk, algorithm 2 [5/5] [UUUUU]
> >>         [=================>...]  resync = 87.4% (4013184/4586432) finish=0.4min speed=20180K/sec
> >                                    ^^^^^^
> > Note: resync
> >
> >>
> >> when I started the raid 5 array I get
> >>
> >> md0 : active raid5 sdd5[4] sde5[5](S) sdc5[2] sdb2[1] sda3[0]
> >>         13759296 blocks level 5, 64k chunk, algorithm 2 [4/3] [UUU_]
> >>         [=>...................]  recovery =  6.2% (286656/4586432) finish=0.9min speed=71664K/sec
> >                                    ^^^^^^^^
> > Note: recovery.
> >
> >>
(Continue reading)

David Brown | 1 Jul 2011 12:18
Favicon

Re: misunderstanding of spare and raid devices? - and one question more

On 01/07/2011 10:50, Robin Hill wrote:
> On Fri Jul 01, 2011 at 09:23:43 +0200, David Brown wrote:
>
>> On 30/06/2011 23:28, NeilBrown wrote:
>>> On Thu, 30 Jun 2011 16:21:57 +0200 Karsten Römke<k.roemke <at> gmx.de>   wrote:
>>>
>>>> Hi Phil
>>>>>
>>>>> If your CPU has free cycles, I suggest you run raid6 instead of raid5+spare.
>>>>>
>>>>> Phil
>>>>>
>>>> I started the raid 6 array and get:
>>>>
>>>> Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
>>>> md0 : active raid6 sde5[4] sdd5[3] sdc5[2] sdb2[1] sda3[0]
>>>>          13759296 blocks level 6, 64k chunk, algorithm 2 [5/5] [UUUUU]
>>>>          [=================>...]  resync = 87.4% (4013184/4586432) finish=0.4min speed=20180K/sec
>>>                                     ^^^^^^
>>> Note: resync
>>>
>>>>
>>>> when I started the raid 5 array I get
>>>>
>>>> md0 : active raid5 sdd5[4] sde5[5](S) sdc5[2] sdb2[1] sda3[0]
>>>>          13759296 blocks level 5, 64k chunk, algorithm 2 [4/3] [UUU_]
>>>>          [=>...................]  recovery =  6.2% (286656/4586432) finish=0.9min speed=71664K/sec
>>>                                     ^^^^^^^^
>>> Note: recovery.
>>>
(Continue reading)

Robin Hill | 1 Jul 2011 13:29
Picon

Re: misunderstanding of spare and raid devices? - and one question more

On Fri Jul 01, 2011 at 12:18:22PM +0200, David Brown wrote:

> On 01/07/2011 10:50, Robin Hill wrote:
> > On Fri Jul 01, 2011 at 09:23:43 +0200, David Brown wrote:
> >
> >> What's the difference between a "resync" and a "recovery"?  Is it that a
> >> "resync" will read the whole stripe, check if it is valid, and if it is
> >> not it then generates the parity, while a "recovery" will always
> >> generate the parity?
> >>
> >  From the names, recovery would mean that it's reading from N-1 disks,
> > and recreating data/parity to rebuild the final disk (as when it
> > recovers from a drive failure), whereas resync will be reading from all
> > N disks and checking/recreating the parity (as when you're running a
> > repair on the array).
> >
> > The main reason I can see for doing a resync on RAID6 rather than a
> > recovery is if the data reconstruction from the Q parity is far slower
> > that the construction of the Q parity itself (I've no idea how the
> > mathematics works out for this).
> >
> 
> Well, data reconstruction from Q parity /is/ more demanding than 
> constructing the Q parity in the first place (the mathematics is the 
> part that I know about).  That's why a two-disk degraded raid6 array is 
> significantly slower (or, more accurately, significantly more 
> cpu-intensive) than a one-disk degraded raid6 array.
> 
> But that doesn't make a difference here - you are rebuilding one or two 
> disks, so you have to use the data you've got whether you are doing a 
(Continue reading)

David Brown | 1 Jul 2011 14:45
Favicon

Re: misunderstanding of spare and raid devices? - and one question more

On 01/07/2011 13:29, Robin Hill wrote:
> On Fri Jul 01, 2011 at 12:18:22PM +0200, David Brown wrote:
>
>> On 01/07/2011 10:50, Robin Hill wrote:
>>> On Fri Jul 01, 2011 at 09:23:43 +0200, David Brown wrote:
>>>
>>>> What's the difference between a "resync" and a "recovery"?  Is it that a
>>>> "resync" will read the whole stripe, check if it is valid, and if it is
>>>> not it then generates the parity, while a "recovery" will always
>>>> generate the parity?
>>>>
>>>    From the names, recovery would mean that it's reading from N-1 disks,
>>> and recreating data/parity to rebuild the final disk (as when it
>>> recovers from a drive failure), whereas resync will be reading from all
>>> N disks and checking/recreating the parity (as when you're running a
>>> repair on the array).
>>>
>>> The main reason I can see for doing a resync on RAID6 rather than a
>>> recovery is if the data reconstruction from the Q parity is far slower
>>> that the construction of the Q parity itself (I've no idea how the
>>> mathematics works out for this).
>>>
>>
>> Well, data reconstruction from Q parity /is/ more demanding than
>> constructing the Q parity in the first place (the mathematics is the
>> part that I know about).  That's why a two-disk degraded raid6 array is
>> significantly slower (or, more accurately, significantly more
>> cpu-intensive) than a one-disk degraded raid6 array.
>>
>> But that doesn't make a difference here - you are rebuilding one or two
(Continue reading)

NeilBrown | 1 Jul 2011 15:02
Picon
Gravatar

Re: misunderstanding of spare and raid devices? - and one question more

On Fri, 01 Jul 2011 14:45:00 +0200 David Brown <david <at> westcontrol.com> wrote:

> On 01/07/2011 13:29, Robin Hill wrote:
> > On Fri Jul 01, 2011 at 12:18:22PM +0200, David Brown wrote:
> >
> >> On 01/07/2011 10:50, Robin Hill wrote:
> >>> On Fri Jul 01, 2011 at 09:23:43 +0200, David Brown wrote:
> >>>
> >>>> What's the difference between a "resync" and a "recovery"?  Is it that a
> >>>> "resync" will read the whole stripe, check if it is valid, and if it is
> >>>> not it then generates the parity, while a "recovery" will always
> >>>> generate the parity?
> >>>>
> >>>    From the names, recovery would mean that it's reading from N-1 disks,
> >>> and recreating data/parity to rebuild the final disk (as when it
> >>> recovers from a drive failure), whereas resync will be reading from all
> >>> N disks and checking/recreating the parity (as when you're running a
> >>> repair on the array).
> >>>
> >>> The main reason I can see for doing a resync on RAID6 rather than a
> >>> recovery is if the data reconstruction from the Q parity is far slower
> >>> that the construction of the Q parity itself (I've no idea how the
> >>> mathematics works out for this).
> >>>
> >>
> >> Well, data reconstruction from Q parity /is/ more demanding than
> >> constructing the Q parity in the first place (the mathematics is the
> >> part that I know about).  That's why a two-disk degraded raid6 array is
> >> significantly slower (or, more accurately, significantly more
> >> cpu-intensive) than a one-disk degraded raid6 array.
(Continue reading)

Krzysztof Wojcik | 1 Jul 2011 18:34
Picon
Favicon

[PATCH] imsm: FIX: getinfo_super_imsm_volume() doesn't fill all disk information

From: Adam Kwolek <adam.kwolek <at> intel.com>

Issue:
getinfo_super_imsm_volume() clears entire 'info' structure before filling with new
information. Disk number and raid_disk can be required later by caller
but it is also cleared.

Resolution:
Patch backs up all disk information before zeroing info structure and
restore it before function return.
The patch aslo reverses workaround for the same problem introduced
in commit:

80e4abc99c7f5a16c56c1c4084bfad63aec03c01
FIX: Cannot create volume

Signed-off-by: Adam Kwolek <adam.kwolek <at> intel.com>
Signed-off-by: Krzysztof Wojcik <krzysztof.wojcik <at> intel.com>
---
 Create.c      |    9 ---------
 super-intel.c |   13 ++++++++++++-
 2 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/Create.c b/Create.c
index 48115db..8d88aa1 100644
--- a/Create.c
+++ b/Create.c
 <at>  <at>  -856,15 +856,6  <at>  <at>  int Create(struct supertype *st, char *mddev,
 					/* getinfo_super might have lost these ... */
 					inf->disk.major = major(stb.st_rdev);
(Continue reading)

Simon Matthews | 2 Jul 2011 06:41
Picon

Re: Can't start array and Negative "Used Dev Size"

Neil,

On Tue, Jun 28, 2011 at 10:18 PM, NeilBrown <neilb <at> suse.de> wrote:
> On Tue, 28 Jun 2011 21:29:37 -0700 Simon Matthews
> <simon.d.matthews <at> gmail.com> wrote:
>
>> Problem 1: "Used Dev Size"
>> ====================
>> Note: the system is a Gentoo box, so perhaps I have missed a kernel
>> configuration option or use flag to deal with large hard drives.
>>
>> A week or two ago, I resized a raid1 array using 2x3TB drives. I went
>
> Oopps.  That array is using 0.90 metadata which can only handle up to 2TB
> devices.  The 'resize' code should catch that you are asking the impossible,
> but it doesn't it seems.
>
> You need to simply recreate the array as 1.0.
> i.e.
>  mdadm -S /dev/md5
>  mdadm  -C /dev/md5 --metadata 1.0 -l1 -n2 --assume-clean

Before I do this (tomorrow), do I need to add the partitions to the command:

mdadm  -C /dev/md5 --metadata 1.0 -l1 -n2 --assume-clean /dev/sdd2 /dev/sdc2

Simon
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo <at> vger.kernel.org
(Continue reading)

Simon Matthews | 2 Jul 2011 08:19
Picon

Re: Can't start array and Negative "Used Dev Size"

Neil,

On Fri, Jul 1, 2011 at 9:41 PM, Simon Matthews
<simon.d.matthews <at> gmail.com> wrote:
> Neil,
>
> On Tue, Jun 28, 2011 at 10:18 PM, NeilBrown <neilb <at> suse.de> wrote:
>> On Tue, 28 Jun 2011 21:29:37 -0700 Simon Matthews
>> <simon.d.matthews <at> gmail.com> wrote:
>>
>>> Problem 1: "Used Dev Size"
>>> ====================
>>> Note: the system is a Gentoo box, so perhaps I have missed a kernel
>>> configuration option or use flag to deal with large hard drives.
>>>
>>> A week or two ago, I resized a raid1 array using 2x3TB drives. I went
>>
>> Oopps.  That array is using 0.90 metadata which can only handle up to 2TB
>> devices.  The 'resize' code should catch that you are asking the impossible,
>> but it doesn't it seems.
>>
>> You need to simply recreate the array as 1.0.
>> i.e.
>>  mdadm -S /dev/md5
>>  mdadm  -C /dev/md5 --metadata 1.0 -l1 -n2 --assume-clean
>
> Before I do this (tomorrow), do I need to add the partitions to the command:
>
> mdadm  -C /dev/md5 --metadata 1.0 -l1 -n2 --assume-clean /dev/sdd2 /dev/sdc2

(Continue reading)


Gmane