[kernel] r19440 - in dists/sid/linux/debian: . patches patches/bugfix/x86
Ben Hutchings
benh at alioth.debian.org
Sun Oct 21 02:43:36 UTC 2012
Author: benh
Date: Sun Oct 21 02:43:35 2012
New Revision: 19440
Log:
[x86] storvsc: Account for in-transit packets in the RESET path
Added:
dists/sid/linux/debian/patches/bugfix/x86/SCSI-storvsc-Account-for-in-transit-packets-in-the-R.patch
Modified:
dists/sid/linux/debian/changelog
dists/sid/linux/debian/patches/series
Modified: dists/sid/linux/debian/changelog
==============================================================================
--- dists/sid/linux/debian/changelog Sat Oct 20 06:00:02 2012 (r19439)
+++ dists/sid/linux/debian/changelog Sun Oct 21 02:43:35 2012 (r19440)
@@ -93,6 +93,7 @@
- rt: rwsem/rwlock: lockdep annotations
- sched: Better debug output for might sleep
- stomp_machine: Use mutex_trylock when called from inactive cpu
+ * [x86] storvsc: Account for in-transit packets in the RESET path
-- Ben Hutchings <ben at decadent.org.uk> Sat, 29 Sep 2012 14:19:46 +0200
Added: dists/sid/linux/debian/patches/bugfix/x86/SCSI-storvsc-Account-for-in-transit-packets-in-the-R.patch
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/sid/linux/debian/patches/bugfix/x86/SCSI-storvsc-Account-for-in-transit-packets-in-the-R.patch Sun Oct 21 02:43:35 2012 (r19440)
@@ -0,0 +1,35 @@
+From: "K. Y. Srinivasan" <kys at microsoft.com>
+Date: Tue, 2 Oct 2012 11:03:31 -0700
+Subject: [SCSI] storvsc: Account for in-transit packets in the RESET path
+
+commit 5c1b10ab7f93d24f29b5630286e323d1c5802d5c upstream.
+
+Properly account for I/O in transit before returning from the RESET call.
+In the absense of this patch, we could have a situation where the host may
+respond to a command that was issued prior to the issuance of the RESET
+command at some arbitrary time after responding to the RESET command.
+Currently, the host does not do anything with the RESET command.
+
+Signed-off-by: K. Y. Srinivasan <kys at microsoft.com>
+Signed-off-by: James Bottomley <JBottomley at Parallels.com>
+---
+ drivers/scsi/storvsc_drv.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c
+index 528d52b..0144078 100644
+--- a/drivers/scsi/storvsc_drv.c
++++ b/drivers/scsi/storvsc_drv.c
+@@ -1221,7 +1221,12 @@ static int storvsc_host_reset_handler(struct scsi_cmnd *scmnd)
+ /*
+ * At this point, all outstanding requests in the adapter
+ * should have been flushed out and return to us
++ * There is a potential race here where the host may be in
++ * the process of responding when we return from here.
++ * Just wait for all in-transit packets to be accounted for
++ * before we return from here.
+ */
++ storvsc_wait_to_drain(stor_device);
+
+ return SUCCESS;
+ }
Modified: dists/sid/linux/debian/patches/series
==============================================================================
--- dists/sid/linux/debian/patches/series Sat Oct 20 06:00:02 2012 (r19439)
+++ dists/sid/linux/debian/patches/series Sun Oct 21 02:43:35 2012 (r19440)
@@ -401,3 +401,4 @@
debian/iwlwifi-do-not-request-unreleased-firmware.patch
debian/hid-avoid-ABI-change-in-3.2.31.patch
debian/xfrm-avoid-ABI-change-in-3.2.31.patch
+bugfix/x86/SCSI-storvsc-Account-for-in-transit-packets-in-the-R.patch
More information about the Kernel-svn-changes
mailing list