public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] RCU docs updates for v6.7
@ 2023-10-10 11:10 Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 1/3] Documentation: RCU: Fix section numbers after adding Section 7 in whatisRCU.rst Frederic Weisbecker
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Frederic Weisbecker @ 2023-10-10 11:10 UTC (permalink / raw)
  To: LKML
  Cc: Frederic Weisbecker, Boqun Feng, Joel Fernandes, Josh Triplett,
	Mathieu Desnoyers, Neeraj Upadhyay, Paul E . McKenney,
	Steven Rostedt, Uladzislau Rezki, rcu

Hello,

This series contains RCU documentation updates:

1. RCU: Fix section numbers after adding Section 7 in whatisRCU.rst

2. Describe listRCU read-side guarantees

3. Remove references to rcu_migrate_callbacks() from diagrams

Thanks,
        Frederic.

 .../Design/Memory-Ordering/TreeRCU-callback-registry.svg | 9 ---------
 Documentation/RCU/Design/Memory-Ordering/TreeRCU-gp.svg  | 9 ---------
 Documentation/RCU/listRCU.rst                            | 9 +++++++++
 Documentation/RCU/whatisRCU.rst                          | 4 ++--
 4 files changed, 11 insertions(+), 20 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/3] Documentation: RCU: Fix section numbers after adding Section 7 in whatisRCU.rst
  2023-10-10 11:10 [PATCH 0/3] RCU docs updates for v6.7 Frederic Weisbecker
@ 2023-10-10 11:10 ` Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 2/3] rcu: Describe listRCU read-side guarantees Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 3/3] rcu: Remove references to rcu_migrate_callbacks() from diagrams Frederic Weisbecker
  2 siblings, 0 replies; 4+ messages in thread
From: Frederic Weisbecker @ 2023-10-10 11:10 UTC (permalink / raw)
  To: LKML
  Cc: Wei Zhang, Boqun Feng, Joel Fernandes, Josh Triplett,
	Mathieu Desnoyers, Neeraj Upadhyay, Paul E . McKenney,
	Steven Rostedt, Uladzislau Rezki, rcu, Randy Dunlap,
	Frederic Weisbecker

From: Wei Zhang <zhangweilst@gmail.com>

Signed-off-by: Wei Zhang <zhangweilst@gmail.com>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
---
 Documentation/RCU/whatisRCU.rst | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/RCU/whatisRCU.rst b/Documentation/RCU/whatisRCU.rst
index e488c8e557a9..60ce02475142 100644
--- a/Documentation/RCU/whatisRCU.rst
+++ b/Documentation/RCU/whatisRCU.rst
@@ -59,8 +59,8 @@ experiment with should focus on Section 2.  People who prefer to start
 with example uses should focus on Sections 3 and 4.  People who need to
 understand the RCU implementation should focus on Section 5, then dive
 into the kernel source code.  People who reason best by analogy should
-focus on Section 6.  Section 7 serves as an index to the docbook API
-documentation, and Section 8 is the traditional answer key.
+focus on Section 6 and 7.  Section 8 serves as an index to the docbook
+API documentation, and Section 9 is the traditional answer key.
 
 So, start with the section that makes the most sense to you and your
 preferred method of learning.  If you need to know everything about
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/3] rcu: Describe listRCU read-side guarantees
  2023-10-10 11:10 [PATCH 0/3] RCU docs updates for v6.7 Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 1/3] Documentation: RCU: Fix section numbers after adding Section 7 in whatisRCU.rst Frederic Weisbecker
@ 2023-10-10 11:10 ` Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 3/3] rcu: Remove references to rcu_migrate_callbacks() from diagrams Frederic Weisbecker
  2 siblings, 0 replies; 4+ messages in thread
From: Frederic Weisbecker @ 2023-10-10 11:10 UTC (permalink / raw)
  To: LKML
  Cc: Matthew Wilcox (Oracle), Boqun Feng, Joel Fernandes,
	Josh Triplett, Mathieu Desnoyers, Neeraj Upadhyay,
	Paul E . McKenney, Steven Rostedt, Uladzislau Rezki, rcu,
	Frederic Weisbecker

From: "Matthew Wilcox (Oracle)" <willy@infradead.org>

More explicitly state what is, and what is not guaranteed to those
who iterate a list while protected by RCU.

[ paulmck: Apply Joel Fernandes feedback. ]

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
---
 Documentation/RCU/listRCU.rst | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Documentation/RCU/listRCU.rst b/Documentation/RCU/listRCU.rst
index bdc4bcc5289f..ed5c9d8c9afe 100644
--- a/Documentation/RCU/listRCU.rst
+++ b/Documentation/RCU/listRCU.rst
@@ -8,6 +8,15 @@ One of the most common uses of RCU is protecting read-mostly linked lists
 that all of the required memory ordering is provided by the list macros.
 This document describes several list-based RCU use cases.
 
