mbox series

[v5,0/4] Reduce synchronize_rcu() latency(v5)

Message ID 20240220183115.74124-1-urezki@gmail.com (mailing list archive)
Headers show
Series Reduce synchronize_rcu() latency(v5) | expand

Message

Uladzislau Rezki Feb. 20, 2024, 6:31 p.m. UTC
This is a v5 that tends to improve synchronize_rcu() call in terms of
latency reduction. This has been developed together with Neeraj Upadhyay.
The delta between previous v4 and v5 is rather small. Main difference
are cosmetic changes related to patch squashing and data structures
splitting.

It is based on Paul's dev branch.

v4 -> v5:
 - furthers squashing to reduce number of patches;
 - remove the CONFIG_RCU_SR_NORMAL_DEBUG_GP Kconfig option and
   reuse already existing debug option which is CONFIG_PROVE_RCU;
 - add data structures in a separate patch.

v4: https://lore.kernel.org/lkml/ZZ2bi5iPwXLgjB-f@google.com/T/
v3: https://lore.kernel.org/lkml/cd45b0b5-f86b-43fb-a5f3-47d340cd4f9f@paulmck-laptop/T/
v2: https://lore.kernel.org/all/20231030131254.488186-1-urezki@gmail.com/T/
v1: https://lore.kernel.org/lkml/20231025140915.590390-1-urezki@gmail.com/T/

Uladzislau Rezki (Sony) (4):
  rcu: Add data structures for synchronize_rcu()
  rcu: Reduce synchronize_rcu() latency
  rcu: Add a trace event for synchronize_rcu_normal()
  rcu: Support direct wake-up of synchronize_rcu() users

 .../admin-guide/kernel-parameters.txt         |  14 +
 include/trace/events/rcu.h                    |  27 ++
 kernel/rcu/tree.c                             | 363 +++++++++++++++++-
 kernel/rcu/tree.h                             |  20 +
 kernel/rcu/tree_exp.h                         |   2 +-
 5 files changed, 424 insertions(+), 2 deletions(-)

Comments

Paul E. McKenney Feb. 21, 2024, 1:53 a.m. UTC | #1
On Tue, Feb 20, 2024 at 07:31:11PM +0100, Uladzislau Rezki (Sony) wrote:
> This is a v5 that tends to improve synchronize_rcu() call in terms of
> latency reduction. This has been developed together with Neeraj Upadhyay.
> The delta between previous v4 and v5 is rather small. Main difference
> are cosmetic changes related to patch squashing and data structures
> splitting.
> 
> It is based on Paul's dev branch.

Very good, thank you!

Queued for further review and testing.

							Thanx, Paul

> v4 -> v5:
>  - furthers squashing to reduce number of patches;
>  - remove the CONFIG_RCU_SR_NORMAL_DEBUG_GP Kconfig option and
>    reuse already existing debug option which is CONFIG_PROVE_RCU;
>  - add data structures in a separate patch.
> 
> v4: https://lore.kernel.org/lkml/ZZ2bi5iPwXLgjB-f@google.com/T/
> v3: https://lore.kernel.org/lkml/cd45b0b5-f86b-43fb-a5f3-47d340cd4f9f@paulmck-laptop/T/
> v2: https://lore.kernel.org/all/20231030131254.488186-1-urezki@gmail.com/T/
> v1: https://lore.kernel.org/lkml/20231025140915.590390-1-urezki@gmail.com/T/
> 
> Uladzislau Rezki (Sony) (4):
>   rcu: Add data structures for synchronize_rcu()
>   rcu: Reduce synchronize_rcu() latency
>   rcu: Add a trace event for synchronize_rcu_normal()
>   rcu: Support direct wake-up of synchronize_rcu() users
> 
>  .../admin-guide/kernel-parameters.txt         |  14 +
>  include/trace/events/rcu.h                    |  27 ++
>  kernel/rcu/tree.c                             | 363 +++++++++++++++++-
>  kernel/rcu/tree.h                             |  20 +
>  kernel/rcu/tree_exp.h                         |   2 +-
>  5 files changed, 424 insertions(+), 2 deletions(-)
> 
> -- 
> 2.39.2
>