Re: linux-next: build failure after merge of the final tree (armtree related)

From: Rob Herring
Date: Tue Sep 03 2013 - 08:46:59 EST


On 09/03/2013 04:04 AM, Russell King wrote:
> On Tue, Sep 03, 2013 at 06:18:24PM +1000, Stephen Rothwell wrote:
>> Hi all,
>>
>> After merging the final tree, today's linux-next build (arm defconfig)
>> failed like this:
>>
>> arch/arm/kernel/built-in.o: In function `setup_arch':
>> io.c:(.init.text+0x594): undefined reference to `erratum_a15_798181_init'
>>
>> Presumably caused by commit 34905a33184a ("ARM: 7804/2: Add check for
>> Cortex-A15 errata 798181 ECO"). This build does not have CONFIG_SMP set.
>>
>> I have reverted that commit for today.
>
> Yep, and I think I'm going to do the same, rather than try and fix it.
>

Ah crap, I guess I should have left the ifdefs instead of trying to use
IS_ENABLED.

Here's a fix if you want it. Otherwise I can fold this in and resubmit it
rebased on top of Will's barriers series.

Rob

8<--------------------------------------------
From: Rob Herring <rob.herring@xxxxxxxxxxx>
Date: Tue, 3 Sep 2013 07:35:41 -0500
Subject: [PATCH] ARM: fix undefined reference to erratum_a15_798181_init on
!SMP

Fix build error on !SMP builds introduced by commit 34905a33184a ("ARM:
804/2: Add check for Cortex-A15 errata 798181 ECO"):

arch/arm/kernel/built-in.o: In function `setup_arch':
io.c:(.init.text+0x594): undefined reference to `erratum_a15_798181_init'

Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Signed-off-by: Rob Herring <rob.herring@xxxxxxxxxxx>
---
arch/arm/include/asm/tlbflush.h | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/include/asm/tlbflush.h b/arch/arm/include/asm/tlbflush.h
index decff8d..e6217a1 100644
--- a/arch/arm/include/asm/tlbflush.h
+++ b/arch/arm/include/asm/tlbflush.h
@@ -443,7 +443,11 @@ static inline void local_flush_bp_all(void)
isb();
}

+#ifdef CONFIG_ARM_ERRATA_798181
extern void erratum_a15_798181_init(void);
+#else
+static inline void erratum_a15_798181_init(void) {}
+#endif
extern bool (*erratum_a15_798181_handler)(void);

static inline bool erratum_a15_798181(void)
--
1.8.1.2

--
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/