This looks good. Can you also propose it for dunfell?

On Tue, Nov 10, 2020 at 10:14 AM Denys Zagorui -X (dzagorui -
GLOBALLOGIC INC@Cisco) via lists.openembedded.org
<[email protected]> wrote:
>
> powerpc 32bit Linux Kernel widely uses .stabs pseudo-op to
> produce debugging information in stabs format. Faced an issue
> that during Linux Kernel build with Yocto build system for 32bit
> powerpc platform resulting vmlinux contains absolute path in
> .stabstr section that cannot be remapped with -fdebug-prefix-map
> option.
>
> Yocto uses scripts/mkmakefile Linux Kernel build approach that
> allows to store all generated files outside of kernel source
> tree. With this approach each compilier invocation is performed
> with an absolute path to a file that will be compiled and this
> absolute path is recorded in init stab. There is no way to remap
> this path.
>
> Reuse remap_debug_filename api to make -fdebug-prefix-map flag
> aplicable for init stab.
>
> Signed-off-by: Denys Zagorui <[email protected]>
> ---
>  meta/recipes-devtools/binutils/binutils-2.35.inc   |  1 +
>  ...-reproducibility-for-stabs-debugging-data.patch | 35 
> ++++++++++++++++++++++
>  2 files changed, 36 insertions(+)
>  create mode 100644 
> meta/recipes-devtools/binutils/binutils/0017-gas-improve-reproducibility-for-stabs-debugging-data.patch
>
> diff --git a/meta/recipes-devtools/binutils/binutils-2.35.inc 
> b/meta/recipes-devtools/binutils/binutils-2.35.inc
> index 5ae9ec4..bc9107b 100644
> --- a/meta/recipes-devtools/binutils/binutils-2.35.inc
> +++ b/meta/recipes-devtools/binutils/binutils-2.35.inc
> @@ -41,5 +41,6 @@ SRC_URI = "\
>       file://0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch \
>       file://0015-sync-with-OE-libtool-changes.patch \
>       file://0016-Check-for-clang-before-checking-gcc-version.patch \
> +     file://0017-gas-improve-reproducibility-for-stabs-debugging-data.patch \
>  "
>  S  = "${WORKDIR}/git"
> diff --git 
> a/meta/recipes-devtools/binutils/binutils/0017-gas-improve-reproducibility-for-stabs-debugging-data.patch
>  
> b/meta/recipes-devtools/binutils/binutils/0017-gas-improve-reproducibility-for-stabs-debugging-data.patch
> new file mode 100644
> index 0000000..42e0c1c
> --- /dev/null
> +++ 
> b/meta/recipes-devtools/binutils/binutils/0017-gas-improve-reproducibility-for-stabs-debugging-data.patch
> @@ -0,0 +1,35 @@
> +From aa6586e80fc6fcd739aa959a71e4cf064cdef072 Mon Sep 17 00:00:00 2001
> +From: Denys Zagorui <[email protected]>
> +Date: Mon, 9 Nov 2020 15:39:10 +0000
> +Subject: [PATCH] gas: improve reproducibility for stabs debugging data format
> +
> +       * config/obj-elf (obj_elf_init_stab_section): Improve
> +       reproducibility for stabs debugging data format
> +
> +Upstream-Status: Backport 
> [https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0541201782c006c09d029d18a45c6e743cfea906]
> +---
> + gas/config/obj-elf.c | 3 ++-
> + 1 file changed, 2 insertions(+), 1 deletion(-)
> +
> +diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c
> +index de22b5a1da..2025df8542 100644
> +--- a/gas/config/obj-elf.c
> ++++ b/gas/config/obj-elf.c
> +@@ -2374,12 +2374,13 @@ obj_elf_init_stab_section (segT seg)
> +   p = frag_more (12);
> +   /* Zero it out.  */
> +   memset (p, 0, 12);
> +-  file = as_where (NULL);
> ++  file = remap_debug_filename (as_where (NULL));
> +   stabstr_name = concat (segment_name (seg), "str", (char *) NULL);
> +   stroff = get_stab_string_offset (file, stabstr_name, TRUE);
> +   know (stroff == 1 || (stroff == 0 && file[0] == '\0'));
> +   md_number_to_chars (p, stroff, 4);
> +   seg_info (seg)->stabu.p = p;
> ++  xfree ((char *) file);
> + }
> +
> + #endif
> +--
> +2.20.1
> +
> --
> 2.7.4
>
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#144447): 
https://lists.openembedded.org/g/openembedded-core/message/144447
Mute This Topic: https://lists.openembedded.org/mt/78165527/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

  • ... Denys Zagorui -X (dzagorui - GLOBALLOGIC INC@Cisco) via lists.openembedded.org
    • ... Khem Raj
      • ... Denys Zagorui -X (dzagorui - GLOBALLOGIC INC@Cisco) via lists.openembedded.org

Reply via email to