Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 92e51938 authored by Andrew Vagin's avatar Andrew Vagin Committed by Ingo Molnar
Browse files

perf: Fix counter of ftrace events



Each event adds some points to its counters. By default it adds 1,
and a number of points may be transmited in event's parameters.

E.g. sched:sched_stat_runtime adds how long process has been running.

But this functionality was broken by v2.6.31-rc5-392-gf413cdb
and now the event's parameters doesn't affect on a number of points.

TP_perf_assign isn't defined, so __perf_count(c) isn't executed and
__count is always equal to 1.

Signed-off-by: default avatarAndrew Vagin <avagin@openvz.org>
Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1317052535-1765247-2-git-send-email-avagin@openvz.org


Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 87ffef79
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -711,6 +711,9 @@ __attribute__((section("_ftrace_events"))) *__event_##call = &event_##call
#undef __perf_count
#undef __perf_count
#define __perf_count(c) __count = (c)
#define __perf_count(c) __count = (c)


#undef TP_perf_assign
#define TP_perf_assign(args...) args

#undef DECLARE_EVENT_CLASS
#undef DECLARE_EVENT_CLASS
#define DECLARE_EVENT_CLASS(call, proto, args, tstruct, assign, print)	\
#define DECLARE_EVENT_CLASS(call, proto, args, tstruct, assign, print)	\
static notrace void							\
static notrace void							\