projects
/
lttng-ust.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: disable use of __builtin_return_address(0) on 32-bit PowerPC
[lttng-ust.git]
/
include
/
lttng
/
ust-tracepoint-event.h
diff --git
a/include/lttng/ust-tracepoint-event.h
b/include/lttng/ust-tracepoint-event.h
index f96239e0a9844262f1d767415eeca87e9a00fc89..2c037dca204cbd4570b13eb3f4d9cf543afbbf42 100644
(file)
--- a/
include/lttng/ust-tracepoint-event.h
+++ b/
include/lttng/ust-tracepoint-event.h
@@
-642,11
+642,23
@@
size_t __event_get_align__##_provider##___##_name(_TP_ARGS_PROTO(_args)) \
#define _TP_SESSION_CHECK(session, csession) 1
#endif /* TP_SESSION_CHECK */
#define _TP_SESSION_CHECK(session, csession) 1
#endif /* TP_SESSION_CHECK */
+/*
+ * Use of __builtin_return_address(0) sometimes seems to cause stack
+ * corruption on 32-bit PowerPC. Disable this feature on that
+ * architecture for now by always using the NULL value for the ip
+ * context.
+ */
#undef _TP_IP_PARAM
#ifdef TP_IP_PARAM
#define _TP_IP_PARAM(x) (x)
#else /* TP_IP_PARAM */
#undef _TP_IP_PARAM
#ifdef TP_IP_PARAM
#define _TP_IP_PARAM(x) (x)
#else /* TP_IP_PARAM */
+
+#if defined(__PPC__) && !defined(__PPC64__)
+#define _TP_IP_PARAM(x) NULL
+#else /* #if defined(__PPC__) && !defined(__PPC64__) */
#define _TP_IP_PARAM(x) __builtin_return_address(0)
#define _TP_IP_PARAM(x) __builtin_return_address(0)
+#endif /* #else #if defined(__PPC__) && !defined(__PPC64__) */
+
#endif /* TP_IP_PARAM */
/*
#endif /* TP_IP_PARAM */
/*
This page took
0.024127 seconds
and
4
git commands to generate.