Messages in this thread | | | Date | Thu, 26 Jun 2008 08:48:33 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH -tip-rcu] Make rcutorture more vicious: invoke RCU readers from irq handlers (timers) |
| |
On Thu, Jun 26, 2008 at 09:22:39AM +0200, Ingo Molnar wrote: > > * Paul E. McKenney <paulmck@linux.vnet.ibm.com> wrote: > > > This patch allows torturing RCU from irq handlers (timers, in this > > case). A new module parameter irqreader enables such additional > > torturing, and is enabled by default. Variants of RCU that do not > > tolerate readers being called from irq handlers (e.g., SRCU) ignore > > irqreader. > > > > (No failures observed, but only short tests thus far. And no failures > > observed thus far from about 10 hours of running stock rcutorture in > > parallel with 170 kernel builds on a two-CPU machine.) > > applied to tip/core/rcu - thanks Paul. > > > +static int irqreader = 1; /* RCU readers from irq (timers). */ > > Good - this means that in bzImage type of tests (built-in rcutorture, no > modules) this new test variant will be activated by default, right?
Ah, I knew I was forgetting to test something...
OK, checked it out by booting with rcutorture.stat_interval=100 so that I can see the statistics. I enabled rcutorture after the machine booted with "echo 1 > /proc/sys/kernel/rcutorture_runnable". Then I saw the following in dmesg:
rcu-torture: rtc: ffffffff8098b9a0 ver: 16961 tfle: 0 rta: 16961 rtaf: 0 rtf: 16922 rtmbe: 0 nt: 121139 rcu-torture: Reader Pipe: 93315610 6300 0 0 0 0 0 0 0 0 0 rcu-torture: Reader Batch: 93315670 6240 0 0 0 0 0 0 0 0 0 rcu-torture: Free-Block Circulation: 16960 16960 16960 16960 16959 16951 16943 16936 16928 16922 0
The "nt: 121139" is the count of the number of times that an RCU read-side critical section has been invoked from an rcutorture timer handler.
So yes, it does work. ;-)
Thanx, Paul
| |