On Wed, May 12, 2010 at 8:56 AM, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > On Wed, 12 May 2010 08:51:05 +1000 > Dave Airlie <airlied@xxxxxxxxx> wrote: > >> On Wed, May 12, 2010 at 8:32 AM, Andrew Morton >> <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: >> > On Wed, 12 May 2010 08:22:49 +1000 >> > Dave Airlie <airlied@xxxxxxxxx> wrote: >> > >> >> On Wed, May 12, 2010 at 5:57 AM, Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> wrote: >> >> > On Tue, 11 May 2010 12:10:01 -0700, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: >> >> >> On Tue, 11 May 2010 19:52:31 +0100 >> >> >> Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> wrote: >> >> >> >> >> >> > On Tue, 11 May 2010 11:35:55 -0400, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: >> >> >> > > No, io_mapping_map_atomic_wc() cannot be used from [soft]irq context: >> >> >> > > it hardwires use of KM_USER0. __I suggest that io_mapping_create_wc(), >> >> >> > > io_mapping_map_atomic_wc() etc be changed so that the caller passes in the >> >> >> > > KM_foo kmap slot index. >> >> >> > >> >> >> > Argh, sorry for the noise, read the mail in the wrong order. Thanks for >> >> >> > the review. It would be sensible to go with your simpler patch whilst >> >> >> > io_mapping_map_atomic_wc() is improved. >> >> >> >> >> >> OK. __I'll be sending a bunch of fixes Linuswards in an hour or two. >> >> >> Should I include this? >> >> > >> >> > Yes. >> >> > >> >> > Acked-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> >> >> > >> >> >> >> I'm not sure pushing this in at this point is a good idea, if I'm >> >> reading it correctly we've no idea what KM_IRQ is being used for, >> > >> > It's used for taking kmaps from IRQ contexts. >> > >> >> and >> >> this codepath is called from non-irq contexts just as much as irq >> >> contexts. >> > >> > That's fine. __As long as we do a local_irq_disable(), KM_IRQ0 can be >> > used from both irq- and non-irq contexts. __All we need to do is to >> > ensure that some interrupt cannot come along on this CPU and corrupt >> > the slot. >> >> I don't think we do that in a lot of places, and I'd rather not add >> that in to fix this problem at this point in the release cycle, as >> we've no idea what it might break/regress. > > What is "that"? The switch to irq-protected KM_IRQ0? That won't break > anything. > disabling local cpu irqs around all these kmap mappings. Dave. _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel