Message ID | 20240914090040.166671-1-ryotkkr98@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: Remove the check for CONFIG_TINY_RCU | expand |
On Sat, Sep 14, 2024 at 06:00:40PM +0900, Ryo Takakura wrote: > Since the commit 4b3dc9679cf77 ("arm64: force CONFIG_SMP=y and remove > redundant #ifdefs"), arm64 defaults to CONFIG_SMP but TINY_RCU is cofigured > only for !SMP systems. > > Remove the check for CONFIG_TINY_RCU as it should always be false. > > Signed-off-by: Ryo Takakura <ryotkkr98@gmail.com> > --- > arch/arm64/kernel/entry-common.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm64/kernel/entry-common.c b/arch/arm64/kernel/entry-common.c > index b77a15955f28..a9765364fc67 100644 > --- a/arch/arm64/kernel/entry-common.c > +++ b/arch/arm64/kernel/entry-common.c > @@ -40,7 +40,7 @@ static __always_inline void __enter_from_kernel_mode(struct pt_regs *regs) > { > regs->exit_rcu = false; > > - if (!IS_ENABLED(CONFIG_TINY_RCU) && is_idle_task(current)) { > + if (is_idle_task(current)) { > lockdep_hardirqs_off(CALLER_ADDR0); > ct_irq_enter(); > trace_hardirqs_off_finish(); I think this code was deliberately written to follow kernel/entry/common.c as closely as possible, as we should be able to switch over to that at some point. Come to think of it, Mark, what work is needed before we can move to the generic code? Is there anything you need a hand with? Will
Hi Will, On 2024-10-14, Will Deacon wrote: >On Sat, Sep 14, 2024 at 06:00:40PM +0900, Ryo Takakura wrote: >> Since the commit 4b3dc9679cf77 ("arm64: force CONFIG_SMP=y and remove >> redundant #ifdefs"), arm64 defaults to CONFIG_SMP but TINY_RCU is cofigured >> only for !SMP systems. >> >> Remove the check for CONFIG_TINY_RCU as it should always be false. >> >> Signed-off-by: Ryo Takakura <ryotkkr98@gmail.com> >> --- >> arch/arm64/kernel/entry-common.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/arm64/kernel/entry-common.c b/arch/arm64/kernel/entry-common.c >> index b77a15955f28..a9765364fc67 100644 >> --- a/arch/arm64/kernel/entry-common.c >> +++ b/arch/arm64/kernel/entry-common.c >> @@ -40,7 +40,7 @@ static __always_inline void __enter_from_kernel_mode(struct pt_regs *regs) >> { >> regs->exit_rcu = false; >> >> - if (!IS_ENABLED(CONFIG_TINY_RCU) && is_idle_task(current)) { >> + if (is_idle_task(current)) { >> lockdep_hardirqs_off(CALLER_ADDR0); >> ct_irq_enter(); >> trace_hardirqs_off_finish(); > >I think this code was deliberately written to follow kernel/entry/common.c >as closely as possible, as we should be able to switch over to that at >some point. Oh I see, thanks for taking a look at the patch! >Come to think of it, Mark, what work is needed before we can move to the >generic code? Is there anything you need a hand with? > >Will If there is anything I can be of help, let me know! Sincerely, Ryo Takakura
diff --git a/arch/arm64/kernel/entry-common.c b/arch/arm64/kernel/entry-common.c index b77a15955f28..a9765364fc67 100644 --- a/arch/arm64/kernel/entry-common.c +++ b/arch/arm64/kernel/entry-common.c @@ -40,7 +40,7 @@ static __always_inline void __enter_from_kernel_mode(struct pt_regs *regs) { regs->exit_rcu = false; - if (!IS_ENABLED(CONFIG_TINY_RCU) && is_idle_task(current)) { + if (is_idle_task(current)) { lockdep_hardirqs_off(CALLER_ADDR0); ct_irq_enter(); trace_hardirqs_off_finish();
Since the commit 4b3dc9679cf77 ("arm64: force CONFIG_SMP=y and remove redundant #ifdefs"), arm64 defaults to CONFIG_SMP but TINY_RCU is cofigured only for !SMP systems. Remove the check for CONFIG_TINY_RCU as it should always be false. Signed-off-by: Ryo Takakura <ryotkkr98@gmail.com> --- arch/arm64/kernel/entry-common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)