[dm-devel] mpathpersist

Christophe Varoqui christophe.varoqui at gmail.com
Sat Dec 31 14:00:15 UTC 2011


> I have seen your set of patches for persistent reservation of multipath
> devices and wanted to try them out. While trying this patch set I have
> run into several issues. Which code base can I apply this against? Any
> help would be greatly appreciated. Issues are listed below.

This patchset has been developped by Netapp's Vijay Chauhan.

> 2. I pulled multipath-tools from opensvc git and that patching failed
> too, so I had to apply all the patches manually.
> 
This is the correct project repository. The patchset may need rebasing
over the HEAD. If it does not apply cleanly there, you might try to
revert to a previous commit.

I'll try this patchset soon and compare my experience with your
observations.

Thanks for the report.

> 3. while testing mppersist I get following error:
> 
> mpathpersist --out --register --param-sark=123abc --prout-type=8
> /dev/mapper/blah -v 4
> Dec 31 00:54:29 | alias = blah
> Dec 31 00:54:29 | params = 0 0 1 1 round-robin 0 2 1 8:0 1 8:16 1
> Dec 31 00:54:29 | status = 2 0 0 0 1 1 A 0 2 0 8:0 A 0 8:16 A 0
> Dec 31 00:54:29 | blah: disassemble map [0 0 1 1 round-robin 0 2 1 8:0 1
> 8:16 1 ]
> Dec 31 00:54:29 | 8:0: not found in pathvec
> Dec 31 00:54:29 | 8:16: not found in pathvec
> Dec 31 00:54:29 | No device found for 8:0
> 
> Dec 31 00:54:29 | No device found for 8:16
> 
> Dec 31 00:54:29 | blah: disassemble status [2 0 0 0 1 1 A 0 2 0 8:0 A 0
> 8:16 A 0 ]
> Dec 31 00:54:29 | 36001405c55fc03cd8193d491eda0d4d7: no path available
> PR out: command failed
> 
> 4. with all patches applied, all multipathd cli commands crash the daemon.
> 
> here are my configs:
> 
> cat /etc/multipath.conf
> defaults {
> 	user_friendly_names	yes
> 	polling_interval	10
> }
> 
> multipaths {
> 	multipath {
> 		wwid			36001405c55fc03cd8193d491eda0d4d7
> 		alias			blah
> 	}
> }
> 
> 
> devices {
> 	device {
> 		vendor			"QNAP"
> 		product			"iSCSI Storage"
> 		path_selector		"round-robin 0"
> 		path_grouping_policy	multibus
> 		getuid_callout          "/lib/udev/scsi_id -g -u -d /dev/%n"
> 		path_checker		directio
> 		failback		immediate
> 	}
> 
> }
> 
> blacklist {
>         devnode "^(vd)[a-z]"
> }
> 
> multipath -ll -v3
> Dec 31 00:59:01 | loading /lib64/multipath/libcheckdirectio.so checker
> Dec 31 00:59:01 | loading /lib64/multipath/libprioconst.so prioritizer
> Dec 31 00:59:01 | loop0: device node name blacklisted
> Dec 31 00:59:01 | loop1: device node name blacklisted
> Dec 31 00:59:01 | loop2: device node name blacklisted
> Dec 31 00:59:01 | loop3: device node name blacklisted
> Dec 31 00:59:01 | loop4: device node name blacklisted
> Dec 31 00:59:01 | loop5: device node name blacklisted
> Dec 31 00:59:01 | loop6: device node name blacklisted
> Dec 31 00:59:01 | loop7: device node name blacklisted
> Dec 31 00:59:01 | vda: device node name blacklisted
> Dec 31 00:59:01 | dm-0: device node name blacklisted
> Dec 31 00:59:01 | dm-1: device node name blacklisted
> Dec 31 00:59:01 | dm-2: device node name blacklisted
> Dec 31 00:59:01 | dm-3: device node name blacklisted
> Dec 31 00:59:01 | sda: not found in pathvec
> Dec 31 00:59:01 | sda: mask = 0x5
> Dec 31 00:59:01 | sda: dev_t = 8:0
> Dec 31 00:59:01 | sda: size = 20971520
> Dec 31 00:59:01 | sda: vendor = QNAP
> Dec 31 00:59:01 | sda: product = iSCSI Storage
> Dec 31 00:59:01 | sda: rev = 3.1
> Dec 31 00:59:01 | sda: h:b:t:l = 2:0:0:0
> Dec 31 00:59:01 | sda: path state = running
> Dec 31 00:59:01 | sda: get_state
> Dec 31 00:59:01 | sda: path checker = directio (controller setting)
> Dec 31 00:59:01 | sda: checker timeout = 30000 ms (sysfs setting)
> Dec 31 00:59:01 | directio: starting new request
> Dec 31 00:59:01 | directio: io finished 4096/0
> Dec 31 00:59:01 | sda: state = up
> Dec 31 00:59:01 | sdb: not found in pathvec
> Dec 31 00:59:01 | sdb: mask = 0x5
> Dec 31 00:59:01 | sdb: dev_t = 8:16
> Dec 31 00:59:01 | sdb: size = 20971520
> Dec 31 00:59:01 | sdb: vendor = QNAP
> Dec 31 00:59:01 | sdb: product = iSCSI Storage
> Dec 31 00:59:01 | sdb: rev = 3.1
> Dec 31 00:59:01 | sdb: h:b:t:l = 3:0:0:0
> Dec 31 00:59:01 | sdb: path state = running
> Dec 31 00:59:01 | sdb: get_state
> Dec 31 00:59:01 | sdb: path checker = directio (controller setting)
> Dec 31 00:59:01 | sdb: checker timeout = 30000 ms (sysfs setting)
> Dec 31 00:59:01 | directio: starting new request
> Dec 31 00:59:01 | directio: io finished 4096/0
> Dec 31 00:59:01 | sdb: state = up
> Dec 31 00:59:01 | dm-4: device node name blacklisted
> ===== paths list =====
> uuid hcil    dev dev_t pri dm_st chk_st vend/prod/rev      dev_st
>      2:0:0:0 sda 8:0   -1  undef ready  QNAP,iSCSI Storage running
>      3:0:0:0 sdb 8:16  -1  undef ready  QNAP,iSCSI Storage running
> Dec 31 00:59:01 | params = 0 0 1 1 round-robin 0 2 1 8:0 1 8:16 1
> Dec 31 00:59:01 | status = 2 0 0 0 1 1 A 0 2 0 8:0 A 0 8:16 A 0
> Dec 31 00:59:01 | blah: disassemble map [0 0 1 1 round-robin 0 2 1 8:0 1
> 8:16 1 ]
> Dec 31 00:59:01 | sda: mask = 0x8
> Dec 31 00:59:01 | sda: path state = running
> Dec 31 00:59:01 | sda: prio = const (internal default)
> Dec 31 00:59:01 | sda: prio =  (internal default)
> Dec 31 00:59:01 | sda: const prio = 1
> Dec 31 00:59:01 | sdb: mask = 0x8
> Dec 31 00:59:01 | sdb: path state = running
> Dec 31 00:59:01 | sdb: prio = const (internal default)
> Dec 31 00:59:01 | sdb: prio =  (internal default)
> Dec 31 00:59:01 | sdb: const prio = 1
> Dec 31 00:59:01 | blah: disassemble status [2 0 0 0 1 1 A 0 2 0 8:0 A 0
> 8:16 A 0 ]
> blah (36001405c55fc03cd8193d491eda0d4d7) dm-4 QNAP,iSCSI Storage
> size=10G features='0' hwhandler='0' wp=rw
> `-+- policy='round-robin 0' prio=0 status=active
>   |- 2:0:0:0 sda 8:0  active ready running
>   `- 3:0:0:0 sdb 8:16 active ready running
> Dec 31 00:59:01 | directio checker refcount 2
> Dec 31 00:59:01 | directio checker refcount 1
> Dec 31 00:59:01 | unloading const prioritizer
> Dec 31 00:59:01 | unloading directio checker
> 
> --
> dm-devel mailing list
> dm-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/dm-devel






More information about the dm-devel mailing list