Re: kmap_atomic_pfn for PCI BAR access?

From: Arjan van de Ven
Date: Mon Jul 07 2008 - 03:05:56 EST


On Mon, 7 Jul 2008 16:53:54 +1000
Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:

> On Thursday 26 June 2008 13:11, Jeremy Fitzhardinge wrote:
> > Dave Airlie wrote:
>
> > > doing tlb flush for iounmap is slow as all hell if you do it a
> > > lot, and we can't afford to mmap the whole aperture it can 1GB.
> >
> > Maybe Nick's vmap reimplementation would help here. It effectively
> > allows you to map stuff into the vmalloc space, and do lazy tlb
> > flushes to mitigate the cost of map/unmap. He posted the patches
> > week or so ago.
>
> Yeah, it can _really_ help. I'd posted some performance numbers with
> the patch which might prompt you to take another look at ioremap.
>
> One thing I still haven't implemented in that patch are CPU-local
> mappings (which only require a local flush to flush)... I found that
> after the improvements I did implement, they didn't help much for
> my workloads, so I suspect you might find the same thing...

just to complicate things with ioremap() you have to deal with the
various caching-coherency requirements.. making things lazy and per CPU
complicates that a ton (and I suspect won't actually make things
cheaper)

--
If you want to reach me at my work email, use arjan@xxxxxxxxxxxxxxx
For development, discussion and tips for power savings,
visit http://www.lesswatts.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/