lkml.org 
[lkml]   [2007]   [May]   [10]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateThu, 10 May 2007 23:38:39 +0200
FromJens Axboe <>
SubjectRe: [PATCH 8/12] x86-64: update iommu/dma mapping functions to sg helpers
On Thu, May 10 2007, Benny Halevy wrote:
> Jens Axboe wrote:
> <snip>
> > @@ -323,13 +324,17 @@ static int __dma_map_cont(struct scatterlist *sg, int start, int stopat,
> >  {
> >  	unsigned long iommu_start = alloc_iommu(pages);
> >  	unsigned long iommu_page = iommu_start; 
> > -	int i;
> > +	struct scatterlist *s;
> > +	int i, nelems;
> > 
> >  	if (iommu_start == -1)
> >  		return -1;
> > +
> > +	nelems = stopat - start;
> > +	while (start--)
> > +		sg = sg_next(sg);
> 
> Ouch.  This will suck if we merge many times in a long list.
> How about keeping and passing start as a struct scatterlist * rather
> than an index? (see attached example, (compiles, bu untested though)

It will suck indeed, I like your patch! I'll review and incorporate.
Your other points are good, noted.

-- 
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-05-10 22:03    [from the cache]
©2003-2008