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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 5 Nov 2008 18:01:18 +0100
From:	"Frédéric Weisbecker" <fweisbec@...il.com>
To:	"Steven Rostedt" <rostedt@...dmis.org>
Cc:	"Ingo Molnar" <mingo@...e.hu>,
	"Heiko Carstens" <heiko.carstens@...ibm.com>,
	"Peter Zijlstra" <a.p.zijlstra@...llo.nl>,
	linux-kernel@...r.kernel.org
Subject: Re: bug: ftrace & lockdep badness

2008/11/5 Steven Rostedt <rostedt@...dmis.org>:
> I do like the fact that lockdep checks it too. But there's times that we
> can not do that.
>
> Perhaps we can do something in between.
>
> Make a rb_spin_lock macro inside ring_buffer.c that can be either a
> spin_lock or a raw_spin_lock.  There are some tracers that must have this
> as a raw (function trace, irqsoff and preemptoff), but the rest should be
> fine. We can make it where the rb_spin_lock is a raw lock when any of
> those three tracers are configured, and make it into a normal lock when
> they are not.


But this way we won't be able to have lockdep checks when only one of
those "raw-need" tracers are
configured. Wouldn't it better to set it as a function pointer? It
would dynamically reference spin_lock or
raw_spin_lock functions depending on what tracer is currently
selected. I think that wouldn't hardly impact
the performances....
--
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