[dm-devel] dm-mq and end_clone_request()
Bart Van Assche
bart.vanassche at sandisk.com
Tue Aug 9 17:16:52 UTC 2016
On 08/09/2016 10:12 AM, Laurence Oberman wrote:
> I was talking about this patch
>
> --- a/drivers/scsi/scsi_scan.c
> +++ b/drivers/scsi/scsi_scan.c
> @@ -1890,10 +1890,11 @@ void scsi_forget_host(struct Scsi_Host *shost)
> restart:
> spin_lock_irqsave(shost->host_lock, flags);
> list_for_each_entry(sdev, &shost->__devices, siblings) {
> - if (sdev->sdev_state == SDEV_DEL)
> + if (sdev->sdev_state == SDEV_DEL || scsi_device_get(sdev) < 0)
> continue;
> spin_unlock_irqrestore(shost->host_lock, flags);
> __scsi_remove_device(sdev);
> + scsi_device_put(sdev);
> goto restart;
> }
> spin_unlock_irqrestore(shost->host_lock, flags);
Hello Laurence,
Did you run your tests with that patch applied? If so, it would help if
you could rerun your tests without that patch. If the above patch makes
a difference it means that it can happen that __scsi_remove_device()
does not change the device state into SDEV_DEL. That's a bug and we need
to know whether or not __scsi_remove_device() behaves correctly.
Thanks,
Bart.
More information about the dm-devel
mailing list