[meta-arm] linux-linaro-arm_5.4: fix build of Perf with new BFD

Submitted by Ross Burton on June 30, 2020, 9:23 p.m. | Patch ID: 174108

Details

Message ID 20200630212335.36096-1-ross@burtonini.com
State New
Headers show

Commit Message

Ross Burton June 30, 2020, 9:23 p.m.
From: Ross Burton <ross.burton@arm.com>

Change-Id: Ice129ecddc17c3c24e177cf4f2d3445daeb6b455
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 .../linux-linaro-arm-5.4/fix-bfd-link.patch   | 60 +++++++++++++++++++
 .../linux/linux-linaro-arm_5.4.bb             |  1 +
 2 files changed, 61 insertions(+)
 create mode 100644 meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch

Patch hide | download patch | download mbox

diff --git a/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch
new file mode 100644
index 0000000..63d4fda
--- /dev/null
+++ b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch
@@ -0,0 +1,60 @@ 
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015 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>
+---
+ 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 6ccf6f6d09df9..5b7d6c16d33fe 100644
+--- a/tools/perf/util/srcline.c
++++ b/tools/perf/util/srcline.c
+@@ -193,16 +193,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;
diff --git a/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb
index d2cd127..516573a 100644
--- a/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb
+++ b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb
@@ -13,6 +13,7 @@  KBRANCH = "n1sdp"
 
 SRC_URI = "git://git.linaro.org/landing-teams/working/arm/kernel-release.git;nobranch=1 \
            file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-location.patch \
+           file://fix-bfd-link.patch \
           "
 LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
 

Comments

Jon Mason July 2, 2020, 3:02 a.m.
On Tue, Jun 30, 2020 at 10:23:35PM +0100, Ross Burton wrote:
> From: Ross Burton <ross.burton@arm.com>
> 
> Change-Id: Ice129ecddc17c3c24e177cf4f2d3445daeb6b455
> Signed-off-by: Ross Burton <ross.burton@arm.com>

Applied to master.

Thanks,
Jon

> ---
>  .../linux-linaro-arm-5.4/fix-bfd-link.patch   | 60 +++++++++++++++++++
>  .../linux/linux-linaro-arm_5.4.bb             |  1 +
>  2 files changed, 61 insertions(+)
>  create mode 100644 meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch
> 
> diff --git a/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch
> new file mode 100644
> index 0000000..63d4fda
> --- /dev/null
> +++ b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm-5.4/fix-bfd-link.patch
> @@ -0,0 +1,60 @@
> +Upstream-Status: Backport
> +Signed-off-by: Ross Burton <ross.burton@arm.com>
> +
> +From 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015 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>
> +---
> + 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 6ccf6f6d09df9..5b7d6c16d33fe 100644
> +--- a/tools/perf/util/srcline.c
> ++++ b/tools/perf/util/srcline.c
> +@@ -193,16 +193,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;
> diff --git a/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb
> index d2cd127..516573a 100644
> --- a/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb
> +++ b/meta-arm-bsp/recipes-kernel/linux/linux-linaro-arm_5.4.bb
> @@ -13,6 +13,7 @@ KBRANCH = "n1sdp"
>  
>  SRC_URI = "git://git.linaro.org/landing-teams/working/arm/kernel-release.git;nobranch=1 \
>             file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-location.patch \
> +           file://fix-bfd-link.patch \
>            "
>  LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
>  
> -- 
> 2.24.3 (Apple Git-128)
> 

>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#801): https://lists.yoctoproject.org/g/meta-arm/message/801
Mute This Topic: https://lists.yoctoproject.org/mt/75222996/3617530
Group Owner: meta-arm+owner@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/meta-arm/unsub  [oe-patchwork@oe-patch.openembedded.org]
-=-=-=-=-=-=-=-=-=-=-=-