linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Multipath problem
@ 2004-11-23 12:19 Oliver Heinz
  2004-11-23 20:16 ` Luca Berra
  2004-11-30  2:44 ` Multipath problem Neil Brown
  0 siblings, 2 replies; 4+ messages in thread
From: Oliver Heinz @ 2004-11-23 12:19 UTC (permalink / raw)
  To: linux-raid

Hi,

I'm trying to setup a HP packaged cluster (2xDL380G4 Servers +MA500G2 
Storage) both Servers  are connected via 2 SCSI-Links one for each of 
the storages's redundancy controllers.
The Storage shows as /dev/cciss/c0d1 and /dev/cciss/c1d0. When I create 
an multipath md device with version 1.6 of mdadm I can create it but 
restarting the array after I stopped it fails. With version 1.8.2 the 
size of the generated Array is 0 Blocks but I can restart it (which buys 
me nothing with that size ;-)

Mixing mdadm-1.6 and 1.8.1 for creating/managing the device doesn't 
work, it gives me an segfault.

Distro: Is debian woody, with a 2.4.25 debian standard kernel + patches 
for acl+ea and devmapper (linux-2.4.26-rc1-devmapper-ioctl.patch)

Any Ideas?

Thanks in advance,
Oliver


Version 1.60 (debian-package from adrian bunk):
server-b:~# mdadm --create /dev/md0 --level multipath -n 2  
/dev/cciss/c0d1 /dev/cciss/c1d0
VERS = 9000
mdadm: array /dev/md0 started.

server-b:/usr/src/packages# cat /proc/mdstat
Personalities : [multipath]
read_ahead 1024 sectors
md0 : active multipath cciss/c1d0[0] cciss/c0d1[1]
      573496704 blocks [1/1] [U]

unused devices: <none>

mdadm --examine --scan --config=/etc/mdadm/mdadm.conf >> 
/etc/mdadm/mdadm.conf
server-b:/usr/src/packages/mdadm-1.8.1# cat /etc/mdadm/mdadm.conf
DEVICE /dev/cciss/c[0-9]d[0-9]
ARRAY /dev/md0 level=multipath num-devices=1 
UUID=b4370fc9:9f734ab7:d6811ec0:062e8936
   spares=2   devices=/dev/cciss/c1d0,/dev/cciss/c0d1

server-b:/usr/src/packages# mdadm /dev/md0 --stop
server-b:/usr/src/packages# mdadm -A /dev/md0 -f /dev/cciss/c1d0 
/dev/cciss/c0d1
mdadm: failed to RUN_ARRAY /dev/md0: Invalid argument




Version 1.8.2 (source compiled):
server-b:/usr/src/packages# mdadm --create /dev/md0 --level multipath -n 
2  /dev/cciss/c0d1 /dev/cciss/c1d0
mdadm: array /dev/md0 started.

server-b:~# cat /proc/mdstat
Personalities : [multipath]
read_ahead 1024 sectors
md0 : active multipath cciss/c1d0[0] cciss/c0d1[1]
      0 blocks [1/1] [U]

unused devices: <none>

mdadm --examine --scan --config=/etc/mdadm/mdadm.conf >> 
/etc/mdadm/mdadm.conf
server-b:/usr/src/packages# cat /etc/mdadm/mdadm.conf
DEVICE /dev/cciss/c[0-9]d[0-9]
ARRAY /dev/md0 level=multipath num-devices=1 
UUID=afcb797f:f7cfa5f6:e0ed8819:59529278
   devices=/dev/cciss/c1d0,/dev/cciss/c0d1

server-b:/usr/src/packages# mdadm /dev/md0 --stop
server-b:/usr/src/packages/mdadm-1.8.1# mdadm -A /dev/md0 -f 
/dev/cciss/c1d0 /dev/cciss/c0d1
mdadm: /dev/md0 has been started with 1 drive and 1 spare.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multipath problem
  2004-11-23 12:19 Multipath problem Oliver Heinz
