[PATCH] rcu-tasks: Rename tasks_rcu_exit_srcu_stall_timer to tasks_rcu_exit_stall_timer

Zqiang posted 1 patch 4 days, 16 hours ago
kernel/rcu/tasks.h | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
[PATCH] rcu-tasks: Rename tasks_rcu_exit_srcu_stall_timer to tasks_rcu_exit_stall_timer
Posted by Zqiang 4 days, 16 hours ago
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 <qiang.zhang@linux.dev>
---
 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
Re: [PATCH] rcu-tasks: Rename tasks_rcu_exit_srcu_stall_timer to tasks_rcu_exit_stall_timer
Posted by Paul E. McKenney 2 days, 4 hours ago
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 <qiang.zhang@linux.dev>

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
>