]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.11-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Sep 2013 15:56:23 +0000 (08:56 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Sep 2013 15:56:23 +0000 (08:56 -0700)
added patches:
target-fix-trailing-ascii-space-usage-in-inquiry-vendor-model.patch

queue-3.11/series [new file with mode: 0644]
queue-3.11/target-fix-trailing-ascii-space-usage-in-inquiry-vendor-model.patch [new file with mode: 0644]

diff --git a/queue-3.11/series b/queue-3.11/series
new file mode 100644 (file)
index 0000000..9cec4cb
--- /dev/null
@@ -0,0 +1 @@
+target-fix-trailing-ascii-space-usage-in-inquiry-vendor-model.patch
diff --git a/queue-3.11/target-fix-trailing-ascii-space-usage-in-inquiry-vendor-model.patch b/queue-3.11/target-fix-trailing-ascii-space-usage-in-inquiry-vendor-model.patch
new file mode 100644 (file)
index 0000000..725c248
--- /dev/null
@@ -0,0 +1,44 @@
+From ee60bddba5a5f23e39598195d944aa0eb2d455e5 Mon Sep 17 00:00:00 2001
+From: Nicholas Bellinger <nab@linux-iscsi.org>
+Date: Wed, 24 Jul 2013 16:15:08 -0700
+Subject: target: Fix trailing ASCII space usage in INQUIRY vendor+model
+
+From: Nicholas Bellinger <nab@linux-iscsi.org>
+
+commit ee60bddba5a5f23e39598195d944aa0eb2d455e5 upstream.
+
+This patch fixes spc_emulate_inquiry_std() to add trailing ASCII
+spaces for INQUIRY vendor + model fields following SPC-4 text:
+
+  "ASCII data fields described as being left-aligned shall have any
+   unused bytes at the end of the field (i.e., highest offset) and
+   the unused bytes shall be filled with ASCII space characters (20h)."
+
+This addresses a problem with Falconstor NSS multipathing.
+
+Reported-by: Tomas Molota <tomas.molota@lightstorm.sk>
+Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/target/target_core_spc.c |    9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+--- a/drivers/target/target_core_spc.c
++++ b/drivers/target/target_core_spc.c
+@@ -97,9 +97,12 @@ spc_emulate_inquiry_std(struct se_cmd *c
+       buf[7] = 0x2; /* CmdQue=1 */
+-      snprintf(&buf[8], 8, "LIO-ORG");
+-      snprintf(&buf[16], 16, "%s", dev->t10_wwn.model);
+-      snprintf(&buf[32], 4, "%s", dev->t10_wwn.revision);
++      memcpy(&buf[8], "LIO-ORG ", 8);
++      memset(&buf[16], 0x20, 16);
++      memcpy(&buf[16], dev->t10_wwn.model,
++             min_t(size_t, strlen(dev->t10_wwn.model), 16));
++      memcpy(&buf[32], dev->t10_wwn.revision,
++             min_t(size_t, strlen(dev->t10_wwn.revision), 4));
+       buf[4] = 31; /* Set additional length to 31 */
+       return 0;