[PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"

heying (H) heying24 at huawei.com
Mon Mar 15 23:48:20 AEDT 2021


在 2021/3/15 20:17, Christophe Leroy 写道:
> You subject doesn't match the content of the patch.
OK. I'll adapt that.
>
> Le 15/03/2021 à 13:04, He Ying a écrit :
>> The variables 'uaccess_fulsh' and 'entry_flush' are not referenced
>> outside the file. So define them as static to avoid the warnings.
>>
>> And add a prototype for the function 'panic_smp_self_stop' for the
>> same purpose.
>>
>> Sparse also warns that 'rfi_flush' should be static. However, it's
>> referenced outside the file.
>
> To clear that warning, you have to include asm/security_features.h, 
> rfi_flush is declared there.
Do you mean that I should include this header in 
arch/powerpc/kernel/setup_64.c?
>
>>
>> The warnings about the file reported by sparse are as follows:
>> 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?
>>
>> Reported-by: Hulk Robot <hulkci at huawei.com>
>> Signed-off-by: He Ying <heying24 at huawei.com>
>> ---
>>   arch/powerpc/kernel/setup_64.c | 6 ++++--
>>   1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/powerpc/kernel/setup_64.c 
>> b/arch/powerpc/kernel/setup_64.c
>> index 560ed8b975e7..603aacd8527b 100644
>> --- a/arch/powerpc/kernel/setup_64.c
>> +++ b/arch/powerpc/kernel/setup_64.c
>> @@ -71,6 +71,8 @@
>>     #include "setup.h"
>>   +extern void panic_smp_self_stop(void);
>> +
>
> For function prototypes 'extern' is unneeded and deprecated.
>
> And function prototypes should go in an header file.
>
> panic_smp_self_stop() is called from kernel/panic.c , it should be 
> declared in one of the generic linux header files I think.
Yes, you're right. But I have no idea which header it should be declared 
in. May I have your suggestions?
>
>>   int spinning_secondaries;
>>   u64 ppc64_pft_size;
>>   @@ -949,8 +951,8 @@ static bool no_rfi_flush;
>>   static bool no_entry_flush;
>>   static bool no_uaccess_flush;
>>   bool rfi_flush;
>> -bool entry_flush;
>> -bool uaccess_flush;
>> +static bool entry_flush;
>> +static bool uaccess_flush;
>>   DEFINE_STATIC_KEY_FALSE(uaccess_flush_key);
>>   EXPORT_SYMBOL(uaccess_flush_key);
>>
> .


More information about the Linuxppc-dev mailing list