lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Mon, 11 Jul 2011 20:10:37 +0200
From:	Frederic Weisbecker <fweisbec@...il.com>
To:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Cc:	linux-kernel@...r.kernel.org, mingo@...e.hu, laijs@...fujitsu.com,
	dipankar@...ibm.com, akpm@...ux-foundation.org,
	mathieu.desnoyers@...ymtl.ca, josh@...htriplett.org,
	niv@...ibm.com, tglx@...utronix.de, peterz@...radead.org,
	rostedt@...dmis.org, Valdis.Kletnieks@...edu, dhowells@...hat.com,
	eric.dumazet@...il.com, darren@...art.com, patches@...aro.org
Subject: Re: [PATCH tip/core/rcu 0/6] Check for use of RCU from dyntick-idle
 mode

On Mon, Jul 11, 2011 at 10:00:14AM -0700, Paul E. McKenney wrote:
> On Mon, Jul 11, 2011 at 06:44:08PM +0200, Frederic Weisbecker wrote:
> > On Mon, Jul 11, 2011 at 09:38:48AM -0700, Paul E. McKenney wrote:
> > > On Mon, Jul 11, 2011 at 06:03:32PM +0200, Frederic Weisbecker wrote:
> > > > On Fri, Jul 08, 2011 at 08:43:31AM -0700, Paul E. McKenney wrote:
> > > > > Hello!
> > > > > 
> > > > > This set of patches adds checks for use of RCU from "extended quiescent
> > > > > states" such as dyntick-idle mode.  Such use is grossly illegal because
> > > > > RCU by definition ignores CPUs that are in extended quiescent states.
> > > > > In the case of dyntick-idle mode, the only way for RCU to avoid ignoring
> > > > > such CPUs would be to wake them up periodically, which would defeat the
> > > > > whole purpose of dyntick-idle mode.
> > > > > 
> > > > > The good news is that Frederic got this effort started.  The bad news is
> > > > > that there are several cases where RCU read-side critical sections appear
> > > > > in dyntick-idle mode.
> > > > 
> > > > Ok, let me send to you the patch that splits up rcu/tickless logic and I'll try
> > > > to fix up what you reported to me in ppc.
> > > 
> > > Very good, thank you!
> > > 
> > > > BTW, are you aware of other cases? You mentioned "several" :)
> > > 
> > > PowerPC's hypercall-exit trace event will also cause this complaint.
> > 
> > Ok looking at this.
> 
> Oh, and I removed some of my RCU dyntick-idle trace events because
> they triggered this warning.  This would of course be a problem regardless
> of where the RCU dyntick-idle APIs were called from, so I just took the
> approach of more carefully placing the trace events.
> 
> > > Plus I thought you saw some others.
> > 
> > Nope, mine were spurious. In my v1 rcu_dereference_check warned if rcu read lock
> > wasn't held but didn't handle the rest of the conditional (another lock held or
> > simply 1 in rcu_dereference_raw()).
> > 
> > In the v3, the one you applied, they legitimately disappeared.
> 
> OK, good to know!

Ah, actually:

[    0.649412] WARNING: at include/linux/rcupdate.h:262 __atomic_notifier_call_chain+0xf8/0x110()
[    0.649414] Hardware name: AMD690VM-FMH
[    0.649415] Modules linked in: [<ffffffff81051ed5>] warn_slowpath_null+0x15/0x20
[    0.649420] 
[    0.649422] Pid: 0, comm: kworker/0:1 Tainted: G        W   3.0.0-rc6+ #250
[    0.649433] Call Trace:
[    0.649437]  [<ffffffff81051e8a>] warn_slowpath_common+0x7a/0xb0
[    0.649441]  [<ffffffff81051ed5>] warn_slowpath_null+0x15/0x20
[    0.649449]  [<ffffffff817da5c8>] __atomic_notifier_call_chain+0xf8/0x110
[    0.649468]  [<ffffffff817da5c8>] __atomic_notifier_call_chain+0xf8/0x110
[    0.649480]  [<ffffffff810018a0>] enter_idle+0x20/0x30
[    0.649483]  [<ffffffff817da5f1>] atomic_notifier_call_chain+0x11/0x20
[    0.649487]  [<ffffffff81001995>] cpu_idle+0xa5/0x110
[    0.649494]  [<ffffffff817ce3d5>] start_secondary+0x1df/0x1e6
[    0.649500] ---[ end trace f17e946d22a56016 ]---
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