summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Krummenacher <max.krummenacher@toradex.com>2020-02-24 13:18:54 +0100
committerMax Krummenacher <max.krummenacher@toradex.com>2020-02-24 13:20:15 +0100
commit17ac8e6eec41dc8e391fbb76ad050fea79dd2686 (patch)
treeac521d1b4eb4d9014961df78ff92f6ee47fb0183
parentc6427eec63ccafe8233d6a4f34b46e68e59ae91a (diff)
linux-toradex-mainline: allow build with latest libbfd
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
-rw-r--r--recipes-kernel/linux/linux-toradex-mainline-4.14/0001-perf-Make-perf-able-to-build-with-latest-libbfd.patch61
-rw-r--r--recipes-kernel/linux/linux-toradex-mainline_4.14.bb1
2 files changed, 62 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-toradex-mainline-4.14/0001-perf-Make-perf-able-to-build-with-latest-libbfd.patch b/recipes-kernel/linux/linux-toradex-mainline-4.14/0001-perf-Make-perf-able-to-build-with-latest-libbfd.patch
new file mode 100644
index 0000000..2c5926b
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-mainline-4.14/0001-perf-Make-perf-able-to-build-with-latest-libbfd.patch
@@ -0,0 +1,61 @@
+From b8365d06ca691301985c4a6fd7c6896cba1fa4b4 Mon Sep 17 00:00:00 2001
+From: Changbin Du <changbin.du@gmail.com>
+Date: Tue, 28 Jan 2020 23:29:38 +0800
+Subject: [PATCH] perf: Make perf able to build with latest libbfd
+
+libbfd has changed the bfd_section_* macros to inline functions
+bfd_section_<field> since 2019-09-18. See below two commits:
+ o http://www.sourceware.org/ml/gdb-cvs/2019-09/msg00064.html
+ o https://www.sourceware.org/ml/gdb-cvs/2019-09/msg00072.html
+
+This fix make perf able to build with both old and new libbfd.
+
+Signed-off-by: Changbin Du <changbin.du@gmail.com>
+Acked-by: Jiri Olsa <jolsa@redhat.com>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Link: http://lore.kernel.org/lkml/20200128152938.31413-1-changbin.du@gmail.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+(cherry picked from commit 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015)
+---
+ tools/perf/util/srcline.c | 16 +++++++++++++++-
+ 1 file changed, 15 insertions(+), 1 deletion(-)
+
+diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
+index 4105682afc7a..774412c4d98c 100644
+--- a/tools/perf/util/srcline.c
++++ b/tools/perf/util/srcline.c
+@@ -139,16 +139,30 @@ static void find_address_in_section(bfd *abfd, asection *section, void *data)
+ bfd_vma pc, vma;
+ bfd_size_type size;
+ struct a2l_data *a2l = data;
++ flagword flags;
+
+ if (a2l->found)
+ return;
+
+- if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
++#ifdef bfd_get_section_flags
++ flags = bfd_get_section_flags(abfd, section);
++#else
++ flags = bfd_section_flags(section);
++#endif
++ if ((flags & SEC_ALLOC) == 0)
+ return;
+
+ pc = a2l->addr;
++#ifdef bfd_get_section_vma
+ vma = bfd_get_section_vma(abfd, section);
++#else
++ vma = bfd_section_vma(section);
++#endif
++#ifdef bfd_get_section_size
+ size = bfd_get_section_size(section);
++#else
++ size = bfd_section_size(section);
++#endif
+
+ if (pc < vma || pc >= vma + size)
+ return;
+--
+2.20.1
+
diff --git a/recipes-kernel/linux/linux-toradex-mainline_4.14.bb b/recipes-kernel/linux/linux-toradex-mainline_4.14.bb
index f2e9316..15f254b 100644
--- a/recipes-kernel/linux/linux-toradex-mainline_4.14.bb
+++ b/recipes-kernel/linux/linux-toradex-mainline_4.14.bb
@@ -48,6 +48,7 @@ GENERIC_PATCHES = " \
file://0033-apalis-tk1-mfd-k20-supporte-for-fw-version-1.3.patch \
file://0034-apalis-tk1-mfd-k20-update-supported-fw-version-to-1..patch \
file://0035-perf-tools-Add-Python-3-support.patch \
+ file://0001-perf-Make-perf-able-to-build-with-latest-libbfd.patch \
"
MACHINE_PATCHES = " \
"