@ 2004-11-23 20:16 ` Luca Berra
  2004-11-25  9:43   ` Multipath problem [zero Block multipath device creation with mdadm 1.8.1] Oliver Heinz
  2004-11-30  2:44 ` Multipath problem Neil Brown
  1 sibling, 1 reply; 4+ messages in thread
From: Luca Berra @ 2004-11-23 20:16 UTC (permalink / raw)
  To: linux-raid

[-- Attachment #1: Type: text/plain, Size: 393 bytes --]

On Tue, Nov 23, 2004 at 01:19:51PM +0100, Oliver Heinz wrote:
>Mixing mdadm-1.6 and 1.8.1 for creating/managing the device doesn't 
>work, it gives me an segfault.

try patching mdadm-1.8.1 with this patch, it might help with the
segfault.


-- 
Luca Berra -- bluca@comedia.it
        Communication Media & Services S.r.l.
 /"\
 \ /     ASCII RIBBON CAMPAIGN
  X        AGAINST HTML MAIL
 / \

[-- Attachment #2: mdadm-1.8.1-memset.patch --]
[-- Type: text/plain, Size: 933 bytes --]

--- mdadm-1.8.1/mdadm.c.bluca	2004-11-14 19:44:26.000000000 +0100
+++ mdadm-1.8.1/mdadm.c	2004-11-14 19:44:31.747309097 +0100
@@ -80,11 +80,10 @@
 
 	int mdfd = -1;
 
-	ident.uuid_set=0;
+	memset(&ident,0,sizeof(struct mddev_ident_s));
 	ident.level = UnSet;
 	ident.raid_disks = UnSet;
 	ident.super_minor= UnSet;
-	ident.devices=0;
 
 	while ((option_index = -1) ,
 	       (opt=getopt_long(argc, argv,
--- mdadm-1.8.1/config.c.bluca	2004-11-02 06:11:06.000000000 +0100
+++ mdadm-1.8.1/config.c	2004-11-14 19:44:35.693660204 +0100
@@ -266,15 +266,11 @@
 	struct mddev_ident_s mis;
 	mddev_ident_t mi;
 
-	mis.uuid_set = 0;
+	memset(&mis,0,sizeof(struct mddev_ident_s));
 	mis.super_minor = UnSet;
 	mis.level = UnSet;
 	mis.raid_disks = UnSet;
 	mis.spare_disks = UnSet;
-	mis.devices = NULL;
-	mis.devname = NULL;
-	mis.spare_group = NULL;
-	mis.autof = 0;
 
 	for (w=dl_next(line); w!=line; w=dl_next(w)) {
 		if (w[0] == '/') {

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multipath problem [zero Block multipath device creation with mdadm 1.8.1]
  2004-11-23 20:16 ` Luca Berra
