[PATCH 3/21] [libmultipath] Fixup EMC ALUA mode handling

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

 



Modern EMC machines support ALUA in addition to the vendor-specific
PNR (passive/not ready) method. Machines in ALUA mode will understand
PNR commands, too, so we only need to relax the check to operate
them correctly.

Signed-off-by: Ed Goggin <egoggin@xxxxxxxxxx>
Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
---
 libcheckers/emc_clariion.c    |    8 ++++++--
 path_priority/pp_emc/pp_emc.c |    8 ++++++--
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/libcheckers/emc_clariion.c b/libcheckers/emc_clariion.c
index 384a943..d801b42 100644
--- a/libcheckers/emc_clariion.c
+++ b/libcheckers/emc_clariion.c
@@ -129,8 +129,12 @@ int emc_clariion(struct checker * c)
 
 	if ( /* Effective initiator type */
 	    	sense_buffer[27] != 0x03
-		/* Failover mode should be set to 1 */        
-		|| (sense_buffer[28] & 0x07) != 0x04
+		/*
+		 * Failover mode should be set to 1 (PNR failover mode)
+		 * or 4 (ALUA failover mode).
+		 */
+		|| (((sense_buffer[28] & 0x07) != 0x04) &&
+		    ((sense_buffer[28] & 0x07) != 0x06))
 		/* Arraycommpath should be set to 1 */
 		|| (sense_buffer[30] & 0x04) != 0x04) {
 		MSG(c, "emc_clariion_checker: Path not correctly configured "
diff --git a/path_priority/pp_emc/pp_emc.c b/path_priority/pp_emc/pp_emc.c
index dd58424..4031720 100644
--- a/path_priority/pp_emc/pp_emc.c
+++ b/path_priority/pp_emc/pp_emc.c
@@ -60,8 +60,12 @@ int emc_clariion_prio(const char *dev)
 	
 	if ( /* Effective initiator type */
 	    	sense_buffer[27] != 0x03
-		/* Failover mode should be set to 1 */        
-		|| (sense_buffer[28] & 0x07) != 0x04
+		/*
+		 * Failover mode should be set to 1 (PNR failover mode)
+		 * or 4 (ALUA failover mode).
+		 */
+		|| (((sense_buffer[28] & 0x07) != 0x04) &&
+		    ((sense_buffer[28] & 0x07) != 0x06))
 		/* Arraycommpath should be set to 1 */
 		|| (sense_buffer[30] & 0x04) != 0x04) {
 		fprintf(stderr, "Path not correctly configured for failover");
-- 
1.4.3.4

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel

[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux