Re: [PATCH] rcu-tasks: Rename tasks_rcu_exit_srcu_stall_timer to tasks_rcu_exit_stall_timer

"Paul E. McKenney" <[email protected]> Wed, 22 Jul 2026 14:53:28 -0700
Newsgroups org.kernel.vger.rcu,org.kernel.vger.linux-kernel
Message-ID <a29d33bd-98db-4fff-b2b0-c5b4db0d5f4a@paulmck-laptop>
On Mon, Jul 20, 2026 at 05:49:58PM +0800, Zqiang wrote:
> This 'commit 1612160b9127 ("rcu-tasks: Eliminate deadlocks involving
> do_exit() and RCU tasks")' has reimplemented the rcu_tasks_postscan(),
> and the synchronize_srcu() has been removed, this commit therefore
> rename tasks_rcu_exit_srcu_stall_timer to tasks_rcu_exit_stall_timer.
> 
> Signed-off-by: Zqiang <[email protected]>

Looks good, thank you!

I have pulled in this one and these two for further review and testing:

d5dc5dcbb734 ("rcu-tasks: Fix some comments for call_rcu_tasks() and call_rcu_tasks_rude()")
2e0af5dcb796 ("rcu: Remove unused rdp parameter from rcu_check_gp_start_stallZ()")

There is some chance of these making the upcoming v7.3 merge window,
but no promises.

							Thanx, Paul

> ---
>  kernel/rcu/tasks.h | 16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/kernel/rcu/tasks.h b/kernel/rcu/tasks.h
> index ff803871b577..23c6a2fed487 100644
> --- a/kernel/rcu/tasks.h
> +++ b/kernel/rcu/tasks.h
> @@ -155,8 +155,8 @@ static struct rcu_tasks rt_name =							\
>  #ifdef CONFIG_TASKS_RCU
>  
>  /* Report delay of scan exiting tasklist in rcu_tasks_postscan(). */
> -static void tasks_rcu_exit_srcu_stall(struct timer_list *unused);
> -static DEFINE_TIMER(tasks_rcu_exit_srcu_stall_timer, tasks_rcu_exit_srcu_stall);
> +static void tasks_rcu_exit_stall(struct timer_list *unused);
> +static DEFINE_TIMER(tasks_rcu_exit_stall_timer, tasks_rcu_exit_stall);
>  #endif
>  
>  /* Control stall timeouts.  Disable with <= 0, otherwise jiffies till stall. */
> @@ -1032,8 +1032,8 @@ static void rcu_tasks_postscan(struct list_head *hop)
>  	int rtsi = READ_ONCE(rcu_task_stall_info);
>  
>  	if (!IS_ENABLED(CONFIG_TINY_RCU)) {
> -		tasks_rcu_exit_srcu_stall_timer.expires = jiffies + rtsi;
> -		add_timer(&tasks_rcu_exit_srcu_stall_timer);
> +		tasks_rcu_exit_stall_timer.expires = jiffies + rtsi;
> +		add_timer(&tasks_rcu_exit_stall_timer);
>  	}
>  
>  	/*
> @@ -1086,7 +1086,7 @@ static void rcu_tasks_postscan(struct list_head *hop)
>  	}
>  
>  	if (!IS_ENABLED(CONFIG_TINY_RCU))
> -		timer_delete_sync(&tasks_rcu_exit_srcu_stall_timer);
> +		timer_delete_sync(&tasks_rcu_exit_stall_timer);
>  }
>  
>  /* See if tasks are still holding out, complain if so. */
> @@ -1158,7 +1158,7 @@ static void rcu_tasks_postgp(struct rcu_tasks *rtp)
>  	synchronize_rcu();
>  }
>  
> -static void tasks_rcu_exit_srcu_stall(struct timer_list *unused)
> +static void tasks_rcu_exit_stall(struct timer_list *unused)
>  {
>  #ifndef CONFIG_TINY_RCU
>  	int rtsi;
> @@ -1168,8 +1168,8 @@ static void tasks_rcu_exit_srcu_stall(struct timer_list *unused)
>  		__func__, rcu_tasks.kname, rcu_tasks.tasks_gp_seq,
>  		tasks_gp_state_getname(&rcu_tasks), jiffies - rcu_tasks.gp_jiffies);
>  	pr_info("Please check any exiting tasks stuck between calls to exit_tasks_rcu_start() and exit_tasks_rcu_finish()\n");
> -	tasks_rcu_exit_srcu_stall_timer.expires = jiffies + rtsi;
> -	add_timer(&tasks_rcu_exit_srcu_stall_timer);
> +	tasks_rcu_exit_stall_timer.expires = jiffies + rtsi;
> +	add_timer(&tasks_rcu_exit_stall_timer);
>  #endif // #ifndef CONFIG_TINY_RCU
>  }
>  
> -- 
> 2.17.1
>