[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20100512225341.GA5695@bicker>
Date: Thu, 13 May 2010 00:53:41 +0200
From: Dan Carpenter <error27@...il.com>
To: "James E.J. Bottomley" <James.Bottomley@...e.de>
Cc: Tejun Heo <tj@...nel.org>, Vasu Dev <vasu.dev@...el.com>,
Mike Christie <michaelc@...wisc.edu>,
linux-scsi@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [patch] libsas: potential null dereference
The "sc" variable can potentially be null here, so we have to initialize
"q" later. This was introduced in: 70b25f890 "[SCSI] fix locking around
blk_abort_request()"
Signed-off-by: Dan Carpenter <error27@...il.com>
---
I appologize if I sent this already. I was having trouble with my email
earlier today and I don't see this in my gmail outbox.
diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c
index 8228350..96dc7d0 100644
--- a/drivers/scsi/libsas/sas_scsi_host.c
+++ b/drivers/scsi/libsas/sas_scsi_host.c
@@ -1030,7 +1030,7 @@ int __sas_task_abort(struct sas_task *task)
void sas_task_abort(struct sas_task *task)
{
struct scsi_cmnd *sc = task->uldd_task;
- struct request_queue *q = sc->device->request_queue;
+ struct request_queue *q;
unsigned long flags;
/* Escape for libsas internal commands */
@@ -1046,6 +1046,7 @@ void sas_task_abort(struct sas_task *task)
return;
}
+ q = sc->device->request_queue;
spin_lock_irqsave(q->queue_lock, flags);
blk_abort_request(sc->request);
spin_unlock_irqrestore(q->queue_lock, flags);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists