From c0e19331fbfeac8e333b1ed570514ebb687c265c Mon Sep 17 00:00:00 2001 From: Josh Boyer Date: Mon, 23 Jan 2012 09:41:28 -0500 Subject: [PATCH] Fix NULL pointer dereference in sym53c8xx module (rhbz 781625) --- ...ix-NULL-pointer-dereference-in-slave.patch | 35 +++++++++++++++++++ kernel.spec | 9 +++++ 2 files changed, 44 insertions(+) create mode 100644 SCSI-sym53c8xx-Fix-NULL-pointer-dereference-in-slave.patch diff --git a/SCSI-sym53c8xx-Fix-NULL-pointer-dereference-in-slave.patch b/SCSI-sym53c8xx-Fix-NULL-pointer-dereference-in-slave.patch new file mode 100644 index 000000000..369012744 --- /dev/null +++ b/SCSI-sym53c8xx-Fix-NULL-pointer-dereference-in-slave.patch @@ -0,0 +1,35 @@ +From cced5041ed5a2d1352186510944b0ddfbdbe4c0b Mon Sep 17 00:00:00 2001 +From: Stratos Psomadakis +Date: Sun, 4 Dec 2011 02:23:54 +0200 +Subject: [PATCH] [SCSI] sym53c8xx: Fix NULL pointer dereference in + slave_destroy + +sym53c8xx_slave_destroy unconditionally assumes that sym53c8xx_slave_alloc has +succesesfully allocated a sym_lcb. This can lead to a NULL pointer dereference +(exposed by commit 4e6c82b). + +Signed-off-by: Stratos Psomadakis +Cc: stable@vger.kernel.org +Signed-off-by: James Bottomley +--- + drivers/scsi/sym53c8xx_2/sym_glue.c | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/drivers/scsi/sym53c8xx_2/sym_glue.c b/drivers/scsi/sym53c8xx_2/sym_glue.c +index b4543f5..36d1ed7 100644 +--- a/drivers/scsi/sym53c8xx_2/sym_glue.c ++++ b/drivers/scsi/sym53c8xx_2/sym_glue.c +@@ -839,6 +839,10 @@ static void sym53c8xx_slave_destroy(struct scsi_device *sdev) + struct sym_lcb *lp = sym_lp(tp, sdev->lun); + unsigned long flags; + ++ /* if slave_alloc returned before allocating a sym_lcb, return */ ++ if (!lp) ++ return; ++ + spin_lock_irqsave(np->s.host->host_lock, flags); + + if (lp->busy_itlq || lp->busy_itl) { +-- +1.7.7.5 + diff --git a/kernel.spec b/kernel.spec index bb7caacf9..07761f6cc 100644 --- a/kernel.spec +++ b/kernel.spec @@ -749,6 +749,9 @@ Patch21225: pci-Rework-ASPM-disable-code.patch Patch21227: mac80211-fix-work-removal-on-deauth-request.patch +#rhbz 781625 +Patch21228: SCSI-sym53c8xx-Fix-NULL-pointer-dereference-in-slave.patch + #rhbz #757839 Patch21230: net-sky2-88e8059-fix-link-speed.patch @@ -1395,6 +1398,9 @@ ApplyPatch proc-clean-up-and-fix-proc-pid-mem-handling.patch #rhbz 782687 ApplyPatch loop-prevent-information-leak-after-failed-read.patch +#rhbz 781625 +ApplyPatch SCSI-sym53c8xx-Fix-NULL-pointer-dereference-in-slave.patch + # END OF PATCH APPLICATIONS %endif @@ -2042,6 +2048,9 @@ fi # and build. %changelog +* Mon Jan 23 2012 Josh Boyer +- Fix NULL pointer dereference in sym53c8xx module (rhbz 781625) + * Fri Jan 20 2012 Josh Boyer - Add mac80211 deauth fix pointed out by Stanislaw Gruszka