Message ID | 1328125319-5205-13-git-send-email-paulmck@linux.vnet.ibm.com |
---|---|
State | Superseded |
Headers | show |
On Wed, Feb 01, 2012 at 11:41:31AM -0800, Paul E. McKenney wrote: > From: "Paul E. McKenney" <paul.mckenney@linaro.org> > > Make rcutorture check for CPU-hotplug failures and complain if there > were any. > > Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> > Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> > --- > kernel/rcutorture.c | 4 ++++ > 1 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c > index 88f17b8..a94eaef 100644 > --- a/kernel/rcutorture.c > +++ b/kernel/rcutorture.c > @@ -1602,6 +1602,10 @@ rcu_torture_cleanup(void) > cur_ops->cleanup(); > if (atomic_read(&n_rcu_torture_error)) > rcu_torture_print_module_parms(cur_ops, "End of test: FAILURE"); > + else if (n_online_successes != n_online_attempts || > + n_offline_successes != n_offline_attempts) > + rcu_torture_print_module_parms(cur_ops, > + "End of test: RCU_HOTPLUG"); > else > rcu_torture_print_module_parms(cur_ops, "End of test: SUCCESS"); OK, I must admit that when I saw the addition of RCU_HOTPLUG to the existing cases of FAILURE and SUCCESS, my mind went to http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx . More seriously, though, shouldn't this just say FAILURE, perhaps with further explanation attached? - Josh Triplett
On Wed, Feb 01, 2012 at 05:46:56PM -0800, Josh Triplett wrote: > On Wed, Feb 01, 2012 at 11:41:31AM -0800, Paul E. McKenney wrote: > > From: "Paul E. McKenney" <paul.mckenney@linaro.org> > > > > Make rcutorture check for CPU-hotplug failures and complain if there > > were any. > > > > Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> > > Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> > > --- > > kernel/rcutorture.c | 4 ++++ > > 1 files changed, 4 insertions(+), 0 deletions(-) > > > > diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c > > index 88f17b8..a94eaef 100644 > > --- a/kernel/rcutorture.c > > +++ b/kernel/rcutorture.c > > @@ -1602,6 +1602,10 @@ rcu_torture_cleanup(void) > > cur_ops->cleanup(); > > if (atomic_read(&n_rcu_torture_error)) > > rcu_torture_print_module_parms(cur_ops, "End of test: FAILURE"); > > + else if (n_online_successes != n_online_attempts || > > + n_offline_successes != n_offline_attempts) > > + rcu_torture_print_module_parms(cur_ops, > > + "End of test: RCU_HOTPLUG"); > > else > > rcu_torture_print_module_parms(cur_ops, "End of test: SUCCESS"); > > OK, I must admit that when I saw the addition of RCU_HOTPLUG to the > existing cases of FAILURE and SUCCESS, my mind went to > http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx . ;-) ;-) ;-) > More seriously, though, shouldn't this just say FAILURE, perhaps with > further explanation attached? I see a big difference between an occasional instance of a CPU refusing to go offline and RCU grace periods being too short. The former can be annoying, but if you retry, it will likely succeed the second time. The latter is fatal. Thanx, Paul
diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c index 88f17b8..a94eaef 100644 --- a/kernel/rcutorture.c +++ b/kernel/rcutorture.c @@ -1602,6 +1602,10 @@ rcu_torture_cleanup(void) cur_ops->cleanup(); if (atomic_read(&n_rcu_torture_error)) rcu_torture_print_module_parms(cur_ops, "End of test: FAILURE"); + else if (n_online_successes != n_online_attempts || + n_offline_successes != n_offline_attempts) + rcu_torture_print_module_parms(cur_ops, + "End of test: RCU_HOTPLUG"); else rcu_torture_print_module_parms(cur_ops, "End of test: SUCCESS"); }