On 13/06/2016 11:58, Bob Liu wrote:
> A guest might be migrated to other hosts with different num_queues, the
> blk-core should aware of that else the reference of &vblk->vqs[qid] may be 
> wrong.
> 
> Signed-off-by: Bob Liu <bob....@oracle.com>
> ---
>  drivers/block/virtio_blk.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c
> index 42758b5..c169238 100644
> --- a/drivers/block/virtio_blk.c
> +++ b/drivers/block/virtio_blk.c
> @@ -819,6 +819,9 @@ static int virtblk_restore(struct virtio_device *vdev)
>       if (ret)
>               return ret;
>  
> +     if (vblk->num_vqs != vblk->tag_set.nr_hw_queues)
> +             blk_mq_update_nr_hw_queues(&vblk->tag_set, vblk->num_vqs);
> +
>       virtio_device_ready(vdev);
>  
>       blk_mq_start_stopped_hw_queues(vblk->disk->queue, true);
> 

This should never happen; it'd be a configuration problem.

Paolo
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to