2021-03-12 11:10:36

by He Ying

[permalink] [raw]
Subject: [PATCH] powerpc: define the variable 'uaccess_flush' as static

The variable 'uaccess_fulsh' is not referenced outside the file. Perhaps we
should define it as static to avoid the warning as follows:

arch/powerpc/kernel/setup_64.c:953:6: warning: symbol 'uaccess_flush'
was not declared. Should it be static?

Reported-by: Hulk Robot <[email protected]>
Signed-off-by: He Ying <[email protected]>
---
arch/powerpc/kernel/setup_64.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/kernel/setup_64.c b/arch/powerpc/kernel/setup_64.c
index 560ed8b975e7..22aca271496b 100644
--- a/arch/powerpc/kernel/setup_64.c
+++ b/arch/powerpc/kernel/setup_64.c
@@ -950,7 +950,7 @@ static bool no_entry_flush;
static bool no_uaccess_flush;
bool rfi_flush;
bool entry_flush;
-bool uaccess_flush;
+static bool uaccess_flush;
DEFINE_STATIC_KEY_FALSE(uaccess_flush_key);
EXPORT_SYMBOL(uaccess_flush_key);

--
2.17.1


2021-03-12 14:26:45

by Cédric Le Goater

[permalink] [raw]
Subject: Re: [PATCH] powerpc: define the variable 'uaccess_flush' as static

On 3/12/21 12:06 PM, He Ying wrote:
> The variable 'uaccess_fulsh' is not referenced outside the file. Perhaps we
> should define it as static to avoid the warning as follows:
>
> arch/powerpc/kernel/setup_64.c:953:6: warning: symbol 'uaccess_flush'
> was not declared. Should it be static?
>
> Reported-by: Hulk Robot <[email protected]>
> Signed-off-by: He Ying <[email protected]>
> ---
> arch/powerpc/kernel/setup_64.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/kernel/setup_64.c b/arch/powerpc/kernel/setup_64.c
> index 560ed8b975e7..22aca271496b 100644
> --- a/arch/powerpc/kernel/setup_64.c
> +++ b/arch/powerpc/kernel/setup_64.c
> @@ -950,7 +950,7 @@ static bool no_entry_flush;
> static bool no_uaccess_flush;
> bool rfi_flush;
> bool entry_flush;

I think this is the case also for entry_flush. compiling with W=1 will tell you more.

Thanks,

C.

> -bool uaccess_flush;
> +static bool uaccess_flush;
> DEFINE_STATIC_KEY_FALSE(uaccess_flush_key);
> EXPORT_SYMBOL(uaccess_flush_key);
>
>

2021-03-15 09:20:25

by Christophe Leroy

[permalink] [raw]
Subject: Re: [PATCH] powerpc: define the variable 'uaccess_flush' as static



Le 15/03/2021 à 07:51, heying (H) a écrit :
>
>> I think this is the case also for entry_flush. compiling with W=1 will tell you more.
>
> When I use these commands:
>
> make allmodconfig ARCH=powerpc CROSS_COMPILE=powerpc64-linux-gnu-
> make C=2 arch/powerpc/kernel/setup_64.o ARCH=powerpc CROSS_COMPILE=powerpc64-linux-gnu-
>
> I find warnings as followings:
>
> arch/powerpc/kernel/setup_64.c:422:6: warning: symbol 'panic_smp_self_stop' was not declared. Should
> it be static?
> arch/powerpc/kernel/setup_64.c:951:6: warning: symbol 'rfi_flush' was not declared. Should it be static?
> arch/powerpc/kernel/setup_64.c:952:6: warning: symbol 'entry_flush' was not declared. Should it be
> static?
> arch/powerpc/kernel/setup_64.c:953:6: warning: symbol 'uaccess_flush' was not declared. Should it be
> static?
>
> When I use the command "make W=1 arch/powerpc/kernel/setup_64.o ARCH=powerpc
> CROSS_COMPILE=powerpc64-linux-gnu-", warning becomes this:
>
> arch/powerpc/kernel/setup_64.c:422:6: warning: no previous prototype for ‘panic_smp_self_stop’
> [-Wmissing-prototypes]
>  void panic_smp_self_stop(void)
>       ^~~~~~~~~~~~~~~~~~~
>
> My sparse tool is the latest one with the version "v0.6.3". So, should I fix all the warnings
> reported by sparse?

I think W=1 will only report missing function prototypes.

sparse also reports missing variables prototypes so that's better. All should be fixed.

Christophe