linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] small swiotlb-xen fixes
@ 2014-11-21 17:00 Stefano Stabellini
  2014-11-21 17:00 ` [PATCH 1/2] swiotlb-xen: call xen_dma_sync_single_for_device when appropriate Stefano Stabellini
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Stefano Stabellini @ 2014-11-21 17:00 UTC (permalink / raw)
  To: xen-devel
  Cc: Konrad Rzeszutek Wilk, Stefano Stabellini, David Vrabel, linux-kernel

Hi all,
I have a couple of small straightforward fixes for swiotlb-xen for 3.19.

Cheers,

Stefano


Stefano Stabellini (2):
      swiotlb-xen: call xen_dma_sync_single_for_device when appropriate
      swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single

 drivers/xen/swiotlb-xen.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/2] swiotlb-xen: call xen_dma_sync_single_for_device when appropriate
  2014-11-21 17:00 [PATCH 0/2] small swiotlb-xen fixes Stefano Stabellini
@ 2014-11-21 17:00 ` Stefano Stabellini
  2014-11-21 17:00 ` [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single Stefano Stabellini
  2014-11-21 17:26 ` [PATCH 0/2] small swiotlb-xen fixes Konrad Rzeszutek Wilk
  2 siblings, 0 replies; 8+ messages in thread
From: Stefano Stabellini @ 2014-11-21 17:00 UTC (permalink / raw)
  To: xen-devel
  Cc: konrad.wilk, Stefano.Stabellini, david.vrabel, linux-kernel,
	Stefano Stabellini, stable

In xen_swiotlb_sync_single we always call xen_dma_sync_single_for_cpu,
even when we should call xen_dma_sync_single_for_device. Fix that.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
CC: konrad.wilk@oracle.com
CC: stable@vger.kernel.org
---
 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 153cf14..810ad41 100644
--- a/drivers/xen/swiotlb-xen.c
+++ b/drivers/xen/swiotlb-xen.c
@@ -502,7 +502,7 @@ xen_swiotlb_sync_single(struct device *hwdev, dma_addr_t dev_addr,
 		swiotlb_tbl_sync_single(hwdev, paddr, size, dir, target);
 
 	if (target == SYNC_FOR_DEVICE)
-		xen_dma_sync_single_for_cpu(hwdev, dev_addr, size, dir);
+		xen_dma_sync_single_for_device(hwdev, dev_addr, size, dir);
 
 	if (dir != DMA_FROM_DEVICE)
 		return;
-- 
1.7.10.4


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
  2014-11-21 17:00 [PATCH 0/2] small swiotlb-xen fixes Stefano Stabellini
  2014-11-21 17:00 ` [PATCH 1/2] swiotlb-xen: call xen_dma_sync_single_for_device when appropriate Stefano Stabellini
@ 2014-11-21 17:00 ` Stefano Stabellini
  2015-01-26 10:53   ` [Xen-devel] " Ian Campbell
  2014-11-21 17:26 ` [PATCH 0/2] small swiotlb-xen fixes Konrad Rzeszutek Wilk
  2 siblings, 1 reply; 8+ messages in thread
From: Stefano Stabellini @ 2014-11-21 17:00 UTC (permalink / raw)
  To: xen-devel
  Cc: konrad.wilk, Stefano.Stabellini, david.vrabel, linux-kernel,
	Stefano Stabellini, stable

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@eu.citrix.com>
CC: konrad.wilk@oracle.com
CC: stable@vger.kernel.org
---
 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;
 	}
 
-- 
1.7.10.4


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/2] small swiotlb-xen fixes
  2014-11-21 17:00 [PATCH 0/2] small swiotlb-xen fixes Stefano Stabellini
  2014-11-21 17:00 ` [PATCH 1/2] swiotlb-xen: call xen_dma_sync_single_for_device when appropriate Stefano Stabellini
  2014-11-21 17:00 ` [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single Stefano Stabellini
@ 2014-11-21 17:26 ` Konrad Rzeszutek Wilk
  2014-11-24 11:57   ` Stefano Stabellini
  2 siblings, 1 reply; 8+ messages in thread
From: Konrad Rzeszutek Wilk @ 2014-11-21 17:26 UTC (permalink / raw)
  To: Stefano Stabellini; +Cc: xen-devel, David Vrabel, linux-kernel

On Fri, Nov 21, 2014 at 05:00:05PM +0000, Stefano Stabellini wrote:
> Hi all,
> I have a couple of small straightforward fixes for swiotlb-xen for 3.19.
> 

They look fine to me.

Thanks.
> Cheers,
> 
> Stefano
> 
> 
> Stefano Stabellini (2):
>       swiotlb-xen: call xen_dma_sync_single_for_device when appropriate
>       swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
> 
>  drivers/xen/swiotlb-xen.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/2] small swiotlb-xen fixes
  2014-11-21 17:26 ` [PATCH 0/2] small swiotlb-xen fixes Konrad Rzeszutek Wilk
@ 2014-11-24 11:57   ` Stefano Stabellini
  0 siblings, 0 replies; 8+ messages in thread
From: Stefano Stabellini @ 2014-11-24 11:57 UTC (permalink / raw)
  To: Konrad Rzeszutek Wilk
  Cc: Stefano Stabellini, xen-devel, David Vrabel, linux-kernel

On Fri, 21 Nov 2014, Konrad Rzeszutek Wilk wrote:
> On Fri, Nov 21, 2014 at 05:00:05PM +0000, Stefano Stabellini wrote:
> > Hi all,
> > I have a couple of small straightforward fixes for swiotlb-xen for 3.19.
> > 
> 
> They look fine to me.

Applied to devel/for-linus-3.19



> Thanks.
> > Cheers,
> > 
> > Stefano
> > 
> > 
> > Stefano Stabellini (2):
> >       swiotlb-xen: call xen_dma_sync_single_for_device when appropriate
> >       swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
> > 
> >  drivers/xen/swiotlb-xen.c |    4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Xen-devel] [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
  2014-11-21 17:00 ` [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single Stefano Stabellini
@ 2015-01-26 10:53   ` Ian Campbell
  2015-01-26 11:10     ` Luis Henriques
  2015-01-26 13:39     ` Jiri Slaby
  0 siblings, 2 replies; 8+ messages in thread
From: Ian Campbell @ 2015-01-26 10:53 UTC (permalink / raw)
  To: Stefano Stabellini
  Cc: xen-devel, linux-kernel, david.vrabel, stable, Luis Henriques

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@eu.citrix.com>
> CC: konrad.wilk@oracle.com
> CC: stable@vger.kernel.org

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.

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;
>  	}
>  



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Xen-devel] [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
  2015-01-26 10:53   ` [Xen-devel] " Ian Campbell
@ 2015-01-26 11:10     ` Luis Henriques
  2015-01-26 13:39     ` Jiri Slaby
  1 sibling, 0 replies; 8+ messages in thread
From: Luis Henriques @ 2015-01-26 11:10 UTC (permalink / raw)
  To: Ian Campbell
  Cc: Stefano Stabellini, xen-devel, linux-kernel, david.vrabel, stable

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@eu.citrix.com>
> > CC: konrad.wilk@oracle.com
> > CC: stable@vger.kernel.org
> 
> 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;
> >  	}
> >  
> 
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Xen-devel] [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
  2015-01-26 10:53   ` [Xen-devel] " Ian Campbell
  2015-01-26 11:10     ` Luis Henriques
@ 2015-01-26 13:39     ` Jiri Slaby
  1 sibling, 0 replies; 8+ messages in thread
From: Jiri Slaby @ 2015-01-26 13:39 UTC (permalink / raw)
  To: Ian Campbell, Stefano Stabellini
  Cc: xen-devel, linux-kernel, david.vrabel, stable, Luis Henriques

On 01/26/2015, 11:53 AM, 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@eu.citrix.com>
>> CC: konrad.wilk@oracle.com
>> CC: stable@vger.kernel.org
> 
> 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

Hi, dropped from the 3.12 queue.

thanks,
-- 
js
suse labs

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-01-26 13:39 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-21 17:00 [PATCH 0/2] small swiotlb-xen fixes Stefano Stabellini
2014-11-21 17:00 ` [PATCH 1/2] swiotlb-xen: call xen_dma_sync_single_for_device when appropriate Stefano Stabellini
2014-11-21 17:00 ` [PATCH 2/2] swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single Stefano Stabellini
2015-01-26 10:53   ` [Xen-devel] " Ian Campbell
2015-01-26 11:10     ` Luis Henriques
2015-01-26 13:39     ` Jiri Slaby
2014-11-21 17:26 ` [PATCH 0/2] small swiotlb-xen fixes Konrad Rzeszutek Wilk
2014-11-24 11:57   ` Stefano Stabellini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).