summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Lynch <nathan_lynch@mentor.com>2017-04-25 17:33:55 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-05-04 13:49:46 +0100
commitf36d6a82339ddcc74a1f3801ef4360016704207a (patch)
treec18fb603cf9dff0d114c06e78a87eb2b43a68876
parent718112289b99b8d5142fb04a61e17afda136d9fa (diff)
downloadopenembedded-core-f36d6a82339ddcc74a1f3801ef4360016704207a.tar.gz
openembedded-core-f36d6a82339ddcc74a1f3801ef4360016704207a.tar.bz2
openembedded-core-f36d6a82339ddcc74a1f3801ef4360016704207a.zip
lttng-modules: work around GCC 7 changes
Avoid using LTTng's BUILD_RUNTIME_BUG_ON macro, as it appears to run into a similar problem as Linux experienced with __builtin_constant_p and dead code elimination. Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/BUILD_RUNTIME_BUG_ON-vs-gcc7.patch43
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules_2.9.1.bb3
2 files changed, 45 insertions, 1 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/BUILD_RUNTIME_BUG_ON-vs-gcc7.patch b/meta/recipes-kernel/lttng/lttng-modules/BUILD_RUNTIME_BUG_ON-vs-gcc7.patch
new file mode 100644
index 0000000000..76063607a8
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/BUILD_RUNTIME_BUG_ON-vs-gcc7.patch
@@ -0,0 +1,43 @@
+From ab07574ef90fa510f293c37897d577066a88fe0d Mon Sep 17 00:00:00 2001
+From: Nathan Lynch <nathan_lynch@mentor.com>
+Date: Tue, 25 Apr 2017 16:26:57 -0500
+Subject: [PATCH] BUILD_RUNTIME_BUG_ON vs gcc7
+
+Avoid using LTTng's BUILD_RUNTIME_BUG_ON macro, as it appears to run
+into a similar problem as Linux experienced with ilog2.
+
+See:
+https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=474c90156c8dcc2fa815e6716cc9394d7930cb9c
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72785
+
+Upstream-Status: Pending
+Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
+---
+ lib/align.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/align.h b/lib/align.h
+index 5b91ae87410b..5e134cd485fe 100644
+--- a/lib/align.h
++++ b/lib/align.h
+@@ -48,7 +48,7 @@
+ */
+ #define offset_align(align_drift, alignment) \
+ ({ \
+- BUILD_RUNTIME_BUG_ON((alignment) == 0 \
++ BUG_ON((alignment) == 0 \
+ || ((alignment) & ((alignment) - 1))); \
+ (((alignment) - (align_drift)) & ((alignment) - 1)); \
+ })
+@@ -63,7 +63,7 @@
+ */
+ #define offset_align_floor(align_drift, alignment) \
+ ({ \
+- BUILD_RUNTIME_BUG_ON((alignment) == 0 \
++ BUG_ON((alignment) == 0 \
+ || ((alignment) & ((alignment) - 1))); \
+ (((align_drift) - (alignment)) & ((alignment) - 1)); \
+ })
+--
+2.9.3
+
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.9.1.bb b/meta/recipes-kernel/lttng/lttng-modules_2.9.1.bb
index abff79d06f..b48f9cff9a 100644
--- a/meta/recipes-kernel/lttng/lttng-modules_2.9.1.bb
+++ b/meta/recipes-kernel/lttng/lttng-modules_2.9.1.bb
@@ -11,7 +11,8 @@ inherit module
COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm).*-linux'
SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
- file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch"
+ file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \
+ file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch"
SRC_URI[md5sum] = "5a16bca52233cc2bdff572b1120a88f6"
SRC_URI[sha256sum] = "62078fe3254ca65969db4b72e59042cd797dbf2740848f8f82384877ae460d54"