[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aLeiBGeUj5nHBlK1@xsang-OptiPlex-9020>
Date: Wed, 3 Sep 2025 10:03:48 +0800
From: Oliver Sang <oliver.sang@...el.com>
To: "Paul E. McKenney" <paulmck@...nel.org>
CC: <oe-lkp@...ts.linux.dev>, <lkp@...el.com>, Andrii Nakryiko
<andrii@...nel.org>, Alexei Starovoitov <ast@...nel.org>, Peter Zijlstra
<peterz@...radead.org>, <rcu@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <oliver.sang@...el.com>
Subject: Re: [paulmckrcu:dev.2025.08.21a] [rcu] 8bd9383727:
WARNING:possible_circular_locking_dependency_detected
hi, Paul,
On Fri, Aug 29, 2025 at 10:23:17AM -0700, Paul E. McKenney wrote:
[...]
> Again, apologies for being slow, and thank you for your testing efforts.
>
> Idiot here forgot about Tiny SRCU, so please see the end of this email
> for an alleged fix. Does it do the trick for you?
besides the patch [1] as in the end part of mail, we noticed you also have a
patch in [2]. I don't have enough knowledge to follow the dicussion between
you and Zqiang well. it just seems to me both patches are fixes which should
be squashed into original patch?
I made below applyment:
* e5ab29c09c470e squash! rcu: Re-implement RCU Tasks Trace in terms of SRCU-fast <--- patch in [2]
* f717bca99dfb15 1st fix patch for 8bd9383727 from Paul <--- patch in [1]
* 8bd9383727068a rcu: Re-implement RCU Tasks Trace in terms of SRCU-fast
by testing, the issue "WARNING:possible_circular_locking_dependency_detected"
cannot be reproduced on both f717bca99dfb15 and e5ab29c09c470e
sorry if I miss or misunderstood something, otherwise,
Tested-by: kernel test robot <oliver.sang@...el.com>
>
> Thanx, Paul
>
> > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > the same patch/commit), kindly add following tags
> > | Reported-by: kernel test robot <oliver.sang@...el.com>
> > | Closes: https://lore.kernel.org/oe-lkp/202508261642.b15eefbb-lkp@intel.com
[...]
> > The kernel config and materials to reproduce are available at:
> > https://download.01.org/0day-ci/archive/20250826/202508261642.b15eefbb-lkp@intel.com
> > --
> > 0-DAY CI Kernel Test Service
> > https://github.com/intel/lkp-tests/wiki
>
[1]
> ------------------------------------------------------------------------
>
> diff --git a/kernel/rcu/srcutiny.c b/kernel/rcu/srcutiny.c
> index 6e9fe2ce1075d5..db63378f062051 100644
> --- a/kernel/rcu/srcutiny.c
> +++ b/kernel/rcu/srcutiny.c
> @@ -106,7 +106,7 @@ void __srcu_read_unlock(struct srcu_struct *ssp, int idx)
> newval = READ_ONCE(ssp->srcu_lock_nesting[idx]) - 1;
> WRITE_ONCE(ssp->srcu_lock_nesting[idx], newval);
> preempt_enable();
> - if (!newval && READ_ONCE(ssp->srcu_gp_waiting) && in_task())
> + if (!newval && READ_ONCE(ssp->srcu_gp_waiting) && in_task() && !irqs_disabled())
> swake_up_one(&ssp->srcu_wq);
> }
> EXPORT_SYMBOL_GPL(__srcu_read_unlock);
>
[2] https://lore.kernel.org/all/8f43f958-e3e6-44d5-9600-9e096c3a06b7@paulmck-laptop/
Powered by blists - more mailing lists