[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b9a75f44-53a6-2546-2871-ccec0a52c13a@loongson.cn>
Date: Fri, 14 Aug 2020 18:30:09 +0800
From: Xingxing Su <suxingxing@...ngson.cn>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Ingo Molnar <mingo@...hat.com>, Will Deacon <will@...nel.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] seqlock: Fix build errors
On 08/14/2020 04:35 PM, Peter Zijlstra wrote:
> On Fri, Aug 14, 2020 at 12:12:38PM +0800, Xingxing Su wrote:
>> Fix the following build errors:
>>
>> In file included from ./include/linux/time.h:6:0,
>> from ./include/linux/compat.h:10,
>> from arch/mips/kernel/asm-offsets.c:12:
>> ./include/linux/seqlock.h: In function ‘write_seqcount_begin_nested’:
>> ./include/linux/seqlock.h:286:2: error: implicit declaration of function
>> ‘raw_smp_processor_id’ [-Werror=implicit-function-declaration]
>> lockdep_assert_preemption_disabled();
>> ^
>> ./arch/mips/include/asm/smp.h: At top level:
>> ./arch/mips/include/asm/smp.h:28:19: error: static declaration of
>> ‘raw_smp_processor_id’ follows non-static declaration
>> static inline int raw_smp_processor_id(void)
>> ^
>> cc1: some warnings being treated as errors
>> scripts/Makefile.build:117: recipe for target 'arch/mips/kernel/asm-offsets.s' failed
>> make[1]: *** [arch/mips/kernel/asm-offsets.s] Error 1
>> arch/mips/Makefile:396: recipe for target 'archprepare' failed
>> make: *** [archprepare] Error 2
>>
> What kernel are you building?
>
> Commit 0cd39f4600ed ("locking/seqlock, headers: Untangle the spaghetti monster")
>
> should have solved that I think.
>
>> Signed-off-by: Xingxing Su <suxingxing@...ngson.cn>
>> ---
>> v2: update the commit message
>>
>> include/linux/seqlock.h | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h
>> index 54bc204..4763c13 100644
>> --- a/include/linux/seqlock.h
>> +++ b/include/linux/seqlock.h
>> @@ -17,6 +17,7 @@
>> #include <linux/lockdep.h>
>> #include <linux/compiler.h>
>> #include <linux/kcsan-checks.h>
>> +#include <linux/smp.h>
>> #include <asm/processor.h>
> Wrong place, it's lockdep_assert_preemption_disabled() that requires
> asm/percpu.h, and thus lockdep.h should include linux/smp. before
> asm/percpu.h
Thanks for your reply, I will check it.
Powered by blists - more mailing lists