* [RFC] TRACE_EVENT: mapping "=" and memcpy to macros
[not found] ` <4CC5BDC2.9020401@polymtl.ca>
@ 2010-10-25 17:39 ` Mathieu Desnoyers
0 siblings, 0 replies; only message in thread
From: Mathieu Desnoyers @ 2010-10-25 17:39 UTC (permalink / raw)
To: David Goulet
Cc: Nils Carlson, Steven Rostedt, Peter Zijlstra, linux-kernel,
ltt-dev
LTTng needs to override the assignment primitives to deal with cross-page
writes. A first step needed to move LTTng to TRACE_EVENT is to introduce the
following macros:
for ftrace and perf:
#define __assign(dest, src) (dest) = (src)
#define __assign_memcpy(dest, src, len) memcpy(dest, src, len)
which would turn (e.g.)
TP_fast_assign(
memcpy(__entry->comm, t->comm, TASK_COMM_LEN);
__entry->pid = t->pid;
),
into
TP_fast_assign(
__assign_memcpy(__entry->comm, t->comm, TASK_COMM_LEN);
__assign(__entry->pid, t->pid);
),
So LTTng (and other tracers) can override these with their own primitives. This
is a basic step required to bring the LTTng tree closer to mainline.
Thoughts ?
Mathieu
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2010-10-25 17:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <4CC1BAA1.9070202@polymtl.ca>
[not found] ` <913BC6918ED247478A38326BC12AAECE04D399B2@ESESSCMS0358.eemea.ericsson.se>
[not found] ` <913BC6918ED247478A38326BC12AAECE04D399CF@ESESSCMS0358.eemea.ericsson.se>
[not found] ` <913BC6918ED247478A38326BC12AAECE04D39AD7@ESESSCMS0358.eemea.ericsson.se>
[not found] ` <4CC5AA98.7020308@polymtl.ca>
[not found] ` <20101025171954.GD11891@Krystal>
[not found] ` <4CC5BDC2.9020401@polymtl.ca>
2010-10-25 17:39 ` [RFC] TRACE_EVENT: mapping "=" and memcpy to macros Mathieu Desnoyers
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox