]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.19-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Jul 2020 12:01:20 +0000 (14:01 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Jul 2020 12:01:20 +0000 (14:01 +0200)
added patches:
perf-make-perf-able-to-build-with-latest-libbfd.patch

queue-4.19/perf-make-perf-able-to-build-with-latest-libbfd.patch [new file with mode: 0644]
queue-4.19/series [new file with mode: 0644]

diff --git a/queue-4.19/perf-make-perf-able-to-build-with-latest-libbfd.patch b/queue-4.19/perf-make-perf-able-to-build-with-latest-libbfd.patch
new file mode 100644 (file)
index 0000000..79ca90b
--- /dev/null
@@ -0,0 +1,62 @@
+From 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015 Mon Sep 17 00:00:00 2001
+From: Changbin Du <changbin.du@intel.com>
+Date: Tue, 28 Jan 2020 23:29:38 +0800
+Subject: perf: Make perf able to build with latest libbfd
+
+From: Changbin Du <changbin.du@gmail.com>
+
+commit 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015 upstream.
+
+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>
+Cc: Jianmin Wang <jianmin@iscas.ac.cn>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ tools/perf/util/srcline.c |   16 +++++++++++++++-
+ 1 file changed, 15 insertions(+), 1 deletion(-)
+
+--- a/tools/perf/util/srcline.c
++++ b/tools/perf/util/srcline.c
+@@ -191,16 +191,30 @@ static void find_address_in_section(bfd
+       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;
diff --git a/queue-4.19/series b/queue-4.19/series
new file mode 100644 (file)
index 0000000..b3caeaf
--- /dev/null
@@ -0,0 +1 @@
+perf-make-perf-able-to-build-with-latest-libbfd.patch