All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
@ 2021-03-15 12:04 He Ying
  2021-03-15 12:17 ` Christophe Leroy
  0 siblings, 1 reply; 8+ messages in thread
From: He Ying @ 2021-03-15 12:04 UTC (permalink / raw)
  To: mpe, benh, paulus, npiggin, dja, akpm, rppt, aneesh.kumar, clg
  Cc: johnny.chenyi, linuxppc-dev

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.

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@huawei.com>
Signed-off-by: He Ying <heying24@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);
+
 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);
 
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 12:04 [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c" He Ying
@ 2021-03-15 12:17 ` Christophe Leroy
  2021-03-15 12:48   ` heying (H)
  0 siblings, 1 reply; 8+ messages in thread
From: Christophe Leroy @ 2021-03-15 12:17 UTC (permalink / raw)
  To: He Ying, mpe, benh, paulus, npiggin, dja, akpm, rppt, aneesh.kumar, clg
  Cc: johnny.chenyi, linuxppc-dev

You subject doesn't match the content of the patch.

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.

> 
> 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@huawei.com>
> Signed-off-by: He Ying <heying24@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.

>   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);
>   
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 12:17 ` Christophe Leroy
@ 2021-03-15 12:48   ` heying (H)
  2021-03-15 12:57     ` Cédric Le Goater
  2021-03-15 12:57     ` Christophe Leroy
  0 siblings, 2 replies; 8+ messages in thread
From: heying (H) @ 2021-03-15 12:48 UTC (permalink / raw)
  To: Christophe Leroy, mpe, benh, paulus, npiggin, dja, akpm, rppt,
	aneesh.kumar, clg
  Cc: johnny.chenyi, linuxppc-dev


在 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@huawei.com>
>> Signed-off-by: He Ying <heying24@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);
>>
> .

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 12:48   ` heying (H)
@ 2021-03-15 12:57     ` Cédric Le Goater
  2021-03-15 13:01       ` Christophe Leroy
  2021-03-15 12:57     ` Christophe Leroy
  1 sibling, 1 reply; 8+ messages in thread
From: Cédric Le Goater @ 2021-03-15 12:57 UTC (permalink / raw)
  To: heying (H),
	Christophe Leroy, mpe, benh, paulus, npiggin, dja, akpm, rppt,
	aneesh.kumar
  Cc: johnny.chenyi, linuxppc-dev

On 3/15/21 1:48 PM, heying (H) wrote:
> 
> 在 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?

yes.

>>
>>>
>>> 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@huawei.com>
>>> Signed-off-by: He Ying <heying24@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?

arch/powerpc/include/asm/bug.h looks like a good place.

C.

>>
>>>   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);
>>>
>> .


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 12:48   ` heying (H)
  2021-03-15 12:57     ` Cédric Le Goater
@ 2021-03-15 12:57     ` Christophe Leroy
  1 sibling, 0 replies; 8+ messages in thread
From: Christophe Leroy @ 2021-03-15 12:57 UTC (permalink / raw)
  To: heying (H),
	mpe, benh, paulus, npiggin, dja, akpm, rppt, aneesh.kumar, clg
  Cc: johnny.chenyi, linuxppc-dev



Le 15/03/2021 à 13:48, heying (H) a écrit :
> 
> 在 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?

Yes

>>
>>>
>>> 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@huawei.com>
>>> Signed-off-by: He Ying <heying24@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?

Maybe include/linux/smp.h ?

>>
>>>   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);
>>>
>> .

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 12:57     ` Cédric Le Goater
@ 2021-03-15 13:01       ` Christophe Leroy
  2021-03-15 13:14         ` Cédric Le Goater
  0 siblings, 1 reply; 8+ messages in thread
From: Christophe Leroy @ 2021-03-15 13:01 UTC (permalink / raw)
  To: Cédric Le Goater, heying (H),
	mpe, benh, paulus, npiggin, dja, akpm, rppt, aneesh.kumar
  Cc: johnny.chenyi, linuxppc-dev



Le 15/03/2021 à 13:57, Cédric Le Goater a écrit :
> On 3/15/21 1:48 PM, heying (H) wrote:
>>
>> 在 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?
> 
> yes.
> 
>>>
>>>>
>>>> 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@huawei.com>
>>>> Signed-off-by: He Ying <heying24@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?
> 
> arch/powerpc/include/asm/bug.h looks like a good place.

Why declaring it in a powerpc header ?

It's a weak function defined in core part of kernel (kernel/panic.c).

I think it should go in a common header, just like for instance arch_thaw_secondary_cpus_begin()

> 
> C.
> 
>>>
>>>>    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);
>>>>
>>> .

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 13:01       ` Christophe Leroy
@ 2021-03-15 13:14         ` Cédric Le Goater
  2021-03-16  2:04           ` heying (H)
  0 siblings, 1 reply; 8+ messages in thread
From: Cédric Le Goater @ 2021-03-15 13:14 UTC (permalink / raw)
  To: Christophe Leroy, heying (H),
	mpe, benh, paulus, npiggin, dja, akpm, rppt, aneesh.kumar
  Cc: johnny.chenyi, linuxppc-dev

On 3/15/21 2:01 PM, Christophe Leroy wrote:
> 
> 
> Le 15/03/2021 à 13:57, Cédric Le Goater a écrit :
>> On 3/15/21 1:48 PM, heying (H) wrote:
>>>
>>> 在 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?
>>
>> yes.
>>
>>>>
>>>>>
>>>>> 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@huawei.com>
>>>>> Signed-off-by: He Ying <heying24@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?
>>
>> arch/powerpc/include/asm/bug.h looks like a good place.
> 
> Why declaring it in a powerpc header ?
> 
> It's a weak function defined in core part of kernel (kernel/panic.c).
> 
> I think it should go in a common header, just like for instance arch_thaw_secondary_cpus_begin()

Indeed. include/linux/smp.h is a better place for a common routine.

C.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c"
  2021-03-15 13:14         ` Cédric Le Goater
@ 2021-03-16  2:04           ` heying (H)
  0 siblings, 0 replies; 8+ messages in thread
From: heying (H) @ 2021-03-16  2:04 UTC (permalink / raw)
  To: Cédric Le Goater, Christophe Leroy, mpe, benh, paulus,
	npiggin, dja, akpm, rppt, aneesh.kumar
  Cc: johnny.chenyi, linuxppc-dev

Dear Cédric Le Goater and Christophe Leroy,

Thanks for all your suggestions! I'll pick them in my patch and resent 
it soon.


Thanks again.


在 2021/3/15 21:14, Cédric Le Goater 写道:
> On 3/15/21 2:01 PM, Christophe Leroy wrote:
>>
>> Le 15/03/2021 à 13:57, Cédric Le Goater a écrit :
>>> On 3/15/21 1:48 PM, heying (H) wrote:
>>>> 在 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?
>>> yes.
>>>
>>>>>> 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@huawei.com>
>>>>>> Signed-off-by: He Ying <heying24@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?
>>> arch/powerpc/include/asm/bug.h looks like a good place.
>> Why declaring it in a powerpc header ?
>>
>> It's a weak function defined in core part of kernel (kernel/panic.c).
>>
>> I think it should go in a common header, just like for instance arch_thaw_secondary_cpus_begin()
> Indeed. include/linux/smp.h is a better place for a common routine.
>
> C.
>
> .

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-03-16  2:04 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-15 12:04 [PATCH] powerpc: Fix missing prototype problems for "arch/powerpc/kernel/setup_64.c" He Ying
2021-03-15 12:17 ` Christophe Leroy
2021-03-15 12:48   ` heying (H)
2021-03-15 12:57     ` Cédric Le Goater
2021-03-15 13:01       ` Christophe Leroy
2021-03-15 13:14         ` Cédric Le Goater
2021-03-16  2:04           ` heying (H)
2021-03-15 12:57     ` Christophe Leroy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.