Subject: Re: [PATCH] fsldma: fix missing header include

From: "Ira W. Snyder" <[email-masked]>
Date: Fri, 3 Sep 2010 17:47:24 -0700

On Fri, Sep 03, 2010 at 04:40:33PM -0700, Andrew Morton wrote:
> On Thu, 2 Sep 2010 12:47:52 -0700
> "Ira W. Snyder" <[email-masked]> wrote:
> 
> > The slab.h header is required to use the kmalloc() family of functions.
> > Due to recent kernel changes, this header must be directly included by
> > code that calls into the memory allocator.
> > 
> > Signed-off-by: Ira W. Snyder <[email-masked]>
> > ---
> > 
> > Without this patch, any code which includes this header fails to build.
> > 
> >  arch/powerpc/include/asm/fsldma.h |    1 +
> >  1 files changed, 1 insertions(+), 0 deletions(-)
> > 
> > diff --git a/arch/powerpc/include/asm/fsldma.h b/arch/powerpc/include/asm/fsldma.h
> > index a67aeed..debc5ed 100644
> > --- a/arch/powerpc/include/asm/fsldma.h
> > +++ b/arch/powerpc/include/asm/fsldma.h
> > @@ -11,6 +11,7 @@
> >  #ifndef __ARCH_POWERPC_ASM_FSLDMA_H__
> >  #define __ARCH_POWERPC_ASM_FSLDMA_H__
> >  
> > +#include <linux/slab.h>
> >  #include <linux/dmaengine.h>
> >  
> 
> It also needs list.h, but appears to get it via sheer luck.
> 
> The functions in that header simply shouldn't have been inlined.
> 
> It's peculiar that fsl_dma_slave_append() hardwires GFP_ATOMIC, whereas
> fsl_dma_slave_alloc() takes a gfp_t.
> 

Would you like a patch that moves the functions to drivers/dma/fsldma.c
and EXPORT_SYMBOL_GPL()'s them? I don't know the consequences to doing
so, which is why I avoided it when I wrote
arch/powerpc/include/asm/fsldma.h.

Thanks,
Ira