From: "Ewan D. Milne" <emilne@xxxxxxxxxx> The call to schedule_work() in sdev_evt_send() should not be made while the sdev->list_lock is held. Signed-off-by: Ewan D. Milne <emilne@xxxxxxxxxx> --- drivers/scsi/scsi_lib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 97699a5..f871ecf 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c @@ -2255,8 +2255,8 @@ void sdev_evt_send(struct scsi_device *sdev, struct scsi_event *evt) spin_lock_irqsave(&sdev->list_lock, flags); list_add_tail(&evt->node, &sdev->event_list); - schedule_work(&sdev->event_work); spin_unlock_irqrestore(&sdev->list_lock, flags); + schedule_work(&sdev->event_work); } EXPORT_SYMBOL_GPL(sdev_evt_send); -- 1.7.11.7 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html