Re: [PATCH][2.6] asm-arm/tlbflush.h needs some extra headers

From: Russell King
Date: Mon Sep 08 2003 - 02:41:26 EST


On Mon, Sep 08, 2003 at 12:40:02AM -0400, Zwane Mwaikambo wrote:
> I got this whilst building for an SA1100
>
> In file included from arch/arm/kernel/setup.c:31:
> include/asm/tlbflush.h: In function `flush_tlb_mm':
> include/asm/tlbflush.h:261: warning: implicit declaration of function `ASID'
> include/asm/tlbflush.h:267: `current' undeclared (first use in this function)
> include/asm/tlbflush.h:267: (Each undeclared identifier is reported only once
> include/asm/tlbflush.h:267: for each function it appears in.)
> include/asm/tlbflush.h: In function `flush_tlb_page':
> include/asm/tlbflush.h:292: dereferencing pointer to incomplete type
> include/asm/tlbflush.h:297: dereferencing pointer to incomplete type
> include/asm/tlbflush.h:297: `current' undeclared (first use in this function)
> arch/arm/kernel/setup.c: In function `request_standard_resources':
> arch/arm/kernel/setup.c:437: `init_mm' undeclared (first use in this function)
> arch/arm/kernel/setup.c: In function `setup_arch':
> arch/arm/kernel/setup.c:690: `init_mm' undeclared (first use in this function)
> make[1]: *** [arch/arm/kernel/setup.o] Error 1

Hmm, does akpm's -mm6 patch contain any header file cleanups? I know
this file built in Linus' bk tree last night, although this wasn't
for SA1100.

Can you check whether arch/arm/kernel/setup.c includes asm/cacheflush.h
just before asm/tlbflush.h (which is a recent fix which went into Linus'
tree recently.)

> Index: linux-2.6.0-test4-mm6-arm/include/asm-arm/tlbflush.h
> ===================================================================
> RCS file: /build/cvsroot/linux-2.6.0-test4-mm6/include/asm-arm/tlbflush.h,v
> retrieving revision 1.1.1.1
> diff -u -p -B -r1.1.1.1 tlbflush.h
> --- linux-2.6.0-test4-mm6-arm/include/asm-arm/tlbflush.h 7 Sep 2003 20:27:38 -0000 1.1.1.1
> +++ linux-2.6.0-test4-mm6-arm/include/asm-arm/tlbflush.h 8 Sep 2003 03:34:33 -0000
> @@ -11,7 +11,9 @@
> #define _ASMARM_TLBFLUSH_H
>
> #include <linux/config.h>
> +#include <linux/mm.h>
> #include <asm/glue.h>
> +#include <asm/mmu.h>
>
> #define TLB_V3_PAGE (1 << 0)
> #define TLB_V4_U_PAGE (1 << 1)

I certainly don't like adding linux/mm.h to tlbflush.h - that seems
like a recipe for disaster.

--
Russell King (rmk@xxxxxxxxxxxxxxxx) http://www.arm.linux.org.uk/personal/
Linux kernel maintainer of:
2.6 ARM Linux - http://www.arm.linux.org.uk/
2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
-
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/