multipath: changes to NetApp's prioritizer
Benjamin Marzinski
maintainerPATCH 1/1 multipath: changes to NetApp's prioritizer
This is a patch sent to me by Martin George from NetApp. It changes the prioriziter name from netapp to ontap, and adds some minor enchancements to the prioritizer. I can send another patch to change the file names to match, but that makes it harder to see the full file history in git.
--- libmultipath/hwtable.c | 4 +-- libmultipath/prio.h | 2 - libmultipath/prioritizers/Makefile | 5 +++- libmultipath/prioritizers/netapp.c | 44 +++++++++++++++++++------------------ multipath.conf.defaults | 4 +-- multipath/multipath.conf.5 | 2 - 6 files changed, 33 insertions(+), 28 deletions(-)
libmultipath/hwtable.c +2 -2
@@ -903,7 +903,7 @@ static struct hwentry default_hw[] = { .no_path_retry = NO_PATH_RETRY_UNDEF, .minio = 128, .checker_name = DIRECTIO, - .prio_name = PRIO_NETAPP, + .prio_name = PRIO_ONTAP, .prio_args = NULL, },/*
@@ -947,7 +947,7 @@ static struct hwentry default_hw[] = { .no_path_retry = NO_PATH_RETRY_UNDEF, .minio = 128, .checker_name = DIRECTIO, - .prio_name = PRIO_NETAPP, + .prio_name = PRIO_ONTAP, .prio_args = NULL, },/*
libmultipath/prio.h +1 -1
@@ -21,7 +21,7 @@#define PRIO_EMC "emc"#define PRIO_HDS "hds"#define PRIO_HP_SW "hp_sw" -#define PRIO_NETAPP "netapp" +#define PRIO_ONTAP "ontap"#define PRIO_RANDOM "random"#define PRIO_RDAC "rdac"#define PRIO_DATACORE "datacore"
libmultipath/prioritizers/Makefile +4 -1
@@ -11,7 +11,7 @@ LIBS = \ libprioemc.so \ libpriordac.so \ libprioalua.so \ - libprionetapp.so \ + libprioontap.so \ libpriodatacore.so \ libpriohds.so
@@ -22,6 +22,9 @@ all: $(LIBS) libprioalua.so: alua.o alua_rtpg.o $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^ +libprioontap.so: netapp.o + $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^ + libprio%.so: %.o $(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
libmultipath/prioritizers/netapp.c +23 -21
134 lines not on this page · raw message
multipath.conf.defaults +2 -2
@@ -503,7 +503,7 @@ # rr_weight uniform # rr_min_io 128 # path_checker directio -# prio netapp +# prio ontap # prio_args "" # } # device {
@@ -534,7 +534,7 @@ # rr_weight uniform # rr_min_io 128 # path_checker directio -# prio netapp +# prio ontap # prio_args "" # } # device {
multipath/multipath.conf.5 +1 -1
@@ -150,7 +150,7 @@ Generate the path priority for EMC array .B mpath_prio_alua /dev/%n Generate the path priority based on the SCSI-3 ALUA settings. .TP -.B mpath_prio_netapp /dev/%n +.B mpath_prio_ontap /dev/%n Generate the path priority for NetApp arrays. .TP .B mpath_prio_rdac /dev/%n
Christophe Varoqui
AppliedQuoted 1 line · Benjamin Marzinski
This is a patch sent to me by Martin George from NetApp.
Applied.
Quoted 4 lines
It changes the
prioriziter name from netapp to ontap, and adds some minor enchancements to the prioritizer. I can send another patch to change the file names to match, but that makes it harder to see the full file history in git.
Yes, the files rename is welcome too.
Signature · 3 lines
Christophe Varoqui OpenSVC - Software to scale http://www.opensvc.com/
which version of multipath?
my invironment is fedora12 multipath 0.4.9. multibus for netapp there is not improvment in throughput?
thanks
Quoted 21 lines · At 2011-04-25 19:48:25,"Christophe Varoqui" <[email protected]>…
Quoted 1 line · Benjamin Marzinski
This is a patch sent to me by Martin George from NetApp.
Applied.
Quoted 4 lines
It changes the
prioriziter name from netapp to ontap, and adds some minor enchancements to the prioritizer. I can send another patch to change the file names to match, but that makes it harder to see the full file history in git.Yes, the files rename is welcome too.
Signature · 8 lines
Christophe Varoqui OpenSVC - Software to scale http://www.opensvc.com/ -- dm-devel mailing list [email protected] https://www.redhat.com/mailman/listinfo/dm-devel
Quoted 1 line · yue
which version of multipath?
upstream. you'd have to compile the multipath-tools git head from git.kernel.org to test.
Quoted 2 lines
my invironment is fedora12 multipath 0.4.9. multibus for netapp there is not improvment in throughput?
don't get you expectation too high though ... this patch is only a rename from 'netapp' to 'ontap'. I can see no fonctional change except:
@@ -194,14 +194,14 @@ static int netapp_prio(const char *dev, int fd)
memset(&results, 0, sizeof (results));
rc = send_gva(dev, fd, 0x41, results, &results_size);
- if (rc == 0) {
+ if (rc >= 0) {
tot_len = results[0] << 24 | results[1] << 16 |
results[2] << 8 | results[3];
if (tot_len <= 8) {