* [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop
@ 2012-08-22 16:23 Frederic Weisbecker
2012-08-22 16:23 ` [PATCH 08/10] parisc: " Frederic Weisbecker
2012-08-22 17:18 ` [PATCH 00/10] rcu: " Geert Uytterhoeven
0 siblings, 2 replies; 9+ messages in thread
From: Frederic Weisbecker @ 2012-08-22 16:23 UTC (permalink / raw)
To: LKML
Cc: Frederic Weisbecker, Paul E. McKenney, Chris Zankel, 3.2.x..,
Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc,
David Howells, Koichi Yasutake, Geert Uytterhoeven, m68k,
Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson,
Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha
So this fixes some potential RCU stalls in a bunch of architectures.
When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot
to handle the architectures that don't support CONFIG_NO_HZ.
I guess the set should be dispatched into arch maintainer trees.
I'm sorry I haven't built tested everywhere. But the changes are
small and need to be at least boot tested anyway.
Also many of these archs use the same kind of idle loop:
void cpu_idle(void)
{
while (1) {
rcu_idle_enter();
while (!need_resched())
//power saving function()
rcu_idle_exit();
schedule_preempt_disabled();
}
}
So once the set is merged, I'll probably try to consolidate this with a generic
simple cpu_idle() that does the above and calls the arch power saving
function. This will be only for archs that use this simple idle loop
of course.
Thanks.
Frederic Weisbecker (10):
alpha: Add missing RCU idle APIs on idle loop
cris: Add missing RCU idle APIs on idle loop
frv: Add missing RCU idle APIs on idle loop
h8300: Add missing RCU idle APIs on idle loop
m32r: Add missing RCU idle APIs on idle loop
m68k: Add missing RCU idle APIs on idle loop
mn10300: Add missing RCU idle APIs on idle loop
parisc: Add missing RCU idle APIs on idle loop
score: Add missing RCU idle APIs on idle loop
xtensa: Add missing RCU idle APIs on idle loop
arch/alpha/kernel/process.c | 6 +++++-
arch/cris/kernel/process.c | 3 +++
arch/frv/kernel/process.c | 3 +++
arch/h8300/kernel/process.c | 3 +++
arch/m32r/kernel/process.c | 3 +++
arch/m68k/kernel/process.c | 3 +++
arch/mn10300/kernel/process.c | 3 +++
arch/parisc/kernel/process.c | 3 +++
arch/score/kernel/process.c | 4 +++-
arch/xtensa/kernel/process.c | 3 +++
10 files changed, 32 insertions(+), 2 deletions(-)
--
1.7.5.4
^ permalink raw reply [flat|nested] 9+ messages in thread* [PATCH 08/10] parisc: Add missing RCU idle APIs on idle loop 2012-08-22 16:23 [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop Frederic Weisbecker @ 2012-08-22 16:23 ` Frederic Weisbecker 2012-08-24 13:26 ` John David Anglin 2012-08-22 17:18 ` [PATCH 00/10] rcu: " Geert Uytterhoeven 1 sibling, 1 reply; 9+ messages in thread From: Frederic Weisbecker @ 2012-08-22 16:23 UTC (permalink / raw) To: LKML Cc: Frederic Weisbecker, James E.J. Bottomley, Helge Deller, Parisc, 3.2.x.., Paul E. McKenney In the old times, the whole idle task was considered as an RCU quiescent state. But as RCU became more and more successful overtime, some RCU read side critical section have been added even in the code of some architectures idle tasks, for tracing for example. So nowadays, rcu_idle_enter() and rcu_idle_exit() must be called by the architecture to tell RCU about the part in the idle loop that doesn't make use of rcu read side critical sections, typically the part that puts the CPU in low power mode. This is necessary for RCU to find the quiescent states in idle in order to complete grace periods. Add this missing pair of calls in the parisc's idle loop. Reported-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: James E.J. Bottomley <jejb@parisc-linux.org> Cc: Helge Deller <deller@gmx.de> Cc: Parisc <linux-parisc@vger.kernel.org> Cc: 3.2.x.. <stable@kernel.org> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> --- arch/parisc/kernel/process.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/arch/parisc/kernel/process.c b/arch/parisc/kernel/process.c index d4b94b3..c54a4db 100644 --- a/arch/parisc/kernel/process.c +++ b/arch/parisc/kernel/process.c @@ -48,6 +48,7 @@ #include <linux/unistd.h> #include <linux/kallsyms.h> #include <linux/uaccess.h> +#include <linux/rcupdate.h> #include <asm/io.h> #include <asm/asm-offsets.h> @@ -69,8 +70,10 @@ void cpu_idle(void) /* endless idle loop with no priority at all */ while (1) { + rcu_idle_enter(); while (!need_resched()) barrier(); + rcu_idle_exit(); schedule_preempt_disabled(); check_pgt_cache(); } -- 1.7.5.4 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 08/10] parisc: Add missing RCU idle APIs on idle loop 2012-08-22 16:23 ` [PATCH 08/10] parisc: " Frederic Weisbecker @ 2012-08-24 13:26 ` John David Anglin 0 siblings, 0 replies; 9+ messages in thread From: John David Anglin @ 2012-08-24 13:26 UTC (permalink / raw) To: Frederic Weisbecker Cc: LKML, James E.J. Bottomley, Helge Deller, Parisc, 3.2.x.., Paul E. McKenney On 8/22/2012 12:23 PM, Frederic Weisbecker wrote: > In the old times, the whole idle task was considered > as an RCU quiescent state. But as RCU became more and > more successful overtime, some RCU read side critical > section have been added even in the code of some > architectures idle tasks, for tracing for example. > > So nowadays, rcu_idle_enter() and rcu_idle_exit() must > be called by the architecture to tell RCU about the part > in the idle loop that doesn't make use of rcu read side > critical sections, typically the part that puts the CPU > in low power mode. > > This is necessary for RCU to find the quiescent states in > idle in order to complete grace periods. > > Add this missing pair of calls in the parisc's idle loop. > > Reported-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> > Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> > Cc: James E.J. Bottomley <jejb@parisc-linux.org> > Cc: Helge Deller <deller@gmx.de> > Cc: Parisc <linux-parisc@vger.kernel.org> > Cc: 3.2.x.. <stable@kernel.org> > Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> > --- > arch/parisc/kernel/process.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/arch/parisc/kernel/process.c b/arch/parisc/kernel/process.c > index d4b94b3..c54a4db 100644 > --- a/arch/parisc/kernel/process.c > +++ b/arch/parisc/kernel/process.c > @@ -48,6 +48,7 @@ > #include <linux/unistd.h> > #include <linux/kallsyms.h> > #include <linux/uaccess.h> > +#include <linux/rcupdate.h> > > #include <asm/io.h> > #include <asm/asm-offsets.h> > @@ -69,8 +70,10 @@ void cpu_idle(void) > > /* endless idle loop with no priority at all */ > while (1) { > + rcu_idle_enter(); > while (!need_resched()) > barrier(); > + rcu_idle_exit(); > schedule_preempt_disabled(); > check_pgt_cache(); > } Builds and boots fine on parisc. Acked-by: John David Anglin<dave.anglin@bell.net> Dave -- John David Anglin dave.anglin@bell.net ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop 2012-08-22 16:23 [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop Frederic Weisbecker 2012-08-22 16:23 ` [PATCH 08/10] parisc: " Frederic Weisbecker @ 2012-08-22 17:18 ` Geert Uytterhoeven 2012-08-23 11:02 ` Frederic Weisbecker 1 sibling, 1 reply; 9+ messages in thread From: Geert Uytterhoeven @ 2012-08-22 17:18 UTC (permalink / raw) To: Frederic Weisbecker Cc: LKML, Paul E. McKenney, Chris Zankel, 3.2.x.., Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc, David Howells, Koichi Yasutake, m68k, Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson, Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha On Wed, Aug 22, 2012 at 6:23 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > So this fixes some potential RCU stalls in a bunch of architectures. > When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot > to handle the architectures that don't support CONFIG_NO_HZ. > > I guess the set should be dispatched into arch maintainer trees. I can take the m68k version, but are you sure you want it this way? Each of them must be in mainline before they can enter stable. > I'm sorry I haven't built tested everywhere. But the changes are > small and need to be at least boot tested anyway. Builds and boots fine on m68k under ARAnyM. Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> (for m68k) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop 2012-08-22 17:18 ` [PATCH 00/10] rcu: " Geert Uytterhoeven @ 2012-08-23 11:02 ` Frederic Weisbecker 2012-08-23 20:23 ` Geert Uytterhoeven 0 siblings, 1 reply; 9+ messages in thread From: Frederic Weisbecker @ 2012-08-23 11:02 UTC (permalink / raw) To: Geert Uytterhoeven Cc: LKML, Paul E. McKenney, Chris Zankel, 3.2.x.., Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc, David Howells, Koichi Yasutake, m68k, Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson, Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha On Wed, Aug 22, 2012 at 07:18:04PM +0200, Geert Uytterhoeven wrote: > On Wed, Aug 22, 2012 at 6:23 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > > So this fixes some potential RCU stalls in a bunch of architectures. > > When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot > > to handle the architectures that don't support CONFIG_NO_HZ. > > > > I guess the set should be dispatched into arch maintainer trees. > > I can take the m68k version, but are you sure you want it this way? > Each of them must be in mainline before they can enter stable. Yeah, I was thinking the right route is for these patches to be carried by arch maintainer who then push to Linus and then this goes to stable. Is that ok for you? Otherwise I can carry the patches myself. In a tree of my own, or Paul's or mmotm. As long as I have your ack. Thanks. > > > I'm sorry I haven't built tested everywhere. But the changes are > > small and need to be at least boot tested anyway. > > Builds and boots fine on m68k under ARAnyM. > Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> (for m68k) > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org > > In personal conversations with technical people, I call myself a hacker. But > when I'm talking to journalists I just say "programmer" or something like that. > -- Linus Torvalds ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop 2012-08-23 11:02 ` Frederic Weisbecker @ 2012-08-23 20:23 ` Geert Uytterhoeven 2012-08-23 21:50 ` Frederic Weisbecker 0 siblings, 1 reply; 9+ messages in thread From: Geert Uytterhoeven @ 2012-08-23 20:23 UTC (permalink / raw) To: Frederic Weisbecker Cc: LKML, Paul E. McKenney, Chris Zankel, 3.2.x.., Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc, David Howells, Koichi Yasutake, m68k, Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson, Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha Hi Frederic, On Thu, Aug 23, 2012 at 1:02 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > On Wed, Aug 22, 2012 at 07:18:04PM +0200, Geert Uytterhoeven wrote: >> On Wed, Aug 22, 2012 at 6:23 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: >> > So this fixes some potential RCU stalls in a bunch of architectures. >> > When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot >> > to handle the architectures that don't support CONFIG_NO_HZ. >> > >> > I guess the set should be dispatched into arch maintainer trees. >> >> I can take the m68k version, but are you sure you want it this way? >> Each of them must be in mainline before they can enter stable. > > Yeah, I was thinking the right route is for these patches to be > carried by arch maintainer who then push to Linus and then this goes > to stable. > > Is that ok for you? > > Otherwise I can carry the patches myself. In a tree of my own, or > Paul's or mmotm. As long as I have your ack. I applied your patch to the m68k for-3.6/for-linus branch. I'll ask Linus to pull later in the rc cycle (right now I don't have anything else queued for 3.6). Still, I think it's better to just collect acks and send it to Linus in one shot, so it can go into stable in one shot too. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop 2012-08-23 20:23 ` Geert Uytterhoeven @ 2012-08-23 21:50 ` Frederic Weisbecker 2012-09-17 20:31 ` Geert Uytterhoeven 0 siblings, 1 reply; 9+ messages in thread From: Frederic Weisbecker @ 2012-08-23 21:50 UTC (permalink / raw) To: Geert Uytterhoeven Cc: LKML, Paul E. McKenney, Chris Zankel, 3.2.x.., Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc, David Howells, Koichi Yasutake, m68k, Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson, Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha On Thu, Aug 23, 2012 at 10:23:22PM +0200, Geert Uytterhoeven wrote: > Hi Frederic, > > On Thu, Aug 23, 2012 at 1:02 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > > On Wed, Aug 22, 2012 at 07:18:04PM +0200, Geert Uytterhoeven wrote: > >> On Wed, Aug 22, 2012 at 6:23 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > >> > So this fixes some potential RCU stalls in a bunch of architectures. > >> > When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot > >> > to handle the architectures that don't support CONFIG_NO_HZ. > >> > > >> > I guess the set should be dispatched into arch maintainer trees. > >> > >> I can take the m68k version, but are you sure you want it this way? > >> Each of them must be in mainline before they can enter stable. > > > > Yeah, I was thinking the right route is for these patches to be > > carried by arch maintainer who then push to Linus and then this goes > > to stable. > > > > Is that ok for you? > > > > Otherwise I can carry the patches myself. In a tree of my own, or > > Paul's or mmotm. As long as I have your ack. > > I applied your patch to the m68k for-3.6/for-linus branch. > I'll ask Linus to pull later in the rc cycle (right now I don't have > anything else > queued for 3.6). > Still, I think it's better to just collect acks and send it to Linus > in one shot, > so it can go into stable in one shot too. Sure I can do that if you prefer. Thanks. > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org > > In personal conversations with technical people, I call myself a hacker. But > when I'm talking to journalists I just say "programmer" or something like that. > -- Linus Torvalds ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop 2012-08-23 21:50 ` Frederic Weisbecker @ 2012-09-17 20:31 ` Geert Uytterhoeven 2012-09-17 20:55 ` Paul E. McKenney 0 siblings, 1 reply; 9+ messages in thread From: Geert Uytterhoeven @ 2012-09-17 20:31 UTC (permalink / raw) To: Frederic Weisbecker, Paul E. McKenney Cc: LKML, Chris Zankel, 3.2.x.., Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc, David Howells, Koichi Yasutake, m68k, Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson, Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha Hi Frederic, Paul, On Thu, Aug 23, 2012 at 11:50 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > On Thu, Aug 23, 2012 at 10:23:22PM +0200, Geert Uytterhoeven wrote: >> On Thu, Aug 23, 2012 at 1:02 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: >> > On Wed, Aug 22, 2012 at 07:18:04PM +0200, Geert Uytterhoeven wrote: >> >> On Wed, Aug 22, 2012 at 6:23 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: >> >> > So this fixes some potential RCU stalls in a bunch of architectures. >> >> > When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot >> >> > to handle the architectures that don't support CONFIG_NO_HZ. >> >> > >> >> > I guess the set should be dispatched into arch maintainer trees. >> >> >> >> I can take the m68k version, but are you sure you want it this way? >> >> Each of them must be in mainline before they can enter stable. >> > >> > Yeah, I was thinking the right route is for these patches to be >> > carried by arch maintainer who then push to Linus and then this goes >> > to stable. >> > >> > Is that ok for you? >> > >> > Otherwise I can carry the patches myself. In a tree of my own, or >> > Paul's or mmotm. As long as I have your ack. >> >> I applied your patch to the m68k for-3.6/for-linus branch. >> I'll ask Linus to pull later in the rc cycle (right now I don't have >> anything else >> queued for 3.6). >> Still, I think it's better to just collect acks and send it to Linus >> in one shot, >> so it can go into stable in one shot too. > > Sure I can do that if you prefer. What's the conclusion on this one? I saw it entered tip. I still have it (as the only commit) on my for-3.6 branch, but I don't think m68k is important enough to be the only architecture to have this fix in 3.6 ;-) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop 2012-09-17 20:31 ` Geert Uytterhoeven @ 2012-09-17 20:55 ` Paul E. McKenney 0 siblings, 0 replies; 9+ messages in thread From: Paul E. McKenney @ 2012-09-17 20:55 UTC (permalink / raw) To: Geert Uytterhoeven Cc: Frederic Weisbecker, LKML, Chris Zankel, 3.2.x.., Chen Liqin, Lennox Wu, James E.J. Bottomley, Helge Deller, Parisc, David Howells, Koichi Yasutake, m68k, Hirokazu Takata, Yoshinori Sato, Mikael Starvik, Jesper Nilsson, Cris, Richard Henderson, Ivan Kokshaysky, Matt Turner, alpha On Mon, Sep 17, 2012 at 10:31:24PM +0200, Geert Uytterhoeven wrote: > Hi Frederic, Paul, > > On Thu, Aug 23, 2012 at 11:50 PM, Frederic Weisbecker > <fweisbec@gmail.com> wrote: > > On Thu, Aug 23, 2012 at 10:23:22PM +0200, Geert Uytterhoeven wrote: > >> On Thu, Aug 23, 2012 at 1:02 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > >> > On Wed, Aug 22, 2012 at 07:18:04PM +0200, Geert Uytterhoeven wrote: > >> >> On Wed, Aug 22, 2012 at 6:23 PM, Frederic Weisbecker <fweisbec@gmail.com> wrote: > >> >> > So this fixes some potential RCU stalls in a bunch of architectures. > >> >> > When rcu_idle_enter()/rcu_idle_exit() became a requirement, we forgot > >> >> > to handle the architectures that don't support CONFIG_NO_HZ. > >> >> > > >> >> > I guess the set should be dispatched into arch maintainer trees. > >> >> > >> >> I can take the m68k version, but are you sure you want it this way? > >> >> Each of them must be in mainline before they can enter stable. > >> > > >> > Yeah, I was thinking the right route is for these patches to be > >> > carried by arch maintainer who then push to Linus and then this goes > >> > to stable. > >> > > >> > Is that ok for you? > >> > > >> > Otherwise I can carry the patches myself. In a tree of my own, or > >> > Paul's or mmotm. As long as I have your ack. > >> > >> I applied your patch to the m68k for-3.6/for-linus branch. > >> I'll ask Linus to pull later in the rc cycle (right now I don't have > >> anything else > >> queued for 3.6). > >> Still, I think it's better to just collect acks and send it to Linus > >> in one shot, > >> so it can go into stable in one shot too. > > > > Sure I can do that if you prefer. > > What's the conclusion on this one? I saw it entered tip. I don't see it at tip/master, but perhaps I am looking at the wrong branch. > I still have it (as the only commit) on my for-3.6 branch, but I don't > think m68k > is important enough to be the only architecture to have this fix in 3.6 ;-) I got only two acks in addition to yours, plus one Tested-by. So, no, there does not appear to be a large groundswell of support for pushing this into 3.6. If it doesn't go in by some other path, I will be pushing it into 3.7. Thanx, Paul ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2012-09-17 20:55 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-08-22 16:23 [PATCH 00/10] rcu: Add missing RCU idle APIs on idle loop Frederic Weisbecker 2012-08-22 16:23 ` [PATCH 08/10] parisc: " Frederic Weisbecker 2012-08-24 13:26 ` John David Anglin 2012-08-22 17:18 ` [PATCH 00/10] rcu: " Geert Uytterhoeven 2012-08-23 11:02 ` Frederic Weisbecker 2012-08-23 20:23 ` Geert Uytterhoeven 2012-08-23 21:50 ` Frederic Weisbecker 2012-09-17 20:31 ` Geert Uytterhoeven 2012-09-17 20:55 ` 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).