[kernel] r15579 - in dists/sid/linux-2.6/debian: . patches/bugfix/all patches/series
Maximilian Attems
maks at alioth.debian.org
Wed Apr 28 23:41:08 UTC 2010
Author: maks
Date: Wed Apr 28 23:41:05 2010
New Revision: 15579
Log:
add iscsi regression fix
Added:
dists/sid/linux-2.6/debian/patches/bugfix/all/libiscsi-regression-fix-header-digest-errors.patch
Modified:
dists/sid/linux-2.6/debian/changelog
dists/sid/linux-2.6/debian/patches/series/12
Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog Wed Apr 28 23:30:49 2010 (r15578)
+++ dists/sid/linux-2.6/debian/changelog Wed Apr 28 23:41:05 2010 (r15579)
@@ -56,6 +56,7 @@
* hugetlb: fix infinite loop in get_futex_key() when backed by huge pages
* ext4: Issue the discard operation *before* releasing the blocks to be
reused.
+ * libiscsi: regression: fix header digest errors.
[ dann frazier ]
* Add DRBD backport
Added: dists/sid/linux-2.6/debian/patches/bugfix/all/libiscsi-regression-fix-header-digest-errors.patch
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/sid/linux-2.6/debian/patches/bugfix/all/libiscsi-regression-fix-header-digest-errors.patch Wed Apr 28 23:41:05 2010 (r15579)
@@ -0,0 +1,49 @@
+From: michaelc at cs.wisc.edu
+To: linux-scsi at vger.kernel.org
+Cc: Mike Christie <michaelc at cs.wisc.edu>
+Subject: [PATCH] libiscsi: regression: fix header digest errors
+Date: Sat, 24 Apr 2010 16:21:19 -0500
+Message-Id: <1272144079-10494-1-git-send-email-michaelc at cs.wisc.edu>
+
+
+This fixes a regression introduced with this commit:
+d3305f3407fa3e9452079ec6cc8379067456e4aa
+in 2.6.32.
+
+When I moved the hdr->cmdsn after init_task, I added
+a bug when header digests are used. The problem is
+that the LLD may calculate the header digest in init_task,
+so if we then set the cmdsn after the init_task call we
+change what the digest will be calculated by the target.
+
+Signed-off-by: Mike Christie <michaelc at cs.wisc.edu>
+---
+ drivers/scsi/libiscsi.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
+index 6d5ae44..633e090 100644
+--- a/drivers/scsi/libiscsi.c
++++ b/drivers/scsi/libiscsi.c
+@@ -471,12 +471,12 @@ static int iscsi_prep_scsi_cmd_pdu(struct iscsi_task *task)
+
+ WARN_ON(hdrlength >= 256);
+ hdr->hlength = hdrlength & 0xFF;
++ hdr->cmdsn = task->cmdsn = cpu_to_be32(session->cmdsn);
+
+ if (session->tt->init_task && session->tt->init_task(task))
+ return -EIO;
+
+ task->state = ISCSI_TASK_RUNNING;
+- hdr->cmdsn = task->cmdsn = cpu_to_be32(session->cmdsn);
+ session->cmdsn++;
+
+ conn->scsicmd_pdus_cnt++;
+--
+1.6.6.1
+
+--
+To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
+the body of a message to majordomo at vger.kernel.org
+More majordomo info at http://vger.kernel.org/majordomo-info.html
+
Modified: dists/sid/linux-2.6/debian/patches/series/12
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/12 Wed Apr 28 23:30:49 2010 (r15578)
+++ dists/sid/linux-2.6/debian/patches/series/12 Wed Apr 28 23:41:05 2010 (r15579)
@@ -55,3 +55,4 @@
+ bugfix/all/core-x86-make-list_poison-less-deadly.patch
+ bugfix/all/hugetlb-fix-infinite-loop-in-get_futex_key-when-backed-by-huge-pages.patch
+ bugfix/all/ext4-issue-discard-operation-before-releasing-blocks.patch
++ bugfix/all/libiscsi-regression-fix-header-digest-errors.patch
More information about the Kernel-svn-changes
mailing list