Re: DMA memory, split_page, BUG_ON(PageCompound()), sound
From: Takashi Iwai
Date: Thu Jul 13 2006 - 09:29:19 EST
At Wed, 12 Jul 2006 11:32:41 +0100,
Russell King wrote:
>
> On Tue, Jul 11, 2006 at 03:34:11AM +1000, Nick Piggin wrote:
> > Russell King wrote:
> > >On Mon, Jul 10, 2006 at 04:59:48PM +1000, Nick Piggin wrote:
> > >
> > >>I guess you could do it a number of ways. Maybe having GFP_USERMAP
> > >>set __GFP_USERMAP|__GFP_COMP, and the arm dma memory allocator can
> > >>strip the __GFP_COMP.
> > >>
> > >>If you get an explicit __GFP_COMP passed down, the allocator doesn't
> > >>know whether that was because they want a user mappable area, or
> > >>really want a compound page (in which case, stripping __GFP_COMP is
> > >>the wrong thing to do).
> > >
> > >
> > >So I'll mask off __GFP_COMP for the time being in the ARM dma allocator
> > >with a note to this effect?
> >
> > I believe that should do the trick, yes (AFAIK, nobody yet is
> > explicitly relying on a compound page from the dma allocator).
>
> In which case should ALSA be passing __GFP_COMP to the dma allocator ?
I would be willing to remove __GFP_COMP if it's not needed :)
Passing this flag is really confusing. The driver doesn't use the
compound pages at all but it was added just to enable mmap support.
So, Nick's proposal appears reasonable to me.
Takashi
-
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/