Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Kubecek <mkubecek@suse.cz>2013-05-31 14:18:00 +0200
committerMichal Kubecek <mkubecek@suse.cz>2013-05-31 14:18:00 +0200
commit497d098bcf8620b5fa54dfe2235fdc1d3e5fc51d (patch)
tree53eeda3c02c510402447a42dec27df0848d65c05
parent2d278d040a76f34d4ec79c1788d6926aa00a0ff9 (diff)
- patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch:
libfc: don't exch_done() on invalid sequence ptr (bnc#810722).
-rw-r--r--kernel-source.changes6
-rw-r--r--patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch39
-rw-r--r--series.conf1
3 files changed, 46 insertions, 0 deletions
diff --git a/kernel-source.changes b/kernel-source.changes
index 2097d855b2..dc2bdd0fc3 100644
--- a/kernel-source.changes
+++ b/kernel-source.changes
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Fri May 31 14:17:50 CEST 2013 - mkubecek@suse.cz
+
+- patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch:
+ libfc: don't exch_done() on invalid sequence ptr (bnc#810722).
+
+-------------------------------------------------------------------
Fri May 31 10:07:28 CEST 2013 - mkubecek@suse.cz
- patches.fixes/netfilter-ip6t_LOG-fix-logging-of-packet-mark.patch:
diff --git a/patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch b/patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch
new file mode 100644
index 0000000000..1a2edfce80
--- /dev/null
+++ b/patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch
@@ -0,0 +1,39 @@
+From: Yi Zou <yi.zou@intel.com>
+Date: Fri, 6 Jul 2012 10:40:26 -0700
+Subject: [SCSI] libfc: don't exch_done() on invalid sequence ptr
+Patch-mainline: v3.6-rc1
+Git-commit: db95fc004ea50f661a98c9f25585c0a734b5c238
+References: bnc#810722
+
+The lport_recv(), i.e., fc_lport_recv_req() may get called w/o the sequence ptr
+being set in fr_seq(), particularly in the case of vn2vn mode, this may happen
+if the passive fcp provider, e.g., tcm_fc, has not been registered yet.
+
+Signed-off-by: Yi Zou <yi.zou@intel.com>
+Tested-by: Ross Brattain <ross.b.brattain@intel.com>
+Signed-off-by: Robert Love <robert.w.love@intel.com>
+Signed-off-by: James Bottomley <JBottomley@Parallels.com>
+Acked-by: Michal Kubecek <mkubecek@suse.cz>
+
+(cherry picked from commit )
+---
+ drivers/scsi/libfc/fc_lport.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/scsi/libfc/fc_lport.c b/drivers/scsi/libfc/fc_lport.c
+index 2cb12b9..c6c7a4c 100644
+--- a/drivers/scsi/libfc/fc_lport.c
++++ b/drivers/scsi/libfc/fc_lport.c
+@@ -957,7 +957,8 @@ drop:
+ rcu_read_unlock();
+ FC_LPORT_DBG(lport, "dropping unexpected frame type %x\n", fh->fh_type);
+ fc_frame_free(fp);
+- lport->tt.exch_done(sp);
++ if (sp)
++ lport->tt.exch_done(sp);
+ }
+
+ /**
+--
+1.8.1.4
+
diff --git a/series.conf b/series.conf
index 571e3167c8..bdb96ce863 100644
--- a/series.conf
+++ b/series.conf
@@ -3106,6 +3106,7 @@
patches.fixes/fcoe-add-DCB-notifiers-to-set-skb-priority.patch
patches.fixes/fcoe-fix-regression-on-offload-em-matching-function
patches.drivers/fnic-fix-SGEs-limit.patch
+ patches.fixes/SCSI-libfc-don-t-exch_done-on-invalid-sequence-ptr.patch
########################################################
# Target mode infrastructure