From: Michael S. Tsirkin Date: Tue, 14 Oct 2014 23:52:32 +0000 (+1030) Subject: virtio_scsi: enable VQs early on restore X-Git-Tag: v3.18-rc1~28^2~7 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=52c9cf1ac3d315995e9a65b900bc25e1d8a538b3;p=~emulex%2Finfiniband.git virtio_scsi: enable VQs early on restore virtio spec requires drivers to set DRIVER_OK before using VQs. This is set automatically after restore returns, virtio scsi violated this rule on restore by kicking event vq within restore. To fix, call virtio_device_ready before using event queue. Signed-off-by: Michael S. Tsirkin Signed-off-by: Rusty Russell --- diff --git a/drivers/scsi/virtio_scsi.c b/drivers/scsi/virtio_scsi.c index 0642ce387c7..6a39896b30d 100644 --- a/drivers/scsi/virtio_scsi.c +++ b/drivers/scsi/virtio_scsi.c @@ -1054,6 +1054,8 @@ static int virtscsi_restore(struct virtio_device *vdev) return err; } + virtio_device_ready(vdev); + if (virtio_has_feature(vdev, VIRTIO_SCSI_F_HOTPLUG)) virtscsi_kick_event_all(vscsi);