Messages in this thread | | | Date | Mon, 14 Mar 2022 15:35:04 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH 0/3] rcu: synchronize_rcu[_expedited]() related fixes |
| |
On Mon, Mar 14, 2022 at 01:26:10PM -0700, Paul E. McKenney wrote: > On Mon, Mar 14, 2022 at 02:37:35PM +0100, Frederic Weisbecker wrote: > > > > A few fixes especially for expedited GP polling causing a stall on TREE07, > > as reported by Paul. > > > > We may still want to optimize start_poll_synchronize_rcu_expedited() on > > UP-no-preempt but I think Paul may be implying this while doing other > > fixes. > > > > git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git > > rcu/dev > > > > HEAD: 6e5fd7e614fd5c8f0fffeaa140b7ea697bfeb096 > > > > Thanks, > > Frederic > > I have pulled these in for review and testing, thank you!!! I have > started a ~90-minute test and will let you know how that goes.
And TREE05 doesn't like this much. I get too-short grace periods. TREE05 is unusual in being the one with the kernel build with CONFIG_PREEMPT_NONE=y but also with CONFIG_PREEMPT_DYNAMIC=n.
Running tests of the commits individually.
Thanx, Paul
> > --- > > > > Frederic Weisbecker (2): > > rcu: Fix expedited GP polling against UP/no-preempt environment > > I have some concerns with this one due to the fact that it acquires locks > in cases where the old code would not. (I did have problems with this > in both recent SRCU changes and the normal-grace-period counterpart to > this series.) > > But let's see what rcutorture and kbuild test robot think about it. > > > rcu: Fix preemption mode check on synchronize_rcu[_expedited]() > > This one looks good. > > > Valentin Schneider (1): > > preempt/dynamic: Introduce preempt mode accessors > > I am guessing that this one is a compact placeholder for my convenience > (in which case thank you!). I will be marking it "EXP" on my next rebase. > > Thanx, Paul > > > include/linux/sched.h | 16 +++++++++++++++ > > kernel/rcu/tree.c | 2 +- > > kernel/rcu/tree_exp.h | 57 +++++++++++++++++++++++++++++++-------------------- > > kernel/sched/core.c | 11 ++++++++++ > > 4 files changed, 63 insertions(+), 23 deletions(-)
| |