[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c6908c07-1814-a7f8-5f48-a4c316fb567c@huawei.com>
Date: Tue, 23 Mar 2021 14:21:27 +0800
From: "heying (H)" <heying24@...wei.com>
To: Christophe Leroy <christophe.leroy@...roup.eu>,
<mpe@...erman.id.au>, <benh@...nel.crashing.org>,
<paulus@...ba.org>, <npiggin@...il.com>, <msuchanek@...e.de>,
<peterz@...radead.org>, <geert+renesas@...der.be>,
<kernelfans@...il.com>, <frederic@...nel.org>
CC: <linuxppc-dev@...ts.ozlabs.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH -next] powerpc: kernel/time.c - cleanup warnings
Dear Christophe,
在 2021/3/18 10:28, heying (H) 写道:
>
> 在 2021/3/17 19:16, Christophe Leroy 写道:
>>
>>
>> Le 17/03/2021 à 11:34, He Ying a écrit :
>>> We found these warnings in arch/powerpc/kernel/time.c as follows:
>>> warning: symbol 'decrementer_max' was not declared. Should it be
>>> static?
>>> warning: symbol 'rtc_lock' was not declared. Should it be static?
>>> warning: symbol 'dtl_consumer' was not declared. Should it be static?
>>>
>>> Declare 'decrementer_max' in arch/powerpc/include/asm/time.h. And
>>> include
>>> proper header in which 'rtc_lock' is declared. Move 'dtl_consumer'
>>> definition behind "include <asm/dtl.h>" because 'dtl_consumer' is
>>> declared
>>> there.
>>>
>>> Reported-by: Hulk Robot <hulkci@...wei.com>
>>> Signed-off-by: He Ying <heying24@...wei.com>
>>> ---
>>> arch/powerpc/include/asm/time.h | 1 +
>>> arch/powerpc/kernel/time.c | 7 +++----
>>> 2 files changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/arch/powerpc/include/asm/time.h
>>> b/arch/powerpc/include/asm/time.h
>>> index 8dd3cdb25338..2cd2b50bedda 100644
>>> --- a/arch/powerpc/include/asm/time.h
>>> +++ b/arch/powerpc/include/asm/time.h
>>> @@ -22,6 +22,7 @@ extern unsigned long tb_ticks_per_jiffy;
>>> extern unsigned long tb_ticks_per_usec;
>>> extern unsigned long tb_ticks_per_sec;
>>> extern struct clock_event_device decrementer_clockevent;
>>> +extern u64 decrementer_max;
>>> extern void generic_calibrate_decr(void);
>>> diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c
>>> index b67d93a609a2..409967713ca6 100644
>>> --- a/arch/powerpc/kernel/time.c
>>> +++ b/arch/powerpc/kernel/time.c
>>> @@ -55,6 +55,7 @@
>>> #include <linux/sched/cputime.h>
>>> #include <linux/sched/clock.h>
>>> #include <linux/processor.h>
>>> +#include <linux/mc146818rtc.h>
>>
>> I don't think that's the good place. It has no link to powerpc, it is
>> only by chance that it has the same name.
>>
>> As rtc_lock is defined in powerpc time.c, I think you should declare
>> it in powerpc asm/time.h
>
> My first thought was the same as yours. I tried to add declaration in
> powerpc asm/time.h, but got a compiling error:
>
> drivers/rtc/rtc-vr41xx.c:75:24: error: static declaration of
> ‘rtc_lock’ follows non-static declaration
> static DEFINE_SPINLOCK(rtc_lock);
>
> In file included from ./arch/powerpc/include/asm/delay.h:7:0,
> from ./arch/powerpc/include/asm/io.h:33,
> from ./include/linux/io.h:13,
> from drivers/rtc/rtc-vr41xx.c:11:
> ./arch/powerpc/include/asm/time.h:25:19: note: previous declaration of
> ‘rtc_lock’ was here
> extern spinlock_t rtc_lock;
>
> There's a conflict. Perhaps I can rename it in drivers/rtc/rtc-vr41xx.c.
>
>
> But I find an existing declaration in linux/mc146818rtc.h and there's
> only one definition for 'rtc_lock' in powerpc.
>
> There's some includes of mc146818rtc.h in powperc. I wonder they point
> to the same thing. But I'm not very sure
>
> because the header's name looks a bit strange.
How about including mc146818rtc.h in powperpc kernel/time.c? May I have
your opinions please?
Thanks.
Powered by blists - more mailing lists