Re: Multipath problem [zero Block multipath device creation with mdadm 1.8.1]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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] == '/') {


.
-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux