[PATCH v3 0/2] Add no-idle tasks check which in dyntick-idle state

Zqiang posted 2 patches 1 month ago
kernel/rcu/tasks.h | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
[PATCH v3 0/2] Add no-idle tasks check which in dyntick-idle state
Posted by Zqiang 1 month ago
These commit stop scanning no-idle tasks which in dyntick-idle state and
remove idle-tasks check from warnings.

v1->v2:
fix build error when CONFIG_TASKS_RCU=n
v2->v3:
remove idle-tasks check from task_is_on_dyntick_idle()

Zqiang (2):
  rcu-tasks: Stop RCU Tasks scanning no-idle tasks which record on
    dyntick-idle entry
  rcu-tasks: Remove is_idle_task() from warnings in check_holdout_task()

 kernel/rcu/tasks.h | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

-- 
2.25.1
Re: [PATCH v3 0/2] Add no-idle tasks check which in dyntick-idle state
Posted by Paul E. McKenney 1 month ago
On Tue, May 24, 2022 at 08:34:52AM +0800, Zqiang wrote:
> These commit stop scanning no-idle tasks which in dyntick-idle state and
> remove idle-tasks check from warnings.

This patch might well be correct, but there are supposed to be upcoming
changes in the idle loop that would make it possible for RCU Tasks to
take idle tasks into account:

https://lore.kernel.org/all/20220515203653.4039075-1-jolsa@kernel.org/

There are currently issues in amd_e400_idle() and mwait_idle() preventing
this, and there might well also be similar issues in non-x86 idle loops:

https://lore.kernel.org/all/20220519135439.GX1790663@paulmck-ThinkPad-P17-Gen-1/

So I must hold off on this patch series for the time being.  Nevertheless,
thank you very much for your effort and interest in RCU.

							Thanx, Paul

> v1->v2:
> fix build error when CONFIG_TASKS_RCU=n
> v2->v3:
> remove idle-tasks check from task_is_on_dyntick_idle()
> 
> Zqiang (2):
>   rcu-tasks: Stop RCU Tasks scanning no-idle tasks which record on
>     dyntick-idle entry
>   rcu-tasks: Remove is_idle_task() from warnings in check_holdout_task()
> 
>  kernel/rcu/tasks.h | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
> 
> -- 
> 2.25.1
>
RE: [PATCH v3 0/2] Add no-idle tasks check which in dyntick-idle state
Posted by Zhang, Qiang1 1 month ago
On Tue, May 24, 2022 at 08:34:52AM +0800, Zqiang wrote:
> These commit stop scanning no-idle tasks which in dyntick-idle state 
> and remove idle-tasks check from warnings.

>This patch might well be correct, but there are supposed to be upcoming changes in the idle loop that would make it possible for RCU Tasks to take idle tasks into account:
>
>https://lore.kernel.org/all/20220515203653.4039075-1-jolsa@kernel.org/
>
>There are currently issues in amd_e400_idle() and mwait_idle() preventing this, and there might well also be similar issues in non-x86 idle loops:
>
>https://lore.kernel.org/all/20220519135439.GX1790663@paulmck-ThinkPad-P17-Gen-1/
>
>So I must hold off on this patch series for the time being.  Nevertheless, thank you very much for your effort and interest in RCU.

Thanks for explain, I will keep an eye.

>
>							Thanx, Paul

> v1->v2:
> fix build error when CONFIG_TASKS_RCU=n
> v2->v3:
> remove idle-tasks check from task_is_on_dyntick_idle()
> 
> Zqiang (2):
>   rcu-tasks: Stop RCU Tasks scanning no-idle tasks which record on
>     dyntick-idle entry
>   rcu-tasks: Remove is_idle_task() from warnings in 
> check_holdout_task()
> 
>  kernel/rcu/tasks.h | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
> 
> --
> 2.25.1
>