[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1437068376-24617-1-git-send-email-tal.shorer@gmail.com>
Date: Thu, 16 Jul 2015 20:39:34 +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 v2 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 do (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.
If this idea is deemed worth the time by the community, I'll create patches for
the other subsystems.
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
Tal Shorer (2):
tracing: allow disabling compilation of specific trace systems
tracing: gpio: add Kconfig option for enabling/disabling trace events
drivers/gpio/Kconfig | 7 +++++++
include/linux/tracepoint.h | 6 +++---
include/trace/define_trace.h | 2 +-
include/trace/events/gpio.h | 4 ++++
4 files changed, 15 insertions(+), 4 deletions(-)
--
2.4.3
--
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