The sparse tool complains as follows:
drivers/clocksource/arm_arch_timer.c:67:5: warning:
symbol 'arch_timer_rate1' was not declared. Should it be static?
This symbol is not used outside of arm_arch_timer.c, so marks it static.
Reported-by: Hulk Robot <[email protected]>
Signed-off-by: Zou Wei <[email protected]>
---
drivers/clocksource/arm_arch_timer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
index fe1a826..800aaa9 100644
--- a/drivers/clocksource/arm_arch_timer.c
+++ b/drivers/clocksource/arm_arch_timer.c
@@ -64,7 +64,7 @@ struct arch_timer {
#define to_arch_timer(e) container_of(e, struct arch_timer, evt)
static u32 arch_timer_rate __ro_after_init;
-u32 arch_timer_rate1 __ro_after_init;
+static u32 arch_timer_rate1 __ro_after_init;
static int arch_timer_ppi[ARCH_TIMER_MAX_TIMER_PPI] __ro_after_init;
static const char *arch_timer_ppi_names[ARCH_TIMER_MAX_TIMER_PPI] = {
--
2.6.2
[+ Jisheng Zhang]
On Tue, 11 May 2021 07:46:23 +0100,
Zou Wei <[email protected]> wrote:
>
> The sparse tool complains as follows:
>
> drivers/clocksource/arm_arch_timer.c:67:5: warning:
> symbol 'arch_timer_rate1' was not declared. Should it be static?
>
> This symbol is not used outside of arm_arch_timer.c, so marks it
> static.
It is worse than that. This variable is not used *at all*, and has
been added by e2bf384d4329 ("clocksource/drivers/arm_arch_timer: Add
__ro_after_init and __init"). Not sure how we missed that.
Please post a patch removing this variable altogether.
Thanks,
M.
>
> Reported-by: Hulk Robot <[email protected]>
> Signed-off-by: Zou Wei <[email protected]>
> ---
> drivers/clocksource/arm_arch_timer.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
> index fe1a826..800aaa9 100644
> --- a/drivers/clocksource/arm_arch_timer.c
> +++ b/drivers/clocksource/arm_arch_timer.c
> @@ -64,7 +64,7 @@ struct arch_timer {
> #define to_arch_timer(e) container_of(e, struct arch_timer, evt)
>
> static u32 arch_timer_rate __ro_after_init;
> -u32 arch_timer_rate1 __ro_after_init;
> +static u32 arch_timer_rate1 __ro_after_init;
> static int arch_timer_ppi[ARCH_TIMER_MAX_TIMER_PPI] __ro_after_init;
>
> static const char *arch_timer_ppi_names[ARCH_TIMER_MAX_TIMER_PPI] = {
> --
> 2.6.2
>
>
--
Without deviation from the norm, progress is not possible.
On Tue, 11 May 2021 08:14:42 +0100 Marc Zyngier wrote:
>
>
> [+ Jisheng Zhang]
>
> On Tue, 11 May 2021 07:46:23 +0100,
> Zou Wei <[email protected]> wrote:
> >
> > The sparse tool complains as follows:
> >
> > drivers/clocksource/arm_arch_timer.c:67:5: warning:
> > symbol 'arch_timer_rate1' was not declared. Should it be static?
> >
> > This symbol is not used outside of arm_arch_timer.c, so marks it
> > static.
>
> It is worse than that. This variable is not used *at all*, and has
> been added by e2bf384d4329 ("clocksource/drivers/arm_arch_timer: Add
> __ro_after_init and __init"). Not sure how we missed that.
Oops, my mistake. Sorry for that. IIRC, I added the __ro_after_init
marker, then want to prove the effectiveness of __ro_after_init with
a new and non-used variable. But later forgot to remove it.
>
> Please post a patch removing this variable altogether.
Just sent out a patch to remove this variable.
>
> Thanks,
>
> M.
>
> >
> > Reported-by: Hulk Robot <[email protected]>
> > Signed-off-by: Zou Wei <[email protected]>
> > ---
> > drivers/clocksource/arm_arch_timer.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
> > index fe1a826..800aaa9 100644
> > --- a/drivers/clocksource/arm_arch_timer.c
> > +++ b/drivers/clocksource/arm_arch_timer.c
> > @@ -64,7 +64,7 @@ struct arch_timer {
> > #define to_arch_timer(e) container_of(e, struct arch_timer, evt)
> >
> > static u32 arch_timer_rate __ro_after_init;
> > -u32 arch_timer_rate1 __ro_after_init;
> > +static u32 arch_timer_rate1 __ro_after_init;
> > static int arch_timer_ppi[ARCH_TIMER_MAX_TIMER_PPI] __ro_after_init;
> >
> > static const char *arch_timer_ppi_names[ARCH_TIMER_MAX_TIMER_PPI] = {
> > --
> > 2.6.2
> >
> >
>
> --
> Without deviation from the norm, progress is not possible.