summaryrefslogtreecommitdiffstats
path: root/scripts/recordmcount.c
diff options
context:
space:
mode:
authorLaura Abbott <labbott@redhat.com>2016-07-08 12:18:50 -0700
committerSasha Levin <alexander.levin@verizon.com>2016-08-22 12:23:26 -0400
commit8a7e3694e2d6d06507e2dbdf792caa5973add295 (patch)
tree51e4efc5e9802af24ea2d9af3582c82cfb06db24 /scripts/recordmcount.c
parent0335e86fe11b398837716e5616f44b5c0f8ba4ea (diff)
downloadlinux-stable-8a7e3694e2d6d06507e2dbdf792caa5973add295.tar.gz
linux-stable-8a7e3694e2d6d06507e2dbdf792caa5973add295.tar.bz2
linux-stable-8a7e3694e2d6d06507e2dbdf792caa5973add295.zip
ftrace/recordmcount: Work around for addition of metag magic but not relocations
[ Upstream commit b2e1c26f0b62531636509fbcb6dab65617ed8331 ] glibc recently did a sync up (94e73c95d9b5 "elf.h: Sync with the gabi webpage") that added a #define for EM_METAG but did not add relocations This triggers build errors: scripts/recordmcount.c: In function 'do_file': scripts/recordmcount.c:466:28: error: 'R_METAG_ADDR32' undeclared (first use in this function) case EM_METAG: reltype = R_METAG_ADDR32; ^~~~~~~~~~~~~~ scripts/recordmcount.c:466:28: note: each undeclared identifier is reported only once for each function it appears in scripts/recordmcount.c:468:20: error: 'R_METAG_NONE' undeclared (first use in this function) rel_type_nop = R_METAG_NONE; ^~~~~~~~~~~~ Work around this change with some more #ifdefery for the relocations. Fedora Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1354034 Link: http://lkml.kernel.org/r/1468005530-14757-1-git-send-email-labbott@redhat.com Cc: stable@vger.kernel.org # v3.9+ Cc: James Hogan <james.hogan@imgtec.com> Fixes: 00512bdd4573 ("metag: ftrace support") Reported-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Laura Abbott <labbott@redhat.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Diffstat (limited to 'scripts/recordmcount.c')
-rw-r--r--scripts/recordmcount.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
index 001facfa5b74..d96d8a2647d6 100644
--- a/scripts/recordmcount.c
+++ b/scripts/recordmcount.c
@@ -33,10 +33,17 @@
#include <string.h>
#include <unistd.h>
+/*
+ * glibc synced up and added the metag number but didn't add the relocations.
+ * Work around this in a crude manner for now.
+ */
#ifndef EM_METAG
-/* Remove this when these make it to the standard system elf.h. */
#define EM_METAG 174
+#endif
+#ifndef R_METAG_ADDR32
#define R_METAG_ADDR32 2
+#endif
+#ifndef R_METAG_NONE
#define R_METAG_NONE 3
#endif