@ 2004-11-25  9:43   ` Oliver Heinz
  0 siblings, 0 replies; 4+ messages in thread
From: Oliver Heinz @ 2004-11-25  9:43 UTC (permalink / raw)
  Cc: linux-raid

Luca Berra schrieb:

> On Tue, Nov 23, 2004 at 01:19:51PM +0100, Oliver Heinz wrote:
>
>> Mixing mdadm-1.6 and 1.8.1 for creating/managing the device doesn't 
>> work, it gives me an segfault.
>
>
> try patching mdadm-1.8.1 with this patch, it might help with the
> segfault.

This works! Thanks a lot!

Now creating the md-device with versions prior 1.8.1 works (I tested 
1.60 and 1.8.0) - restarting the array with them fails.
With 1.8.1 (with patch applied) I get an 0 Block device created bit I 
can restart the (correct) device I created with 1.60.

Now of course it would be great to get the device created and restarted 
with the same utility. We'd like to use it in production environment 
here, can more experienced mdadm users recommend that, these problems  
did not really strengthen our confidence in mdadm (at least when it 
comes to multipath, we have (of course) been using mdadm successfully 
for raid on severall systems).

Are the code changes in 1.8.1 so drastic that you would recommend to 
stick with prior versions and fix the issue with starting the array or 
would you suggest to get 1.8.1 to get MD creation in 1.8.1 fixed (well 
it need's to be fixed anyway ;-).

Bye,
Oliver


>
>
>------------------------------------------------------------------------
>
>--- mdadm-1.8.1/mdadm.c.bluca	2004-11-14 19:44:26.000000000 +0100
>+++ mdadm-1.8.1/mdadm.c	2004-11-14 19:44:31.747309097 +0100
>@@ -80,11 +80,10 @@
> 
> 	int mdfd = -1;
> 
>-	ident.uuid_set=0;
>+	memset(&ident,0,sizeof(struct mddev_ident_s));
> 	ident.level = UnSet;
> 	ident.raid_disks = UnSet;
> 	ident.super_minor= UnSet;
>-	ident.devices=0;
> 
> 	while ((option_index = -1) ,
> 	       (opt=getopt_long(argc, argv,
>--- mdadm-1.8.1/config.c.bluca	2004-11-02 06:11:06.000000000 +0100
>+++ mdadm-1.8.1/config.c	2004-11-14 19:44:35.693660204 +0100
>@@ -266,15 +266,11 @@
> 	struct mddev_ident_s mis;
> 	mddev_ident_t mi;
> 
>-	mis.uuid_set = 0;
>+	memset(&mis,0,sizeof(struct mddev_ident_s));
> 	mis.super_minor = UnSet;
> 	mis.level = UnSet;
> 	mis.raid_disks = UnSet;
> 	mis.spare_disks = UnSet;
>-	mis.devices = NULL;
>-	mis.devname = NULL;
>-	mis.spare_group = NULL;
>-	mis.autof = 0;
> 
> 	for (w=dl_next(line); w!=line; w=dl_next(w)) {
> 		if (w[0] == '/') {
>  
>
.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multipath problem
  2004-11-23 12:19 Multipath problem Oliver Heinz
  2004-11-23 20:16 ` Luca Berra
@ 2004-11-30  2:44 ` Neil Brown
  1 sibling, 0 replies; 4+ messages in thread
From: Neil Brown @ 2004-11-30  2:44 UTC (permalink / raw)
  To: Oliver Heinz; +Cc: linux-raid

On Tuesday November 23, oheinz@fbihome.de wrote:
> Hi,
> 
> I'm trying to setup a HP packaged cluster (2xDL380G4 Servers +MA500G2 
> Storage) both Servers  are connected via 2 SCSI-Links one for each of 
> the storages's redundancy controllers.
> The Storage shows as /dev/cciss/c0d1 and /dev/cciss/c1d0. When I create 
> an multipath md device with version 1.6 of mdadm I can create it but 
> restarting the array after I stopped it fails. With version 1.8.2 the 
> size of the generated Array is 0 Blocks but I can restart it (which buys 
> me nothing with that size ;-)
> 
> Mixing mdadm-1.6 and 1.8.1 for creating/managing the device doesn't 
> work, it gives me an segfault.

mdadm 1.8.0 is the version I would recommend.  1.8.1 is a development
release.

> server-b:/usr/src/packages# mdadm -A /dev/md0 -f /dev/cciss/c1d0 
> /dev/cciss/c0d1
> mdadm: failed to RUN_ARRAY /dev/md0: Invalid argument
> 

If this still happens with 1.8.0, could you see if there are any
messages in the kernel log (e.g. output of 'dmesg'), and send them to
me.

Thanks,
NeilBrown

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-11-30  2:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-11-23 12:19 Multipath problem Oliver Heinz
2004-11-23 20:16 ` Luca Berra
2004-11-25  9:43   ` Multipath problem [zero Block multipath device creation with mdadm 1.8.1] Oliver Heinz
2004-11-30  2:44 ` Multipath problem Neil Brown

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).