On Fri, Jul 8, 2022 at 11:05 AM Mike Christie
<[email protected]> wrote:
>
> Qemu takes it's num_queues limit then adds the fixed queues (control and
> event) to the total it will request from the kernel. So when a user
> requests 128 (or qemu does it's num_queues calculation based on vCPUS
> and other system limits), we hit errors due to userspace trying to setup
> 130 queues when vhost-scsi has a hard coded limit of 128.
>
> This has vhost-scsi adjust it's max so we can do a total of 130 virtqueues
> (128 IO and 2 fixed). For the case where the user has 128 vCPUs the guest
> OS can then nicely map each IO virtqueue to a vCPU and not have the odd case
> where 2 vCPUs share a virtqueue.
>
> Signed-off-by: Mike Christie <[email protected]>

Acked-by: Jason Wang <[email protected]>

> ---
>  drivers/vhost/scsi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/vhost/scsi.c b/drivers/vhost/scsi.c
> index ffd9e6c2ffc1..8d6b4eef554d 100644
> --- a/drivers/vhost/scsi.c
> +++ b/drivers/vhost/scsi.c
> @@ -159,7 +159,7 @@ enum {
>  };
>
>  #define VHOST_SCSI_MAX_TARGET  256
> -#define VHOST_SCSI_MAX_VQ      128
> +#define VHOST_SCSI_MAX_VQ      128 + VHOST_SCSI_VQ_IO
>  #define VHOST_SCSI_MAX_EVENT   128
>
>  struct vhost_scsi_virtqueue {
> --
> 2.25.1
>

_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to