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]
Message-Id: <1438432079-11704-1-git-send-email-tal.shorer@gmail.com>
Date:	Sat,  1 Aug 2015 15:27:55 +0300
From:	Tal Shorer <tal.shorer@...il.com>
To:	tal.shorer@...il.com, rostedt@...dmis.org
Cc:	mingo@...hat.com, linux-kernel@...r.kernel.org
Subject: [Patch v3 0/2] tracing: allow disabling compilation of specific trace systems

Currently, enabling CONFIG_TRACING on a system comes as all-or-nothing:
either tracepoints for all subsystems are compiled (with CONFIG_TRACING)
or none of them are (without it).

This caused me an unacceptable performance penalty (obviously SOME penalty
was expected, but not one so severe) which made me revert the changes in
configuration.

The first patch in this series modifies the files that actually define the
tracepoint to look for a preprocessor macro NOTRACE and define nops (as if
CONFIG_TRACING was not set) instead of them.

The second patch provides an example of how I see this working, with the
gpio subsystem as the example for absolutely no reason.



Changelog:

v2:
- A comment in tracepoint.h explaining NOTRACE and its use
- Avoid duplication of the test for both NOTRACE and a config option by
defining TRACEPOINTS_ENABLED when both are present and using that to check
whether or not to define tracepoints

v3:
- Fix Patch 1/2 to apply to changes in include/trace/define_trace.h
- Add Linus Walleij's ack to Patch 2/2
- Move the Kconfig option from drivers/gpio/Kconfig to kernel/trace/Kconfig
This was done to group up all TRACING_EVENTS_* options together in the
future to ease disabling everything you don't need.

Tal Shorer (2):
  tracing: allow disabling compilation of specific trace systems
  tracing: gpio: add Kconfig option for enabling/disabling trace events

 include/linux/tracepoint.h   | 17 ++++++++++++++---
 include/trace/define_trace.h |  2 +-
 include/trace/events/gpio.h  |  4 ++++
 kernel/trace/Kconfig         |  7 +++++++
 4 files changed, 26 insertions(+), 4 deletions(-)

-- 
2.4.6

--
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