summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_def.h
diff options
context:
space:
mode:
authorGiridhar Malavali <giridhar.malavali@qlogic.com>2010-05-28 15:08:18 -0700
committerJames Bottomley <James.Bottomley@suse.de>2010-07-27 12:01:20 -0500
commit083a469db4ecf3b286a96b5b722c37fc1affe0be (patch)
treeaa9aef39e8933b5cc75e3af5a5d63352bb7e2776 /drivers/scsi/qla2xxx/qla_def.h
parent7e2b895b93db603ac3462175baa846ebf1be44da (diff)
downloadlinux-083a469db4ecf3b286a96b5b722c37fc1affe0be.tar.gz
linux-083a469db4ecf3b286a96b5b722c37fc1affe0be.tar.bz2
linux-083a469db4ecf3b286a96b5b722c37fc1affe0be.zip
[SCSI] qla2xxx: Correct use-after-free oops seen during EH-abort.
Hold a reference to the srb (sp) while aborting an I/O -- as the I/O can/will complete from within the interrupt-context. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_def.h')
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h
index 839610909018..f8239bff0924 100644
--- a/drivers/scsi/qla2xxx/qla_def.h
+++ b/drivers/scsi/qla2xxx/qla_def.h
@@ -202,6 +202,7 @@ struct sd_dif_tuple {
* SCSI Request Block
*/
typedef struct srb {
+ atomic_t ref_count;
struct fc_port *fcport;
uint32_t handle;