* [PATCH] powerpc/64: Remove unused generic_secondary_thread_init()
@ 2020-08-19 1:57 Michael Ellerman
2020-09-09 13:27 ` Michael Ellerman
0 siblings, 1 reply; 5+ messages in thread
From: Michael Ellerman @ 2020-08-19 1:57 UTC (permalink / raw)
To: linuxppc-dev
The last caller was removed in 2014 in commit fb5a515704d7 ("powerpc:
Remove platforms/wsp and associated pieces").
As Jordan noticed even though there are no callers, the code above in
fsl_secondary_thread_init() falls through into
generic_secondary_thread_init(). So we can remove the _GLOBAL but not
the body of the function.
However because fsl_secondary_thread_init() is inside #ifdef
CONFIG_PPC_BOOK3E, we can never reach the body of
generic_secondary_thread_init() unless CONFIG_PPC_BOOK3E is enabled,
so we can wrap the whole thing in a single #ifdef.
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
---
v2: Remove the symbol but not the body.
---
arch/powerpc/include/asm/smp.h | 1 -
arch/powerpc/kernel/head_64.S | 7 ++-----
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h
index 0d00faf8f119..c074bff1ec30 100644
--- a/arch/powerpc/include/asm/smp.h
+++ b/arch/powerpc/include/asm/smp.h
@@ -245,7 +245,6 @@ extern void arch_send_call_function_ipi_mask(const struct cpumask *mask);
* 64-bit but defining them all here doesn't harm
*/
extern void generic_secondary_smp_init(void);
-extern void generic_secondary_thread_init(void);
extern unsigned long __secondary_hold_spinloop;
extern unsigned long __secondary_hold_acknowledge;
extern char __secondary_hold;
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
index 0e05a9a47a4b..1510b2a56669 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -300,9 +300,6 @@ _GLOBAL(fsl_secondary_thread_init)
rlwimi r3, r3, 30, 2, 30
mtspr SPRN_PIR, r3
1:
-#endif
-
-_GLOBAL(generic_secondary_thread_init)
mr r24,r3
/* turn on 64-bit mode */
@@ -312,13 +309,13 @@ _GLOBAL(generic_secondary_thread_init)
bl relative_toc
tovirt(r2,r2)
-#ifdef CONFIG_PPC_BOOK3E
/* Book3E initialization */
mr r3,r24
bl book3e_secondary_thread_init
-#endif
b generic_secondary_common_init
+#endif /* CONFIG_PPC_BOOK3E */
+
/*
* On pSeries and most other platforms, secondary processors spin
* in the following code.
--
2.25.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] powerpc/64: Remove unused generic_secondary_thread_init()
2020-08-19 1:57 [PATCH] powerpc/64: Remove unused generic_secondary_thread_init() Michael Ellerman
@ 2020-09-09 13:27 ` Michael Ellerman
0 siblings, 0 replies; 5+ messages in thread
From: Michael Ellerman @ 2020-09-09 13:27 UTC (permalink / raw)
To: Michael Ellerman, linuxppc-dev
On Wed, 19 Aug 2020 11:57:04 +1000, Michael Ellerman wrote:
> The last caller was removed in 2014 in commit fb5a515704d7 ("powerpc:
> Remove platforms/wsp and associated pieces").
>
> As Jordan noticed even though there are no callers, the code above in
> fsl_secondary_thread_init() falls through into
> generic_secondary_thread_init(). So we can remove the _GLOBAL but not
> the body of the function.
>
> [...]
Applied to powerpc/next.
[1/1] powerpc/64: Remove unused generic_secondary_thread_init()
https://git.kernel.org/powerpc/c/529d2bd56ada4b8a4904909042792879868208cd
cheers
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] powerpc/64: Remove unused generic_secondary_thread_init()
2020-05-28 0:49 ` Jordan Niethe
@ 2020-05-28 13:15 ` Michael Ellerman
0 siblings, 0 replies; 5+ messages in thread
From: Michael Ellerman @ 2020-05-28 13:15 UTC (permalink / raw)
To: Jordan Niethe; +Cc: linuxppc-dev
Jordan Niethe <jniethe5@gmail.com> writes:
> On Tue, May 26, 2020 at 4:36 PM Michael Ellerman <mpe@ellerman.id.au> wrote:
>>
>> The last caller was removed in 2014 in commit fb5a515704d7 ("powerpc:
>> Remove platforms/wsp and associated pieces").
>>
>> Once generic_secondary_thread_init() is removed there are no longer
>> any uses of book3e_secondary_thread_init() or
>> generic_secondary_common_init so remove them too.
>>
>> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
>> ---
>> arch/powerpc/include/asm/smp.h | 1 -
>> arch/powerpc/kernel/exceptions-64e.S | 4 ----
>> arch/powerpc/kernel/head_64.S | 18 ------------------
>> 3 files changed, 23 deletions(-)
>>
>> diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h
>> index 49a25e2400f2..81a49566ccd8 100644
>> --- a/arch/powerpc/include/asm/smp.h
>> +++ b/arch/powerpc/include/asm/smp.h
>> @@ -243,7 +243,6 @@ extern void arch_send_call_function_ipi_mask(const struct cpumask *mask);
>> * 64-bit but defining them all here doesn't harm
>> */
>> extern void generic_secondary_smp_init(void);
>> -extern void generic_secondary_thread_init(void);
>> extern unsigned long __secondary_hold_spinloop;
>> extern unsigned long __secondary_hold_acknowledge;
>> extern char __secondary_hold;
>> diff --git a/arch/powerpc/kernel/exceptions-64e.S b/arch/powerpc/kernel/exceptions-64e.S
>> index d9ed79415100..9f9e8686798b 100644
>> --- a/arch/powerpc/kernel/exceptions-64e.S
>> +++ b/arch/powerpc/kernel/exceptions-64e.S
>> @@ -1814,10 +1814,6 @@ _GLOBAL(book3e_secondary_core_init)
>> 1: mtlr r28
>> blr
>>
>> -_GLOBAL(book3e_secondary_thread_init)
>> - mflr r28
>> - b 3b
>> -
>> .globl init_core_book3e
>> init_core_book3e:
>> /* Establish the interrupt vector base */
>> diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
>> index 0e05a9a47a4b..4ae2c18c5fc6 100644
>> --- a/arch/powerpc/kernel/head_64.S
>> +++ b/arch/powerpc/kernel/head_64.S
>> @@ -302,23 +302,6 @@ _GLOBAL(fsl_secondary_thread_init)
>> 1:
>> #endif
>
> Nothing directly calls generic_secondary_thread_init() but I think
> fsl_secondary_thread_init() which is directly above "falls through"
> into it. fsl_secondary_thread_init() still has callers.
Damnit, you're right, I love deleting code! Thanks for reviewing.
I'll send a v2.
cheers
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] powerpc/64: Remove unused generic_secondary_thread_init()
2020-05-26 6:34 Michael Ellerman
@ 2020-05-28 0:49 ` Jordan Niethe
2020-05-28 13:15 ` Michael Ellerman
0 siblings, 1 reply; 5+ messages in thread
From: Jordan Niethe @ 2020-05-28 0:49 UTC (permalink / raw)
To: Michael Ellerman; +Cc: linuxppc-dev
On Tue, May 26, 2020 at 4:36 PM Michael Ellerman <mpe@ellerman.id.au> wrote:
>
> The last caller was removed in 2014 in commit fb5a515704d7 ("powerpc:
> Remove platforms/wsp and associated pieces").
>
> Once generic_secondary_thread_init() is removed there are no longer
> any uses of book3e_secondary_thread_init() or
> generic_secondary_common_init so remove them too.
>
> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
> ---
> arch/powerpc/include/asm/smp.h | 1 -
> arch/powerpc/kernel/exceptions-64e.S | 4 ----
> arch/powerpc/kernel/head_64.S | 18 ------------------
> 3 files changed, 23 deletions(-)
>
> diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h
> index 49a25e2400f2..81a49566ccd8 100644
> --- a/arch/powerpc/include/asm/smp.h
> +++ b/arch/powerpc/include/asm/smp.h
> @@ -243,7 +243,6 @@ extern void arch_send_call_function_ipi_mask(const struct cpumask *mask);
> * 64-bit but defining them all here doesn't harm
> */
> extern void generic_secondary_smp_init(void);
> -extern void generic_secondary_thread_init(void);
> extern unsigned long __secondary_hold_spinloop;
> extern unsigned long __secondary_hold_acknowledge;
> extern char __secondary_hold;
> diff --git a/arch/powerpc/kernel/exceptions-64e.S b/arch/powerpc/kernel/exceptions-64e.S
> index d9ed79415100..9f9e8686798b 100644
> --- a/arch/powerpc/kernel/exceptions-64e.S
> +++ b/arch/powerpc/kernel/exceptions-64e.S
> @@ -1814,10 +1814,6 @@ _GLOBAL(book3e_secondary_core_init)
> 1: mtlr r28
> blr
>
> -_GLOBAL(book3e_secondary_thread_init)
> - mflr r28
> - b 3b
> -
> .globl init_core_book3e
> init_core_book3e:
> /* Establish the interrupt vector base */
> diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
> index 0e05a9a47a4b..4ae2c18c5fc6 100644
> --- a/arch/powerpc/kernel/head_64.S
> +++ b/arch/powerpc/kernel/head_64.S
> @@ -302,23 +302,6 @@ _GLOBAL(fsl_secondary_thread_init)
> 1:
> #endif
Nothing directly calls generic_secondary_thread_init() but I think
fsl_secondary_thread_init() which is directly above "falls through"
into it. fsl_secondary_thread_init() still has callers.
>
> -_GLOBAL(generic_secondary_thread_init)
> - mr r24,r3
> -
> - /* turn on 64-bit mode */
> - bl enable_64b_mode
> -
> - /* get a valid TOC pointer, wherever we're mapped at */
> - bl relative_toc
> - tovirt(r2,r2)
> -
> -#ifdef CONFIG_PPC_BOOK3E
> - /* Book3E initialization */
> - mr r3,r24
> - bl book3e_secondary_thread_init
> -#endif
> - b generic_secondary_common_init
> -
> /*
> * On pSeries and most other platforms, secondary processors spin
> * in the following code.
> @@ -385,7 +368,6 @@ _GLOBAL(generic_secondary_smp_init)
> 20:
> #endif
>
> -generic_secondary_common_init:
> /* Set up a paca value for this processor. Since we have the
> * physical cpu id in r24, we need to search the pacas to find
> * which logical id maps to our physical one.
> --
> 2.25.1
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] powerpc/64: Remove unused generic_secondary_thread_init()
@ 2020-05-26 6:34 Michael Ellerman
2020-05-28 0:49 ` Jordan Niethe
0 siblings, 1 reply; 5+ messages in thread
From: Michael Ellerman @ 2020-05-26 6:34 UTC (permalink / raw)
To: linuxppc-dev
The last caller was removed in 2014 in commit fb5a515704d7 ("powerpc:
Remove platforms/wsp and associated pieces").
Once generic_secondary_thread_init() is removed there are no longer
any uses of book3e_secondary_thread_init() or
generic_secondary_common_init so remove them too.
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
---
arch/powerpc/include/asm/smp.h | 1 -
arch/powerpc/kernel/exceptions-64e.S | 4 ----
arch/powerpc/kernel/head_64.S | 18 ------------------
3 files changed, 23 deletions(-)
diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h
index 49a25e2400f2..81a49566ccd8 100644
--- a/arch/powerpc/include/asm/smp.h
+++ b/arch/powerpc/include/asm/smp.h
@@ -243,7 +243,6 @@ extern void arch_send_call_function_ipi_mask(const struct cpumask *mask);
* 64-bit but defining them all here doesn't harm
*/
extern void generic_secondary_smp_init(void);
-extern void generic_secondary_thread_init(void);
extern unsigned long __secondary_hold_spinloop;
extern unsigned long __secondary_hold_acknowledge;
extern char __secondary_hold;
diff --git a/arch/powerpc/kernel/exceptions-64e.S b/arch/powerpc/kernel/exceptions-64e.S
index d9ed79415100..9f9e8686798b 100644
--- a/arch/powerpc/kernel/exceptions-64e.S
+++ b/arch/powerpc/kernel/exceptions-64e.S
@@ -1814,10 +1814,6 @@ _GLOBAL(book3e_secondary_core_init)
1: mtlr r28
blr
-_GLOBAL(book3e_secondary_thread_init)
- mflr r28
- b 3b
-
.globl init_core_book3e
init_core_book3e:
/* Establish the interrupt vector base */
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
index 0e05a9a47a4b..4ae2c18c5fc6 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -302,23 +302,6 @@ _GLOBAL(fsl_secondary_thread_init)
1:
#endif
-_GLOBAL(generic_secondary_thread_init)
- mr r24,r3
-
- /* turn on 64-bit mode */
- bl enable_64b_mode
-
- /* get a valid TOC pointer, wherever we're mapped at */
- bl relative_toc
- tovirt(r2,r2)
-
-#ifdef CONFIG_PPC_BOOK3E
- /* Book3E initialization */
- mr r3,r24
- bl book3e_secondary_thread_init
-#endif
- b generic_secondary_common_init
-
/*
* On pSeries and most other platforms, secondary processors spin
* in the following code.
@@ -385,7 +368,6 @@ _GLOBAL(generic_secondary_smp_init)
20:
#endif
-generic_secondary_common_init:
/* Set up a paca value for this processor. Since we have the
* physical cpu id in r24, we need to search the pacas to find
* which logical id maps to our physical one.
--
2.25.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-09-09 14:40 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-19 1:57 [PATCH] powerpc/64: Remove unused generic_secondary_thread_init() Michael Ellerman
2020-09-09 13:27 ` Michael Ellerman
-- strict thread matches above, loose matches on Subject: below --
2020-05-26 6:34 Michael Ellerman
2020-05-28 0:49 ` Jordan Niethe
2020-05-28 13:15 ` Michael Ellerman
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.