* [PATCH] docs: fix typo and drop dead link in RCU/checklist.txt
@ 2020-11-28 14:55 Paul Gortmaker
2020-11-28 20:32 ` [PATCH v2] docs: fix typos and drop/fix dead links in RCU documentation Paul Gortmaker
0 siblings, 1 reply; 3+ messages in thread
From: Paul Gortmaker @ 2020-11-28 14:55 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: linux-doc, Paul Gortmaker
It appears the Compaq link moved to a machine at HP for a while:
http://h71000.www7.hp.com/wizard/wiz_2637.html
after the merger of the two, but that doesn't work either. A search
of HP for "wiz_2637" (w and w/o html suffix) comes up empty.
Since the reference isn't critical to the document - just remove it.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
diff --git a/Documentation/RCU/checklist.rst b/Documentation/RCU/checklist.rst
index bb7128eb322e..f560785ad581 100644
--- a/Documentation/RCU/checklist.rst
+++ b/Documentation/RCU/checklist.rst
@@ -70,7 +70,7 @@ over a rather long period of time, but improvements are always welcome!
is less readable and prevents lockdep from detecting locking issues.
Letting RCU-protected pointers "leak" out of an RCU read-side
- critical section is every bid as bad as letting them leak out
+ critical section is every bit as bad as letting them leak out
from under a lock. Unless, of course, you have arranged some
other means of protection, such as a lock or a reference count
-before- letting them out of the RCU read-side critical section.
@@ -129,9 +129,7 @@ over a rather long period of time, but improvements are always welcome!
accesses. The rcu_dereference() primitive ensures that
the CPU picks up the pointer before it picks up the data
that the pointer points to. This really is necessary
- on Alpha CPUs. If you don't believe me, see:
-
- http://www.openvms.compaq.com/wizard/wiz_2637.html
+ on Alpha CPUs.
The rcu_dereference() primitive is also an excellent
documentation aid, letting the person reading the
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH v2] docs: fix typos and drop/fix dead links in RCU documentation
2020-11-28 14:55 [PATCH] docs: fix typo and drop dead link in RCU/checklist.txt Paul Gortmaker
@ 2020-11-28 20:32 ` Paul Gortmaker
2020-11-29 3:31 ` Paul E. McKenney
0 siblings, 1 reply; 3+ messages in thread
From: Paul Gortmaker @ 2020-11-28 20:32 UTC (permalink / raw)
To: Paul E. McKenney
Cc: linux-doc, Paul Gortmaker, Michael Opdenacker, Steven Rostedt,
Paul E. McKenney
It appears the Compaq link moved to a machine at HP for a while
after the merger of the two, but that doesn't work either. A search
of HP for "wiz_2637" (w and w/o html suffix) comes up empty.
Since the references aren't critical to the documents we remove them.
Also, the lkml.kernel.org/g links have been broken for ages, so replace
them with lore.kernel.org/r links - standardize on lore for all links too.
Note that we put off fixing these 4y ago - presumably thinking that a
treewide fixup was pending. Probably safe to go fix the RCU ones now.
https://lore.kernel.org/r/20160915144926.GD10850@linux.vnet.ibm.com/
Cc: Michael Opdenacker <michael.opdenacker@free-electrons.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
[v2: 2nd dead Alpha link found; also fixup the lkml --> lore links.]
.../RCU/Design/Requirements/Requirements.rst | 23 +++++++++----------
Documentation/RCU/checklist.rst | 8 +++----
2 files changed, 14 insertions(+), 17 deletions(-)
diff --git a/Documentation/RCU/Design/Requirements/Requirements.rst b/Documentation/RCU/Design/Requirements/Requirements.rst
index 2dce79dd0eaa..4ff0f4506fbf 100644
--- a/Documentation/RCU/Design/Requirements/Requirements.rst
+++ b/Documentation/RCU/Design/Requirements/Requirements.rst
@@ -321,11 +321,10 @@ do_something_gp_buggy() below:
12 }
However, this temptation must be resisted because there are a
-surprisingly large number of ways that the compiler (to say nothing of
-`DEC Alpha CPUs <https://h71000.www7.hp.com/wizard/wiz_2637.html>`__)
-can trip this code up. For but one example, if the compiler were short
-of registers, it might choose to refetch from ``gp`` rather than keeping
-a separate copy in ``p`` as follows:
+surprisingly large number of ways that the compiler (or weak ordering
+CPUs like the DEC Alpha) can trip this code up. For but one example, if
+the compiler were short of registers, it might choose to refetch from
+``gp`` rather than keeping a separate copy in ``p`` as follows:
::
@@ -1183,7 +1182,7 @@ costs have plummeted. However, as I learned from Matt Mackall's
`bloatwatch <http://elinux.org/Linux_Tiny-FAQ>`__ efforts, memory
footprint is critically important on single-CPU systems with
non-preemptible (``CONFIG_PREEMPT=n``) kernels, and thus `tiny
-RCU <https://lkml.kernel.org/g/20090113221724.GA15307@linux.vnet.ibm.com>`__
+RCU <https://lore.kernel.org/r/20090113221724.GA15307@linux.vnet.ibm.com>`__
was born. Josh Triplett has since taken over the small-memory banner
with his `Linux kernel tinification <https://tiny.wiki.kernel.org/>`__
project, which resulted in `SRCU <#Sleepable%20RCU>`__ becoming optional
@@ -1624,7 +1623,7 @@ against mishaps and misuse:
init_rcu_head() and cleaned up with destroy_rcu_head().
Mathieu Desnoyers made me aware of this requirement, and also
supplied the needed
- `patch <https://lkml.kernel.org/g/20100319013024.GA28456@Krystal>`__.
+ `patch <https://lore.kernel.org/r/20100319013024.GA28456@Krystal>`__.
#. An infinite loop in an RCU read-side critical section will eventually
trigger an RCU CPU stall warning splat, with the duration of
“eventually” being controlled by the ``RCU_CPU_STALL_TIMEOUT``
@@ -1716,7 +1715,7 @@ requires almost all of them be hidden behind a ``CONFIG_RCU_EXPERT``
This all should be quite obvious, but the fact remains that Linus
Torvalds recently had to
-`remind <https://lkml.kernel.org/g/CA+55aFy4wcCwaL4okTs8wXhGZ5h-ibecy_Meg9C4MNQrUnwMcg@mail.gmail.com>`__
+`remind <https://lore.kernel.org/r/CA+55aFy4wcCwaL4okTs8wXhGZ5h-ibecy_Meg9C4MNQrUnwMcg@mail.gmail.com>`__
me of this requirement.
Firmware Interface
@@ -1837,9 +1836,9 @@ NMI handlers.
The name notwithstanding, some Linux-kernel architectures can have
nested NMIs, which RCU must handle correctly. Andy Lutomirski `surprised
-me <https://lkml.kernel.org/r/CALCETrXLq1y7e_dKFPgou-FKHB6Pu-r8+t-6Ds+8=va7anBWDA@mail.gmail.com>`__
+me <https://lore.kernel.org/r/CALCETrXLq1y7e_dKFPgou-FKHB6Pu-r8+t-6Ds+8=va7anBWDA@mail.gmail.com>`__
with this requirement; he also kindly surprised me with `an
-algorithm <https://lkml.kernel.org/r/CALCETrXSY9JpW3uE6H8WYk81sg56qasA2aqmjMPsq5dOtzso=g@mail.gmail.com>`__
+algorithm <https://lore.kernel.org/r/CALCETrXSY9JpW3uE6H8WYk81sg56qasA2aqmjMPsq5dOtzso=g@mail.gmail.com>`__
that meets this requirement.
Furthermore, NMI handlers can be interrupted by what appear to RCU to be
@@ -2264,7 +2263,7 @@ more extreme measures. Returning to the ``page`` structure, the
``rcu_head`` field shares storage with a great many other structures
that are used at various points in the corresponding page's lifetime. In
order to correctly resolve certain `race
-conditions <https://lkml.kernel.org/g/1439976106-137226-1-git-send-email-kirill.shutemov@linux.intel.com>`__,
+conditions <https://lore.kernel.org/r/1439976106-137226-1-git-send-email-kirill.shutemov@linux.intel.com>`__,
the Linux kernel's memory-management subsystem needs a particular bit to
remain zero during all phases of grace-period processing, and that bit
happens to map to the bottom bit of the ``rcu_head`` structure's
@@ -2328,7 +2327,7 @@ preempted. This requirement made its presence known after users made it
clear that an earlier `real-time
patch <https://lwn.net/Articles/107930/>`__ did not meet their needs, in
conjunction with some `RCU
-issues <https://lkml.kernel.org/g/20050318002026.GA2693@us.ibm.com>`__
+issues <https://lore.kernel.org/r/20050318002026.GA2693@us.ibm.com>`__
encountered by a very early version of the -rt patchset.
In addition, RCU must make do with a sub-100-microsecond real-time
diff --git a/Documentation/RCU/checklist.rst b/Documentation/RCU/checklist.rst
index bb7128eb322e..2d1dc1deffc9 100644
--- a/Documentation/RCU/checklist.rst
+++ b/Documentation/RCU/checklist.rst
@@ -70,7 +70,7 @@ over a rather long period of time, but improvements are always welcome!
is less readable and prevents lockdep from detecting locking issues.
Letting RCU-protected pointers "leak" out of an RCU read-side
- critical section is every bid as bad as letting them leak out
+ critical section is every bit as bad as letting them leak out
from under a lock. Unless, of course, you have arranged some
other means of protection, such as a lock or a reference count
-before- letting them out of the RCU read-side critical section.
@@ -129,9 +129,7 @@ over a rather long period of time, but improvements are always welcome!
accesses. The rcu_dereference() primitive ensures that
the CPU picks up the pointer before it picks up the data
that the pointer points to. This really is necessary
- on Alpha CPUs. If you don't believe me, see:
-
- http://www.openvms.compaq.com/wizard/wiz_2637.html
+ on Alpha CPUs.
The rcu_dereference() primitive is also an excellent
documentation aid, letting the person reading the
@@ -216,7 +214,7 @@ over a rather long period of time, but improvements are always welcome!
7. As of v4.20, a given kernel implements only one RCU flavor,
which is RCU-sched for PREEMPT=n and RCU-preempt for PREEMPT=y.
If the updater uses call_rcu() or synchronize_rcu(),
- then the corresponding readers my use rcu_read_lock() and
+ then the corresponding readers may use rcu_read_lock() and
rcu_read_unlock(), rcu_read_lock_bh() and rcu_read_unlock_bh(),
or any pair of primitives that disables and re-enables preemption,
for example, rcu_read_lock_sched() and rcu_read_unlock_sched().
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2] docs: fix typos and drop/fix dead links in RCU documentation
2020-11-28 20:32 ` [PATCH v2] docs: fix typos and drop/fix dead links in RCU documentation Paul Gortmaker
@ 2020-11-29 3:31 ` Paul E. McKenney
0 siblings, 0 replies; 3+ messages in thread
From: Paul E. McKenney @ 2020-11-29 3:31 UTC (permalink / raw)
To: Paul Gortmaker; +Cc: linux-doc, Michael Opdenacker, Steven Rostedt
On Sat, Nov 28, 2020 at 03:32:59PM -0500, Paul Gortmaker wrote:
> It appears the Compaq link moved to a machine at HP for a while
> after the merger of the two, but that doesn't work either. A search
> of HP for "wiz_2637" (w and w/o html suffix) comes up empty.
>
> Since the references aren't critical to the documents we remove them.
>
> Also, the lkml.kernel.org/g links have been broken for ages, so replace
> them with lore.kernel.org/r links - standardize on lore for all links too.
>
> Note that we put off fixing these 4y ago - presumably thinking that a
> treewide fixup was pending. Probably safe to go fix the RCU ones now.
>
> https://lore.kernel.org/r/20160915144926.GD10850@linux.vnet.ibm.com/
>
> Cc: Michael Opdenacker <michael.opdenacker@free-electrons.com>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Queued for further review, thank you!
Thanx, Paul
> ---
>
> [v2: 2nd dead Alpha link found; also fixup the lkml --> lore links.]
>
> .../RCU/Design/Requirements/Requirements.rst | 23 +++++++++----------
> Documentation/RCU/checklist.rst | 8 +++----
> 2 files changed, 14 insertions(+), 17 deletions(-)
>
> diff --git a/Documentation/RCU/Design/Requirements/Requirements.rst b/Documentation/RCU/Design/Requirements/Requirements.rst
> index 2dce79dd0eaa..4ff0f4506fbf 100644
> --- a/Documentation/RCU/Design/Requirements/Requirements.rst
> +++ b/Documentation/RCU/Design/Requirements/Requirements.rst
> @@ -321,11 +321,10 @@ do_something_gp_buggy() below:
> 12 }
>
> However, this temptation must be resisted because there are a
> -surprisingly large number of ways that the compiler (to say nothing of
> -`DEC Alpha CPUs <https://h71000.www7.hp.com/wizard/wiz_2637.html>`__)
> -can trip this code up. For but one example, if the compiler were short
> -of registers, it might choose to refetch from ``gp`` rather than keeping
> -a separate copy in ``p`` as follows:
> +surprisingly large number of ways that the compiler (or weak ordering
> +CPUs like the DEC Alpha) can trip this code up. For but one example, if
> +the compiler were short of registers, it might choose to refetch from
> +``gp`` rather than keeping a separate copy in ``p`` as follows:
>
> ::
>
> @@ -1183,7 +1182,7 @@ costs have plummeted. However, as I learned from Matt Mackall's
> `bloatwatch <http://elinux.org/Linux_Tiny-FAQ>`__ efforts, memory
> footprint is critically important on single-CPU systems with
> non-preemptible (``CONFIG_PREEMPT=n``) kernels, and thus `tiny
> -RCU <https://lkml.kernel.org/g/20090113221724.GA15307@linux.vnet.ibm.com>`__
> +RCU <https://lore.kernel.org/r/20090113221724.GA15307@linux.vnet.ibm.com>`__
> was born. Josh Triplett has since taken over the small-memory banner
> with his `Linux kernel tinification <https://tiny.wiki.kernel.org/>`__
> project, which resulted in `SRCU <#Sleepable%20RCU>`__ becoming optional
> @@ -1624,7 +1623,7 @@ against mishaps and misuse:
> init_rcu_head() and cleaned up with destroy_rcu_head().
> Mathieu Desnoyers made me aware of this requirement, and also
> supplied the needed
> - `patch <https://lkml.kernel.org/g/20100319013024.GA28456@Krystal>`__.
> + `patch <https://lore.kernel.org/r/20100319013024.GA28456@Krystal>`__.
> #. An infinite loop in an RCU read-side critical section will eventually
> trigger an RCU CPU stall warning splat, with the duration of
> “eventually” being controlled by the ``RCU_CPU_STALL_TIMEOUT``
> @@ -1716,7 +1715,7 @@ requires almost all of them be hidden behind a ``CONFIG_RCU_EXPERT``
>
> This all should be quite obvious, but the fact remains that Linus
> Torvalds recently had to
> -`remind <https://lkml.kernel.org/g/CA+55aFy4wcCwaL4okTs8wXhGZ5h-ibecy_Meg9C4MNQrUnwMcg@mail.gmail.com>`__
> +`remind <https://lore.kernel.org/r/CA+55aFy4wcCwaL4okTs8wXhGZ5h-ibecy_Meg9C4MNQrUnwMcg@mail.gmail.com>`__
> me of this requirement.
>
> Firmware Interface
> @@ -1837,9 +1836,9 @@ NMI handlers.
>
> The name notwithstanding, some Linux-kernel architectures can have
> nested NMIs, which RCU must handle correctly. Andy Lutomirski `surprised
> -me <https://lkml.kernel.org/r/CALCETrXLq1y7e_dKFPgou-FKHB6Pu-r8+t-6Ds+8=va7anBWDA@mail.gmail.com>`__
> +me <https://lore.kernel.org/r/CALCETrXLq1y7e_dKFPgou-FKHB6Pu-r8+t-6Ds+8=va7anBWDA@mail.gmail.com>`__
> with this requirement; he also kindly surprised me with `an
> -algorithm <https://lkml.kernel.org/r/CALCETrXSY9JpW3uE6H8WYk81sg56qasA2aqmjMPsq5dOtzso=g@mail.gmail.com>`__
> +algorithm <https://lore.kernel.org/r/CALCETrXSY9JpW3uE6H8WYk81sg56qasA2aqmjMPsq5dOtzso=g@mail.gmail.com>`__
> that meets this requirement.
>
> Furthermore, NMI handlers can be interrupted by what appear to RCU to be
> @@ -2264,7 +2263,7 @@ more extreme measures. Returning to the ``page`` structure, the
> ``rcu_head`` field shares storage with a great many other structures
> that are used at various points in the corresponding page's lifetime. In
> order to correctly resolve certain `race
> -conditions <https://lkml.kernel.org/g/1439976106-137226-1-git-send-email-kirill.shutemov@linux.intel.com>`__,
> +conditions <https://lore.kernel.org/r/1439976106-137226-1-git-send-email-kirill.shutemov@linux.intel.com>`__,
> the Linux kernel's memory-management subsystem needs a particular bit to
> remain zero during all phases of grace-period processing, and that bit
> happens to map to the bottom bit of the ``rcu_head`` structure's
> @@ -2328,7 +2327,7 @@ preempted. This requirement made its presence known after users made it
> clear that an earlier `real-time
> patch <https://lwn.net/Articles/107930/>`__ did not meet their needs, in
> conjunction with some `RCU
> -issues <https://lkml.kernel.org/g/20050318002026.GA2693@us.ibm.com>`__
> +issues <https://lore.kernel.org/r/20050318002026.GA2693@us.ibm.com>`__
> encountered by a very early version of the -rt patchset.
>
> In addition, RCU must make do with a sub-100-microsecond real-time
> diff --git a/Documentation/RCU/checklist.rst b/Documentation/RCU/checklist.rst
> index bb7128eb322e..2d1dc1deffc9 100644
> --- a/Documentation/RCU/checklist.rst
> +++ b/Documentation/RCU/checklist.rst
> @@ -70,7 +70,7 @@ over a rather long period of time, but improvements are always welcome!
> is less readable and prevents lockdep from detecting locking issues.
>
> Letting RCU-protected pointers "leak" out of an RCU read-side
> - critical section is every bid as bad as letting them leak out
> + critical section is every bit as bad as letting them leak out
> from under a lock. Unless, of course, you have arranged some
> other means of protection, such as a lock or a reference count
> -before- letting them out of the RCU read-side critical section.
> @@ -129,9 +129,7 @@ over a rather long period of time, but improvements are always welcome!
> accesses. The rcu_dereference() primitive ensures that
> the CPU picks up the pointer before it picks up the data
> that the pointer points to. This really is necessary
> - on Alpha CPUs. If you don't believe me, see:
> -
> - http://www.openvms.compaq.com/wizard/wiz_2637.html
> + on Alpha CPUs.
>
> The rcu_dereference() primitive is also an excellent
> documentation aid, letting the person reading the
> @@ -216,7 +214,7 @@ over a rather long period of time, but improvements are always welcome!
> 7. As of v4.20, a given kernel implements only one RCU flavor,
> which is RCU-sched for PREEMPT=n and RCU-preempt for PREEMPT=y.
> If the updater uses call_rcu() or synchronize_rcu(),
> - then the corresponding readers my use rcu_read_lock() and
> + then the corresponding readers may use rcu_read_lock() and
> rcu_read_unlock(), rcu_read_lock_bh() and rcu_read_unlock_bh(),
> or any pair of primitives that disables and re-enables preemption,
> for example, rcu_read_lock_sched() and rcu_read_unlock_sched().
> --
> 2.17.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-11-29 3:32 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-28 14:55 [PATCH] docs: fix typo and drop dead link in RCU/checklist.txt Paul Gortmaker
2020-11-28 20:32 ` [PATCH v2] docs: fix typos and drop/fix dead links in RCU documentation Paul Gortmaker
2020-11-29 3:31 ` Paul E. McKenney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).