Re: [Xen-devel] [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single

From: Luis Henriques
Date: Mon Jan 26 2015 - 06:10:33 EST


On Mon, Jan 26, 2015 at 10:53:27AM +0000, Ian Campbell wrote:
> On Fri, 2014-11-21 at 17:00 +0000, Stefano Stabellini wrote:
> > Need to pass the pointer within the swiotlb internal buffer to the
> > swiotlb library, that in the case of xen_unmap_single is dev_addr, not
> > paddr.
> >
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> > CC: konrad.wilk@xxxxxxxxxx
> > CC: stable@xxxxxxxxxxxxxxx
>
> This went into mainline as 2c3fc8d26dd0 "swiotlb-xen: pass dev_addr to
> swiotlb_tbl_unmap_single" but was reverted in dbdd74763f1f.
>
> However it seems that 2c3fc8d26dd0 has made it into at least some stable
> kernel trees:
> v3.18.3 as 2129c43d41e9
> v3.16.7-ckt4 as 94ab279b0c9a
> v3.14.29 as 3394691d34fc
> v3.10.65 as 81cb80b578c5
> so it should be reverted there too. This is causing issues in the field
> such as https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=776237.
>
> v3.17, v3.15, v3.13.11-ckt14, v3.12.x, v3.11.x appear clean, I stopped
> going backwards at v3.10.
>

Thanks a lot, Ian. I'll queue commit dbdd74763f1f for the next 3.16
kernel release.

Cheers,
--
Luís

> Cheers,
> Ian.
>
> > ---
> > drivers/xen/swiotlb-xen.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c
> > index 810ad41..5ea1e3c 100644
> > --- a/drivers/xen/swiotlb-xen.c
> > +++ b/drivers/xen/swiotlb-xen.c
> > @@ -451,7 +451,7 @@ static void xen_unmap_single(struct device *hwdev, dma_addr_t dev_addr,
> >
> > /* NOTE: We use dev_addr here, not paddr! */
> > if (is_xen_swiotlb_buffer(dev_addr)) {
> > - swiotlb_tbl_unmap_single(hwdev, paddr, size, dir);
> > + swiotlb_tbl_unmap_single(hwdev, dev_addr, size, dir);
> > return;
> > }
> >
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/