On Sun, Mar 20, 2022 at 3:45 PM Anirudh Rayabharam <[email protected]> wrote:
>
> vhost_iotlb_add_range_ctx() handles the range [0, ULONG_MAX] by
> splitting it into two ranges and adding them separately. The return
> value of adding the first range to the iotlb is currently ignored.
> Check the return value and bail out in case of an error.
>
> Fixes: e2ae38cf3d91 ("vhost: fix hung thread due to erroneous iotlb entries")
> Reviewed-by: Stefano Garzarella <[email protected]>
> Signed-off-by: Anirudh Rayabharam <[email protected]>

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

> ---
>
> v2:
> - Add "Fixes:" tag and "Reviewed-by:".
>
> v1:
> https://lore.kernel.org/kvm/[email protected]/
>
> ---
>  drivers/vhost/iotlb.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/vhost/iotlb.c b/drivers/vhost/iotlb.c
> index 40b098320b2a..5829cf2d0552 100644
> --- a/drivers/vhost/iotlb.c
> +++ b/drivers/vhost/iotlb.c
> @@ -62,8 +62,12 @@ int vhost_iotlb_add_range_ctx(struct vhost_iotlb *iotlb,
>          */
>         if (start == 0 && last == ULONG_MAX) {
>                 u64 mid = last / 2;
> +               int err = vhost_iotlb_add_range_ctx(iotlb, start, mid, addr,
> +                               perm, opaque);
> +
> +               if (err)
> +                       return err;
>
> -               vhost_iotlb_add_range_ctx(iotlb, start, mid, addr, perm, 
> opaque);
>                 addr += mid + 1;
>                 start = mid + 1;
>         }
> --
> 2.35.1
>

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

Reply via email to