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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]