Re: [PATCH 2/2] vhost: fix range used in translate_desc()

From: Michael S. Tsirkin
Date: Wed Nov 09 2022 - 05:11:52 EST


On Wed, Nov 09, 2022 at 09:18:23AM +0100, Stefano Garzarella wrote:
> On Wed, Nov 09, 2022 at 11:28:41AM +0800, Jason Wang wrote:
> > On Tue, Nov 8, 2022 at 6:34 PM Stefano Garzarella <sgarzare@xxxxxxxxxx> wrote:
> > >
> > > vhost_iotlb_itree_first() requires `start` and `last` parameters
> > > to search for a mapping that overlaps the range.
> > >
> > > In translate_desc() we cyclically call vhost_iotlb_itree_first(),
> > > incrementing `addr` by the amount already translated, so rightly
> > > we move the `start` parameter passed to vhost_iotlb_itree_first(),
> > > but we should hold the `last` parameter constant.
> > >
> > > Let's fix it by saving the `last` parameter value before incrementing
> > > `addr` in the loop.
> > >
> > > Fixes: 0bbe30668d89 ("vhost: factor out IOTLB")
> > > Signed-off-by: Stefano Garzarella <sgarzare@xxxxxxxxxx>
> > > ---
> > >
> > > I'm not sure about the fixes tag. On the one I used this patch should
> > > apply cleanly, but looking at the latest stable (4.9), maybe we should
> > > use
> > >
> > > Fixes: a9709d6874d5 ("vhost: convert pre sorted vhost memory array to interval tree")
> >
> > I think this should be the right commit to fix.
>
> Yeah, @Michael should I send a v2 with that tag?

Pls do.

> >
> > Other than this
> >
> > Acked-by: Jason Wang <jasowang@xxxxxxxxxx>
> >
>
> Thanks for the review,
> Stefano