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-next>] [day] [month] [year] [list]
Message-Id: <1239950139-1119-1-git-send-email-jeremy@goop.org>
Date:	Thu, 16 Apr 2009 23:35:35 -0700
From:	Jeremy Fitzhardinge <jeremy@...p.org>
To:	mathieu.desnoyers@...ymtl.ca
Cc:	Steven Rostedt <rostedt@...dmis.org>, Ingo Molnar <mingo@...e.hu>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: [PATCH] tracing WIP patches

Hi,

Here's the patches I have against the tip/tracing/core.  They
consist of:

- Move __DO_TRACE out of line, so that the inline code is just an
  if() and a call.  This reduces linux/tracepoint.h's include dependencies
  to just <linux/types.h>, which means its safe to include in any context
  at all.

- Remove the use of the global CREATE_TRACE_POINTS, and institute
  a set of CREATE_subsys_TRACE_POINTS variables to cause targeted
  instantiation of the tracepoint code and data.  Without this
  we end up in the situation where one
	#define CREATE_TRACE_POINTS
	#include <trace/events/foo.h>
  instantiates not only foo's events but also bar's, if foo.h ends
  up directly or indirectly including trace/events/bar.h
  Unfortunately it increases the amount of boilerplace in each
  events definition header by a bit.

- A followup, ot make out-lining __do_trace_##name work for
  direct users of DECLARE_TRACE/DEFINE_TRACE, as DEFINE_TRACE now needs
  a full arg and proto list.  This results if fairly ugly wholesale
  duplication of each tracepoint's arg lists.  This can be avoided if
  we migrate those users to use TRACE_EVENT(), etc.

I'll post my pvops patches for comment in a moment.  Unfortunately, even
with all this, I can't get the kernel to link due to duplicate kmem.h
events...

	J

 arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c |    4 +-
 arch/x86/kernel/process.c                  |    9 +++-
 block/blk-core.c                           |   56 +++++++++++++++++++++++------
 block/elevator.c                           |   13 +++++-
 drivers/md/dm.c                            |    4 +-
 fs/bio.c                                   |    4 +-
 include/linux/tracepoint.h                 |   33 +++++++++--------
 include/trace/define_trace.h               |   10 ++---
 include/trace/events/irq.h                 |    5 ++
 include/trace/events/kmem.h                |    5 ++
 include/trace/events/lockdep.h             |    5 ++
 include/trace/events/sched.h               |    5 ++
 include/trace/events/skb.h                 |    6 +++
 include/trace/ftrace.h                     |    4 +-
 include/trace/instantiate_trace.h          |    7 +++
 kernel/irq/handle.c                        |    2 -
 kernel/lockdep.c                           |    2 -
 kernel/sched.c                             |    2 -
 kernel/tracepoint.c                        |    6 +++
 kernel/workqueue.c                         |   16 ++++++--
 mm/bounce.c                                |    4 +-
 mm/util.c                                  |    2 -
 net/core/net-traces.c                      |    2 -
 samples/trace_events/trace-events-sample.c |    2 -
 samples/trace_events/trace-events-sample.h |    6 +++
 25 files changed, 162 insertions(+), 52 deletions(-)

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