+When iterating a list while holding the rcu_read_lock(), writers may
+modify the list.  The reader is guaranteed to see all of the elements
+which were added to the list before they acquired the rcu_read_lock()
+and are still on the list when they drop the rcu_read_unlock().
+Elements which are added to, or removed from the list may or may not
+be seen.  If the writer calls list_replace_rcu(), the reader may see
+either the old element or the new element; they will not see both,
+nor will they see neither.
+
 
 Example 1: Read-mostly list: Deferred Destruction
 -------------------------------------------------
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 3/3] rcu: Remove references to rcu_migrate_callbacks() from diagrams
  2023-10-10 11:10 [PATCH 0/3] RCU docs updates for v6.7 Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 1/3] Documentation: RCU: Fix section numbers after adding Section 7 in whatisRCU.rst Frederic Weisbecker
  2023-10-10 11:10 ` [PATCH 2/3] rcu: Describe listRCU read-side guarantees Frederic Weisbecker
@ 2023-10-10 11:10 ` Frederic Weisbecker
  2 siblings, 0 replies; 4+ messages in thread
From: Frederic Weisbecker @ 2023-10-10 11:10 UTC (permalink / raw)
  To: LKML
  Cc: Frederic Weisbecker, Boqun Feng, Joel Fernandes, Josh Triplett,
	Mathieu Desnoyers, Neeraj Upadhyay, Paul E . McKenney,
	Steven Rostedt, Uladzislau Rezki, rcu

This function is gone since:

	53b46303da84 (rcu: Remove rsp parameter from rcu_boot_init_percpu_data() and friends)

Reviewed-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
---
 .../Design/Memory-Ordering/TreeRCU-callback-registry.svg | 9 ---------
 Documentation/RCU/Design/Memory-Ordering/TreeRCU-gp.svg  | 9 ---------
 2 files changed, 18 deletions(-)

diff --git a/Documentation/RCU/Design/Memory-Ordering/TreeRCU-callback-registry.svg b/Documentation/RCU/Design/Memory-Ordering/TreeRCU-callback-registry.svg
index 7ac6f9269806..63eff867175a 100644
--- a/Documentation/RCU/Design/Memory-Ordering/TreeRCU-callback-registry.svg
+++ b/Documentation/RCU/Design/Memory-Ordering/TreeRCU-callback-registry.svg
@@ -564,15 +564,6 @@
        font-size="192"
        id="text202-7-9-6"
        style="font-size:192px;font-style:normal;font-weight:bold;text-anchor:start;fill:#000000;stroke-width:0.025in;font-family:Courier">rcutree_migrate_callbacks()</text>
-    <text
-       xml:space="preserve"
-       x="8335.4873"
-       y="5357.1006"
-       font-style="normal"
-       font-weight="bold"
-       font-size="192"
-       id="text202-7-9-6-0"
-       style="font-size:192px;font-style:normal;font-weight:bold;text-anchor:start;fill:#000000;stroke-width:0.025in;font-family:Courier">rcu_migrate_callbacks()</text>
     <text
        xml:space="preserve"
        x="8768.4678"
diff --git a/Documentation/RCU/Design/Memory-Ordering/TreeRCU-gp.svg b/Documentation/RCU/Design/Memory-Ordering/TreeRCU-gp.svg
index 069f6f8371c2..e4a66f8e92c5 100644
--- a/Documentation/RCU/Design/Memory-Ordering/TreeRCU-gp.svg
+++ b/Documentation/RCU/Design/Memory-Ordering/TreeRCU-gp.svg
@@ -1446,15 +1446,6 @@
        font-size="192"
        id="text202-7-9-6"
        style="font-size:192px;font-style:normal;font-weight:bold;text-anchor:start;fill:#000000;stroke-width:0.025in;font-family:Courier">rcutree_migrate_callbacks()</text>
-    <text
-       xml:space="preserve"
-       x="8335.4873"
-       y="5357.1006"
-       font-style="normal"
-       font-weight="bold"
-       font-size="192"
-       id="text202-7-9-6-0"
-       style="font-size:192px;font-style:normal;font-weight:bold;text-anchor:start;fill:#000000;stroke-width:0.025in;font-family:Courier">rcu_migrate_callbacks()</text>
     <text
        xml:space="preserve"
        x="8768.4678"
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-10-10 11:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-10 11:10 [PATCH 0/3] RCU docs updates for v6.7 Frederic Weisbecker
2023-10-10 11:10 ` [PATCH 1/3] Documentation: RCU: Fix section numbers after adding Section 7 in whatisRCU.rst Frederic Weisbecker
2023-10-10 11:10 ` [PATCH 2/3] rcu: Describe listRCU read-side guarantees Frederic Weisbecker
2023-10-10 11:10 ` [PATCH 3/3] rcu: Remove references to rcu_migrate_callbacks() from diagrams Frederic Weisbecker

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox