[PATCH v2] include/linux: Add missing include / fix build failure

Nick Piggin npiggin at kernel.dk
Wed Dec 15 21:41:46 EST 2010


Hi Peter,

Thanks for this.

On Thu, Dec 16, 2010 at 12:40:54AM +0100, Peter Hüwe wrote:
> From: Peter Huewe <peterhuewe at gmx.de>
> 
> This patch fixes a build failure[1-2] by adding the missing asm/memory.h
> include needed for arch_is_coherent().
> 
> Error message:
> In file included from include/linux/list_bl.h:5,
>                  from include/linux/rculist_bl.h:7,
>                  from include/linux/dcache.h:7,
>                  from include/linux/fs.h:381,
>                  from arch/arm/mm/mmap.c:4:
> include/linux/bit_spinlock.h: In function 'bit_spin_unlock':
> include/linux/bit_spinlock.h:61: error: implicit declaration of function 
> 'arch_is_coherent'
> 
> KernelVersion: linux-next-20101215
> Used configs: hackkit_defconfig (arm), ep93xx_defconfig (arm)
> 
> References:
> [1] http://kisskb.ellerman.id.au/kisskb/buildresult/3651495/
> [2] http://kisskb.ellerman.id.au/kisskb/buildresult/3651425/
> 
> Signed-off-by: Peter Huewe <peterhuewe at gmx.de>
> ---
> v2:
> moved additional information in the commit message.
> 
>  include/linux/bit_spinlock.h |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/include/linux/bit_spinlock.h b/include/linux/bit_spinlock.h
> index e612575..053fad7 100644
> --- a/include/linux/bit_spinlock.h
> +++ b/include/linux/bit_spinlock.h
> @@ -4,6 +4,7 @@
>  #include <linux/kernel.h>
>  #include <linux/preempt.h>
>  #include <asm/atomic.h>
> +#include <asm/memory.h>
>  
>  /*
>   *  bit-based spin_lock()

The problem is actually in ARM's asm/atomic.h file -- they declare the
smp_mb__before_clear_bit() etc. without providing the necessary includes
to actually call it. Can you include asm/memory.h in there?

Thanks,
Nick




More information about the linux-arm-kernel mailing list