Messages in this thread | | | Subject | Re: [PATCH v2] lib/scatterlist: add simple page iterator | From | Imre Deak <> | Date | Wed, 13 Feb 2013 16:51:21 +0200 |
| |
On Tue, 2013-02-12 at 09:13 -0800, Tejun Heo wrote: > Hello, > > On Tue, Feb 12, 2013 at 07:07:20PM +0200, Imre Deak wrote: > > It's the one implemented by sg_miter_{start,stop} in scatterlist.c. It > > also iterates through a scatterlist a page at a time, but it also kmaps > > these pages. Since in our use case we don't need to map the pages we > > needed a solution without this overhead. > > I'm not against having non-mapping iterator but please consider that > kmaps are no-ops on many configurations. It matters only for archs w/ > high memory.
Ok, I haven't thought about that. But in any case we care about those archs too and would like to avoid the mapping there as well.
> > where each entry on the sglist contained 16 consecutive pages. This > > takes ~10% more time for the uninlined version to run. This is a rather > > artificial test and I couldn't come up with something more real-life > > using only the i915 driver's ioctl interface that would show a > > significant change in speed. > > > > So at least for now I'm ok with just uninlining all the helpers. > > Can we reimplement mapping iters using the new ones?
Yes I think it's a good idea, I will follow up with a new patchset addressing this and Andrew's comments.
Thanks, Imre
| |