]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 Jun 2014 22:30:43 +0000 (15:30 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 Jun 2014 22:30:43 +0000 (15:30 -0700)
added patches:
iser-target-fix-multi-network-portal-shutdown-regression.patch
target-allow-read_capacity-opcode-in-alua-standby-access-state.patch

queue-3.14/iser-target-fix-multi-network-portal-shutdown-regression.patch [new file with mode: 0644]
queue-3.14/series
queue-3.14/target-allow-read_capacity-opcode-in-alua-standby-access-state.patch [new file with mode: 0644]

diff --git a/queue-3.14/iser-target-fix-multi-network-portal-shutdown-regression.patch b/queue-3.14/iser-target-fix-multi-network-portal-shutdown-regression.patch
new file mode 100644 (file)
index 0000000..d3731c5
--- /dev/null
@@ -0,0 +1,60 @@
+From 2363d196686e44c0158929e7cf96c8589a24a81b Mon Sep 17 00:00:00 2001
+From: Nicholas Bellinger <nab@linux-iscsi.org>
+Date: Tue, 3 Jun 2014 18:27:52 -0700
+Subject: iser-target: Fix multi network portal shutdown regression
+
+From: Nicholas Bellinger <nab@linux-iscsi.org>
+
+commit 2363d196686e44c0158929e7cf96c8589a24a81b upstream.
+
+This patch fixes a iser-target specific regression introduced in
+v3.15-rc6 with:
+
+commit 14f4b54fe38f3a8f8392a50b951c8aa43b63687a
+Author: Sagi Grimberg <sagig@mellanox.com>
+Date:   Tue Apr 29 13:13:47 2014 +0300
+
+    Target/iscsi,iser: Avoid accepting transport connections during stop stage
+
+where the change to set iscsi_np->enabled = false within
+iscsit_clear_tpg_np_login_thread() meant that a iscsi_np with
+two iscsi_tpg_np exports would have it's parent iscsi_np set
+to a disabled state, even if other iscsi_tpg_np exports still
+existed.
+
+This patch changes iscsit_clear_tpg_np_login_thread() to only
+set iscsi_np->enabled = false when shutdown = true, and also
+changes iscsit_del_np() to set iscsi_np->enabled = true when
+iscsi_np->np_exports is non zero.
+
+Cc: Sagi Grimberg <sagig@dev.mellanox.co.il>
+Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/target/iscsi/iscsi_target.c     |    1 +
+ drivers/target/iscsi/iscsi_target_tpg.c |    3 ++-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+--- a/drivers/target/iscsi/iscsi_target.c
++++ b/drivers/target/iscsi/iscsi_target.c
+@@ -460,6 +460,7 @@ int iscsit_del_np(struct iscsi_np *np)
+       spin_lock_bh(&np->np_thread_lock);
+       np->np_exports--;
+       if (np->np_exports) {
++              np->enabled = true;
+               spin_unlock_bh(&np->np_thread_lock);
+               return 0;
+       }
+--- a/drivers/target/iscsi/iscsi_target_tpg.c
++++ b/drivers/target/iscsi/iscsi_target_tpg.c
+@@ -184,7 +184,8 @@ static void iscsit_clear_tpg_np_login_th
+               return;
+       }
+-      tpg_np->tpg_np->enabled = false;
++      if (shutdown)
++              tpg_np->tpg_np->enabled = false;
+       iscsit_reset_np_thread(tpg_np->tpg_np, tpg_np, tpg, shutdown);
+ }
index 581986c4bdd2c6b2477c68d83b0f3c556618d4d6..703fc58f1b26e100b5ec2e53aabb096e3eb535c9 100644 (file)
@@ -2,3 +2,5 @@ fs-userns-change-inode_capable-to-capable_wrt_inode_uidgid.patch
 netfilter-ipv4-defrag-set-local_df-flag-on-defragmented-skb.patch
 mips-asm-thread_info-add-_tif_seccomp-flag.patch
 target-iscsi-iser-avoid-accepting-transport-connections-during-stop-stage.patch
+iser-target-fix-multi-network-portal-shutdown-regression.patch
+target-allow-read_capacity-opcode-in-alua-standby-access-state.patch
diff --git a/queue-3.14/target-allow-read_capacity-opcode-in-alua-standby-access-state.patch b/queue-3.14/target-allow-read_capacity-opcode-in-alua-standby-access-state.patch
new file mode 100644 (file)
index 0000000..d99fcf6
--- /dev/null
@@ -0,0 +1,52 @@
+From e7810c2d2c37fa8e58dda74b00790dab60fe6fba Mon Sep 17 00:00:00 2001
+From: Nicholas Bellinger <nab@linux-iscsi.org>
+Date: Thu, 5 Jun 2014 23:37:00 -0700
+Subject: target: Allow READ_CAPACITY opcode in ALUA Standby access state
+
+From: Nicholas Bellinger <nab@linux-iscsi.org>
+
+commit e7810c2d2c37fa8e58dda74b00790dab60fe6fba upstream.
+
+This patch allows READ_CAPACITY + SAI_READ_CAPACITY_16 opcode
+processing to occur while the associated ALUA group is in Standby
+access state.
+
+This is required to avoid host side LUN probe failures during the
+initial scan if an ALUA group has already implicitly changed into
+Standby access state.
+
+This addresses a bug reported by Chris + Philip using dm-multipath
++ ESX hosts configured with ALUA multipath.
+
+(Drop v3.15 specific set_ascq usage - nab)
+
+Reported-by: Chris Boot <crb@tiger-computing.co.uk>
+Reported-by: Philip Gaw <pgaw@darktech.org.uk>
+Cc: Chris Boot <crb@tiger-computing.co.uk>
+Cc: Philip Gaw <pgaw@darktech.org.uk>
+Cc: Hannes Reinecke <hare@suse.de>
+Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/target/target_core_alua.c |    9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+--- a/drivers/target/target_core_alua.c
++++ b/drivers/target/target_core_alua.c
+@@ -564,7 +564,16 @@ static inline int core_alua_state_standb
+       case REPORT_LUNS:
+       case RECEIVE_DIAGNOSTIC:
+       case SEND_DIAGNOSTIC:
++      case READ_CAPACITY:
+               return 0;
++      case SERVICE_ACTION_IN:
++              switch (cdb[1] & 0x1f) {
++              case SAI_READ_CAPACITY_16:
++                      return 0;
++              default:
++                      *alua_ascq = ASCQ_04H_ALUA_TG_PT_STANDBY;
++                      return 1;
++              }
+       case MAINTENANCE_IN:
+               switch (cdb[1] & 0x1f) {
+               case MI_REPORT_TARGET_PGS: