[PATCH] modify CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK in riscv irq.c file

Jiexun Wang posted 1 patch 2 years, 5 months ago
arch/riscv/kernel/irq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] modify CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK in riscv irq.c file
Posted by Jiexun Wang 2 years, 5 months ago
If configuration options SOFTIRQ_ON_OWN_STACK and PREEMPT_RT 
are enabled simultaneously under RISC-V architecture,
it will result in a compilation failure:

arch/riscv/kernel/irq.c:64:6: error: redefinition of 'do_softirq_own_stack'
   64 | void do_softirq_own_stack(void)
      |      ^~~~~~~~~~~~~~~~~~~~
In file included from ./arch/riscv/include/generated/asm/softirq_stack.h:1,
                 from arch/riscv/kernel/irq.c:15:
./include/asm-generic/softirq_stack.h:8:20: note: previous definition of 'do_softirq_own_stack' was here
    8 | static inline void do_softirq_own_stack(void)
      |                    ^~~~~~~~~~~~~~~~~~~~
      
After changing CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK to CONFIG_SOFTIRQ_ON_OWN_STACK,
compilation can be successful.

Signed-off-by: Jiexun Wang <wangjiexun@tinylab.org>
---
 arch/riscv/kernel/irq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/riscv/kernel/irq.c b/arch/riscv/kernel/irq.c
index a8efa053c4a5..a86f272ae2c3 100644
--- a/arch/riscv/kernel/irq.c
+++ b/arch/riscv/kernel/irq.c
@@ -60,7 +60,7 @@ static void init_irq_stacks(void)
 }
 #endif /* CONFIG_VMAP_STACK */
 
-#ifdef CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK
+#ifdef CONFIG_SOFTIRQ_ON_OWN_STACK
 void do_softirq_own_stack(void)
 {
 #ifdef CONFIG_IRQ_STACKS
-- 
2.34.1
Re: [PATCH] modify CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK in riscv irq.c file
Posted by Conor Dooley 2 years, 5 months ago
On Wed, Sep 06, 2023 at 02:24:14PM +0800, Jiexun Wang wrote:

$subject: modify CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK in riscv irq.c file

Please use a subject line that matches others used by the subsystem.
I guess in this case it would be something along the lines of:
RISC-V: Fix use of non existent CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK

> If configuration options SOFTIRQ_ON_OWN_STACK and PREEMPT_RT 
> are enabled simultaneously under RISC-V architecture,
> it will result in a compilation failure:
> 
> arch/riscv/kernel/irq.c:64:6: error: redefinition of 'do_softirq_own_stack'
>    64 | void do_softirq_own_stack(void)
>       |      ^~~~~~~~~~~~~~~~~~~~
> In file included from ./arch/riscv/include/generated/asm/softirq_stack.h:1,
>                  from arch/riscv/kernel/irq.c:15:
> ./include/asm-generic/softirq_stack.h:8:20: note: previous definition of 'do_softirq_own_stack' was here
>     8 | static inline void do_softirq_own_stack(void)
>       |                    ^~~~~~~~~~~~~~~~~~~~
>       
> After changing CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK to CONFIG_SOFTIRQ_ON_OWN_STACK,
> compilation can be successful.
> 
> Signed-off-by: Jiexun Wang <wangjiexun@tinylab.org>

What commit does this fix? Please add a Fixes tag pointing to it.

Thanks,
Conor.

> ---
>  arch/riscv/kernel/irq.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/riscv/kernel/irq.c b/arch/riscv/kernel/irq.c
> index a8efa053c4a5..a86f272ae2c3 100644
> --- a/arch/riscv/kernel/irq.c
> +++ b/arch/riscv/kernel/irq.c
> @@ -60,7 +60,7 @@ static void init_irq_stacks(void)
>  }
>  #endif /* CONFIG_VMAP_STACK */
>  
> -#ifdef CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK
> +#ifdef CONFIG_SOFTIRQ_ON_OWN_STACK
>  void do_softirq_own_stack(void)
>  {
>  #ifdef CONFIG_IRQ_STACKS
> -- 
> 2.34.1
>