From: "Denys Zagorui -X (dzagorui - GLOBALLOGIC INC@Cisco)" <dzagorui@cisco.com>
To: Khem Raj <raj.khem@gmail.com>
Cc: Patches and discussions about the oe-core layer
<openembedded-core@lists.openembedded.org>
Subject: Re: [OE-core] [PATCH] binutils: reproducibility: reuse debug-prefix-map for stabs
Date: Tue, 10 Nov 2020 20:08:37 +0000 [thread overview]
Message-ID: <1605038916765.89270@cisco.com> (raw)
In-Reply-To: <CAMKF1sqMhUQRY7riVpBqZdmZ4qZpZCMcpsdVeismjO-x39Y0VQ@mail.gmail.com>
Yes, i'll propose it for dunfell also
________________________________________
From: Khem Raj <raj.khem@gmail.com>
Sent: Tuesday, November 10, 2020 8:47 PM
To: Denys Zagorui -X (dzagorui - GLOBALLOGIC INC at Cisco)
Cc: Patches and discussions about the oe-core layer
Subject: Re: [OE-core] [PATCH] binutils: reproducibility: reuse debug-prefix-map for stabs
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
<dzagorui=cisco.com@lists.openembedded.org> 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 <dzagorui@cisco.com>
> ---
> 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 <dzagorui@cisco.com>
> +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
>
>
>
>
prev parent reply other threads:[~2020-11-10 20:08 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-10 18:14 [PATCH] binutils: reproducibility: reuse debug-prefix-map for stabs Denys Zagorui -X (dzagorui - GLOBALLOGIC INC@Cisco)
2020-11-10 18:47 ` [OE-core] " Khem Raj
2020-11-10 20:08 ` Denys Zagorui -X (dzagorui - GLOBALLOGIC INC@Cisco) [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1605038916765.89270@cisco.com \
--to=dzagorui@cisco.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=raj.khem@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox