public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] swiotlb: Replace dma_length to sg_dma_len()  macro
@ 2013-04-16  5:37 EUNBONG SONG
  2013-08-02 16:26 ` Konrad Rzeszutek Wilk
  0 siblings, 1 reply; 3+ messages in thread
From: EUNBONG SONG @ 2013-04-16  5:37 UTC (permalink / raw)
  To: konrad.wilk; +Cc: linux-kernel@vger.kernel.org

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=euc-kr, Size: 1674 bytes --]


This patch replace dma_length in "lib/swiotlb.c" to sg_dma_len() macro, because the build error can occur
if CONFIG_NEED_SG_DMA_LENGTH is not set, and CONFIG_SWIOTLB is set.
I confirmed compile only. 

Singed-off-by: EunBong Song <eunb.song@samsung.com>

---
 lib/swiotlb.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/lib/swiotlb.c b/lib/swiotlb.c
index bfe02b8..7b16f4a 100644
--- a/lib/swiotlb.c
+++ b/lib/swiotlb.c
@@ -859,13 +859,13 @@ swiotlb_map_sg_attrs(struct device *hwdev, struct scatterlist *sgl, int nelems,
 				swiotlb_full(hwdev, sg->length, dir, 0);
 				swiotlb_unmap_sg_attrs(hwdev, sgl, i, dir,
 						       attrs);
-				sgl[0].dma_length = 0;
+				sg_dma_len(sgl) = 0;
 				return 0;
 			}
 			sg->dma_address = phys_to_dma(hwdev, map);
 		} else
 			sg->dma_address = dev_addr;
-		sg->dma_length = sg->length;
+		sg_dma_len(sg) = sg->length;
 	}
 	return nelems;
 }
@@ -893,7 +893,7 @@ swiotlb_unmap_sg_attrs(struct device *hwdev, struct scatterlist *sgl,
 	BUG_ON(dir == DMA_NONE);
 
 	for_each_sg(sgl, sg, nelems, i)
-		unmap_single(hwdev, sg->dma_address, sg->dma_length, dir);
+		unmap_single(hwdev, sg->dma_address, sg_dma_len(sg), dir);
 
 }
 EXPORT_SYMBOL(swiotlb_unmap_sg_attrs);
@@ -923,7 +923,7 @@ swiotlb_sync_sg(struct device *hwdev, struct scatterlist *sgl,
 
 	for_each_sg(sgl, sg, nelems, i)
 		swiotlb_sync_single(hwdev, sg->dma_address,
-				    sg->dma_length, dir, target);
+				    sg_dma_len(sg), dir, target);
 }
 
 void
-- 
1.7.0.4
ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

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

* Re: [PATCH] swiotlb: Replace dma_length to sg_dma_len()  macro
  2013-04-16  5:37 [PATCH] swiotlb: Replace dma_length to sg_dma_len() macro EUNBONG SONG
@ 2013-08-02 16:26 ` Konrad Rzeszutek Wilk
  2013-08-02 16:32   ` Stefano Stabellini
  0 siblings, 1 reply; 3+ messages in thread
From: Konrad Rzeszutek Wilk @ 2013-08-02 16:26 UTC (permalink / raw)
  To: EUNBONG SONG, xen-devel, Stefano Stabellini; +Cc: linux-kernel@vger.kernel.org

On Tue, Apr 16, 2013 at 05:37:52AM +0000, EUNBONG SONG wrote:
> 
> This patch replace dma_length in "lib/swiotlb.c" to sg_dma_len() macro, because the build error can occur
> if CONFIG_NEED_SG_DMA_LENGTH is not set, and CONFIG_SWIOTLB is set.
> I confirmed compile only. 

Stefano, This patch should fix the ARM issues, but when I tried to apply it
would go all wonky.

> 
> Singed-off-by: EunBong Song <eunb.song@samsung.com>
> 
> ---
>  lib/swiotlb.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/swiotlb.c b/lib/swiotlb.c
> index bfe02b8..7b16f4a 100644
> --- a/lib/swiotlb.c
> +++ b/lib/swiotlb.c
> @@ -859,13 +859,13 @@ swiotlb_map_sg_attrs(struct device *hwdev, struct scatterlist *sgl, int nelems,
>  				swiotlb_full(hwdev, sg->length, dir, 0);
>  				swiotlb_unmap_sg_attrs(hwdev, sgl, i, dir,
>  						       attrs);
> -				sgl[0].dma_length = 0;
> +				sg_dma_len(sgl) = 0;
>  				return 0;
>  			}
>  			sg->dma_address = phys_to_dma(hwdev, map);
>  		} else
>  			sg->dma_address = dev_addr;
> -		sg->dma_length = sg->length;
> +		sg_dma_len(sg) = sg->length;
>  	}
>  	return nelems;
>  }
> @@ -893,7 +893,7 @@ swiotlb_unmap_sg_attrs(struct device *hwdev, struct scatterlist *sgl,
>  	BUG_ON(dir == DMA_NONE);
>  
>  	for_each_sg(sgl, sg, nelems, i)
> -		unmap_single(hwdev, sg->dma_address, sg->dma_length, dir);
> +		unmap_single(hwdev, sg->dma_address, sg_dma_len(sg), dir);
>  
>  }
>  EXPORT_SYMBOL(swiotlb_unmap_sg_attrs);
> @@ -923,7 +923,7 @@ swiotlb_sync_sg(struct device *hwdev, struct scatterlist *sgl,
>  
>  	for_each_sg(sgl, sg, nelems, i)
>  		swiotlb_sync_single(hwdev, sg->dma_address,
> -				    sg->dma_length, dir, target);
> +				    sg_dma_len(sg), dir, target);
>  }
>  
>  void
> -- 
> 1.7.0.4

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

* Re: [PATCH] swiotlb: Replace dma_length to sg_dma_len()  macro
  2013-08-02 16:26 ` Konrad Rzeszutek Wilk
@ 2013-08-02 16:32   ` Stefano Stabellini
  0 siblings, 0 replies; 3+ messages in thread
From: Stefano Stabellini @ 2013-08-02 16:32 UTC (permalink / raw)
  To: Konrad Rzeszutek Wilk
  Cc: EUNBONG SONG, xen-devel, Stefano Stabellini,
	linux-kernel@vger.kernel.org

On Fri, 2 Aug 2013, Konrad Rzeszutek Wilk wrote:
> On Tue, Apr 16, 2013 at 05:37:52AM +0000, EUNBONG SONG wrote:
> > 
> > This patch replace dma_length in "lib/swiotlb.c" to sg_dma_len() macro, because the build error can occur
> > if CONFIG_NEED_SG_DMA_LENGTH is not set, and CONFIG_SWIOTLB is set.
> > I confirmed compile only. 
> 
> Stefano, This patch should fix the ARM issues,
  
Thanks!!

> but when I tried to apply it
> would go all wonky.

no problems, I can rebase it

> > 
> > Singed-off-by: EunBong Song <eunb.song@samsung.com>
> > 
> > ---
> >  lib/swiotlb.c |    8 ++++----
> >  1 files changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/lib/swiotlb.c b/lib/swiotlb.c
> > index bfe02b8..7b16f4a 100644
> > --- a/lib/swiotlb.c
> > +++ b/lib/swiotlb.c
> > @@ -859,13 +859,13 @@ swiotlb_map_sg_attrs(struct device *hwdev, struct scatterlist *sgl, int nelems,
> >  				swiotlb_full(hwdev, sg->length, dir, 0);
> >  				swiotlb_unmap_sg_attrs(hwdev, sgl, i, dir,
> >  						       attrs);
> > -				sgl[0].dma_length = 0;
> > +				sg_dma_len(sgl) = 0;
> >  				return 0;
> >  			}
> >  			sg->dma_address = phys_to_dma(hwdev, map);
> >  		} else
> >  			sg->dma_address = dev_addr;
> > -		sg->dma_length = sg->length;
> > +		sg_dma_len(sg) = sg->length;
> >  	}
> >  	return nelems;
> >  }
> > @@ -893,7 +893,7 @@ swiotlb_unmap_sg_attrs(struct device *hwdev, struct scatterlist *sgl,
> >  	BUG_ON(dir == DMA_NONE);
> >  
> >  	for_each_sg(sgl, sg, nelems, i)
> > -		unmap_single(hwdev, sg->dma_address, sg->dma_length, dir);
> > +		unmap_single(hwdev, sg->dma_address, sg_dma_len(sg), dir);
> >  
> >  }
> >  EXPORT_SYMBOL(swiotlb_unmap_sg_attrs);
> > @@ -923,7 +923,7 @@ swiotlb_sync_sg(struct device *hwdev, struct scatterlist *sgl,
> >  
> >  	for_each_sg(sgl, sg, nelems, i)
> >  		swiotlb_sync_single(hwdev, sg->dma_address,
> > -				    sg->dma_length, dir, target);
> > +				    sg_dma_len(sg), dir, target);
> >  }
> >  
> >  void
> > -- 
> > 1.7.0.4
> 

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

end of thread, other threads:[~2013-08-02 16:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-16  5:37 [PATCH] swiotlb: Replace dma_length to sg_dma_len() macro EUNBONG SONG
2013-08-02 16:26 ` Konrad Rzeszutek Wilk
2013-08-02 16:32   ` Stefano Stabellini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox