Hi Christophe, Happy New Year! 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. thanks fil 1. I have tried applying the patch set against fedora 16 multipath-tools srpm and it failed miserably. 2. I pulled multipath-tools from opensvc git and that patching failed too, so I had to apply all the patches manually. 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@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel