Messages in this thread Patch in this message | | | Date | Tue, 8 Nov 2011 12:36:23 +1100 | From | Anton Blanchard <> | Subject | [PATCH] [SCSI] scsi_alloc_sdev() trips WARN_ON in scsi_free_queue() |
| |
commit 3308511c93e6 ([SCSI] Make scsi_free_queue() kill pending SCSI commands) requires us to reset the queuedata pointer before calling scsi_free_queue.
Signed-off-by: Anton Blanchard <anton@samba.org> ---
Thanks for the tip Bart, does this look good?
diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c index 72273a0..ebb1206 100644 --- a/drivers/scsi/scsi_scan.c +++ b/drivers/scsi/scsi_scan.c @@ -322,6 +322,7 @@ out_device_destroy: scsi_device_set_state(sdev, SDEV_DEL); transport_destroy_device(&sdev->sdev_gendev); put_device(&sdev->sdev_dev); + sdev->request_queue->queuedata = NULL; scsi_free_queue(sdev->request_queue); put_device(&sdev->sdev_gendev); out:
| |