* [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags
@ 2026-03-31 8:12 thomas.perrot
2026-03-31 14:12 ` Richard Purdie
2026-03-31 15:40 ` Jörg Sommer
0 siblings, 2 replies; 6+ messages in thread
From: thomas.perrot @ 2026-03-31 8:12 UTC (permalink / raw)
To: openembedded-core; +Cc: thomas.petazzoni, Thomas Perrot
From: Thomas Perrot <thomas.perrot@bootlin.com>
Disable LTO for the expect package and append DEBUG_PREFIX_MAP to
TARGET_LDFLAGS when LTO is enabled, ensuring debug info remapping
is applied consistently alongside LTO flags.
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
---
meta/conf/distro/include/lto.inc | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/conf/distro/include/lto.inc b/meta/conf/distro/include/lto.inc
index 8752249685a4..c66dfc5a8074 100644
--- a/meta/conf/distro/include/lto.inc
+++ b/meta/conf/distro/include/lto.inc
@@ -4,6 +4,7 @@
#
# Disable LTO for following packages
+LTO:pn-expect = ""
LTO:pn-glibc = ""
LTO:pn-gcc-runtime = ""
LTO:pn-libgcc-initial = ""
--
2.53.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags
2026-03-31 8:12 [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags thomas.perrot
@ 2026-03-31 14:12 ` Richard Purdie
2026-03-31 14:17 ` Thomas Perrot
2026-03-31 15:40 ` Jörg Sommer
1 sibling, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2026-03-31 14:12 UTC (permalink / raw)
To: thomas.perrot, openembedded-core; +Cc: thomas.petazzoni
On Tue, 2026-03-31 at 10:12 +0200, Thomas Perrot via
lists.openembedded.org wrote:
> From: Thomas Perrot <thomas.perrot@bootlin.com>
>
> Disable LTO for the expect package and append DEBUG_PREFIX_MAP to
> TARGET_LDFLAGS when LTO is enabled, ensuring debug info remapping
> is applied consistently alongside LTO flags.
>
> Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
> ---
> meta/conf/distro/include/lto.inc | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/meta/conf/distro/include/lto.inc
> b/meta/conf/distro/include/lto.inc
> index 8752249685a4..c66dfc5a8074 100644
> --- a/meta/conf/distro/include/lto.inc
> +++ b/meta/conf/distro/include/lto.inc
> @@ -4,6 +4,7 @@
> #
>
> # Disable LTO for following packages
> +LTO:pn-expect = ""
> LTO:pn-glibc = ""
> LTO:pn-gcc-runtime = ""
> LTO:pn-libgcc-initial = ""
>
Is the commit message still correct for this? it doesn't add
DEBUG_PREFIX_MAP?
Cheers,
Richard
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags
2026-03-31 14:12 ` Richard Purdie
@ 2026-03-31 14:17 ` Thomas Perrot
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Perrot @ 2026-03-31 14:17 UTC (permalink / raw)
To: Richard Purdie, openembedded-core; +Cc: thomas.perrot, thomas.petazzoni
[-- Attachment #1: Type: text/plain, Size: 1386 bytes --]
Hello Richard,
On Tue, 2026-03-31 at 15:12 +0100, Richard Purdie wrote:
> On Tue, 2026-03-31 at 10:12 +0200, Thomas Perrot via
> lists.openembedded.org wrote:
> > From: Thomas Perrot <thomas.perrot@bootlin.com>
> >
> > Disable LTO for the expect package and append DEBUG_PREFIX_MAP to
> > TARGET_LDFLAGS when LTO is enabled, ensuring debug info remapping
> > is applied consistently alongside LTO flags.
> >
> > Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
> > ---
> > meta/conf/distro/include/lto.inc | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/meta/conf/distro/include/lto.inc
> > b/meta/conf/distro/include/lto.inc
> > index 8752249685a4..c66dfc5a8074 100644
> > --- a/meta/conf/distro/include/lto.inc
> > +++ b/meta/conf/distro/include/lto.inc
> > @@ -4,6 +4,7 @@
> > #
> >
> > # Disable LTO for following packages
> > +LTO:pn-expect = ""
> > LTO:pn-glibc = ""
> > LTO:pn-gcc-runtime = ""
> > LTO:pn-libgcc-initial = ""
> >
>
> Is the commit message still correct for this? it doesn't add
> DEBUG_PREFIX_MAP?
>
Sorry, I forgot to update the commit message when I modified the
commit.
I will submit a v2 with the correct commit message.
Kind regards,
Thomas Perrot
> Cheers,
>
> Richard
--
Thomas Perrot, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags
2026-03-31 8:12 [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags thomas.perrot
2026-03-31 14:12 ` Richard Purdie
@ 2026-03-31 15:40 ` Jörg Sommer
2026-03-31 19:45 ` Khem Raj
1 sibling, 1 reply; 6+ messages in thread
From: Jörg Sommer @ 2026-03-31 15:40 UTC (permalink / raw)
To: thomas.perrot; +Cc: openembedded-core, thomas.petazzoni
[-- Attachment #1: Type: text/plain, Size: 1966 bytes --]
Thomas Perrot via lists.openembedded.org schrieb am Di 31. Mär, 10:12 (+0200):
> From: Thomas Perrot <thomas.perrot@bootlin.com>
>
> Disable LTO for the expect package and append DEBUG_PREFIX_MAP to
> TARGET_LDFLAGS when LTO is enabled, ensuring debug info remapping
> is applied consistently alongside LTO flags.
>
> Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
> ---
> meta/conf/distro/include/lto.inc | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/meta/conf/distro/include/lto.inc b/meta/conf/distro/include/lto.inc
> index 8752249685a4..c66dfc5a8074 100644
> --- a/meta/conf/distro/include/lto.inc
> +++ b/meta/conf/distro/include/lto.inc
> @@ -4,6 +4,7 @@
> #
>
> # Disable LTO for following packages
> +LTO:pn-expect = ""
I suspect this is due to the gcc bug not because LTO is unsuitable for
expect. Might it be a good idea to move all excludes due to the gcc bug in
its own block? This would make it easier to revert them when the bug gets
resolved.
> LTO:pn-glibc = ""
> LTO:pn-gcc-runtime = ""
> LTO:pn-libgcc-initial = ""
> --
> 2.53.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: Every message in topics or hashtags you are following is emailed to you.
> The first message of every new thread is also emailed to you.
> You automatically follow any topics you start or reply to.
> View/Reply Online (#234270): https://lists.openembedded.org/g/openembedded-core/message/234270
> Follow This Topic: https://lists.openembedded.org/ft/118593189/7646358
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [joerg.sommer@navimatix.de]
> -=-=-=-=-=-=-=-=-=-=-=-
>
--
Navimatix GmbH T: 03641 - 327 99 0
Tatzendpromenade 2 F: 03641 - 526 306
07745 Jena www.navimatix.de
Geschäftsführer: Steffen Späthe, Jan Rommeley
Registergericht: Amtsgericht Jena, HRB 501480
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 5000 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags
2026-03-31 15:40 ` Jörg Sommer
@ 2026-03-31 19:45 ` Khem Raj
2026-03-31 20:27 ` Thomas Perrot
0 siblings, 1 reply; 6+ messages in thread
From: Khem Raj @ 2026-03-31 19:45 UTC (permalink / raw)
To: joerg.sommer; +Cc: thomas.perrot, openembedded-core, thomas.petazzoni
[-- Attachment #1: Type: text/plain, Size: 2129 bytes --]
On Tue, Mar 31, 2026 at 8:40 AM Jörg Sommer via lists.openembedded.org
<joerg.sommer=navimatix.de@lists.openembedded.org> wrote:
> Thomas Perrot via lists.openembedded.org schrieb am Di 31. Mär, 10:12
> (+0200):
> > From: Thomas Perrot <thomas.perrot@bootlin.com>
> >
> > Disable LTO for the expect package and append DEBUG_PREFIX_MAP to
> > TARGET_LDFLAGS when LTO is enabled, ensuring debug info remapping
> > is applied consistently alongside LTO flags.
> >
> > Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
> > ---
> > meta/conf/distro/include/lto.inc | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/meta/conf/distro/include/lto.inc
> b/meta/conf/distro/include/lto.inc
> > index 8752249685a4..c66dfc5a8074 100644
> > --- a/meta/conf/distro/include/lto.inc
> > +++ b/meta/conf/distro/include/lto.inc
> > @@ -4,6 +4,7 @@
> > #
> >
> > # Disable LTO for following packages
> > +LTO:pn-expect = ""
>
> I suspect this is due to the gcc bug not because LTO is unsuitable for
> expect. Might it be a good idea to move all excludes due to the gcc bug in
> its own block? This would make it easier to revert them when the bug gets
> resolved.
>
>
I also wonder if the issue is gcc specific and works with TOOLCHAIN =
"clang"
> > LTO:pn-glibc = ""
> > LTO:pn-gcc-runtime = ""
> > LTO:pn-libgcc-initial = ""
> > --
> > 2.53.0
> >
>
> >
> >
> >
>
> --
> Navimatix GmbH T: 03641 - 327 99 0
> Tatzendpromenade 2 F: 03641 - 526 306
> 07745 Jena www.navimatix.de
>
> Geschäftsführer: Steffen Späthe, Jan Rommeley
> Registergericht: Amtsgericht Jena, HRB 501480
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#234304):
> https://lists.openembedded.org/g/openembedded-core/message/234304
> Mute This Topic: https://lists.openembedded.org/mt/118593189/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
[-- Attachment #2: Type: text/html, Size: 3694 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags
2026-03-31 19:45 ` Khem Raj
@ 2026-03-31 20:27 ` Thomas Perrot
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Perrot @ 2026-03-31 20:27 UTC (permalink / raw)
To: raj.khem, joerg.sommer; +Cc: thomas.perrot, openembedded-core, thomas.petazzoni
[-- Attachment #1.1: Type: text/plain, Size: 4516 bytes --]
Hello,
On Tue, 2026-03-31 at 12:45 -0700, Khem Raj via lists.openembedded.org
wrote:
>
>
> On Tue, Mar 31, 2026 at 8:40 AM Jörg Sommer via
> lists.openembedded.org
> <joerg.sommer=navimatix.de@lists.openembedded.org> wrote:
> > Thomas Perrot via lists.openembedded.org schrieb am Di 31. Mär,
> > 10:12 (+0200):
> > > From: Thomas Perrot <thomas.perrot@bootlin.com>
> > >
> > > Disable LTO for the expect package and append DEBUG_PREFIX_MAP to
> > > TARGET_LDFLAGS when LTO is enabled, ensuring debug info remapping
> > > is applied consistently alongside LTO flags.
> > >
> > > Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
> > > ---
> > > meta/conf/distro/include/lto.inc | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/meta/conf/distro/include/lto.inc
> > b/meta/conf/distro/include/lto.inc
> > > index 8752249685a4..c66dfc5a8074 100644
> > > --- a/meta/conf/distro/include/lto.inc
> > > +++ b/meta/conf/distro/include/lto.inc
> > > @@ -4,6 +4,7 @@
> > > #
> > >
> > > # Disable LTO for following packages
> > > +LTO:pn-expect = ""
> >
> > I suspect this is due to the gcc bug not because LTO is unsuitable
> > for
> > expect. Might it be a good idea to move all excludes due to the gcc
> > bug in
> > its own block? This would make it easier to revert them when the
> > bug gets
> > resolved.
> >
> >
>
>
> I also wonder if the issue is gcc specific and works with TOOLCHAIN =
> "clang"
I investigated further and can confirm your suspicion, this is indeed a
GCC bug,
not an incompatibility between LTO and expect.
With -v added to LDFLAGS, I verified that -ffile-prefix-map flags
are correctly passed to lto1. However, the raw TMPDIR path does not
come from expect's own compilation, it leaks from tcl8 via the
.debug_line_str section:
$ readelf --debug-dump=line libexpect5.45.4.so | grep '/src/build'
0 (indirect line string, offset: 0x7de):
/src/build/tmp/work/.../tcl8/8.6.17/build
During LTO, when GCC incorporates debug info from a linked dependency
(tcl8 here), the directory entries in .debug_line_str are not subject
to prefix remapping. DW_AT_comp_dir is correctly remapped, but
.debug_line_str is not.
This is not expect-specific, any package linking against tcl8 with LTO
could be affected.
Your suggestion to group packages disabled due to this GCC bug
in a separate block, I think it's a good idea.
Kind regards,
Thomas
>
> > > LTO:pn-glibc = ""
> > > LTO:pn-gcc-runtime = ""
> > > LTO:pn-libgcc-initial = ""
> > > --
> > > 2.53.0
> > >
> >
> > >
> > >
> > >
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#234313):
> > https://lists.openembedded.org/g/openembedded-core/message/234313
> > Mute This Topic:
> > https://lists.openembedded.org/mt/118593189/5443093
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe:
> > https://lists.openembedded.org/g/openembedded-core/unsub [
> > thomas.perrot@bootlin.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
--
Thomas Perrot, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
[-- Attachment #1.2: Type: text/html, Size: 9104 bytes --]
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-03-31 20:27 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-31 8:12 [OE-core][PATCH] lto: disable for expect and add DEBUG_PREFIX_MAP to ldflags thomas.perrot
2026-03-31 14:12 ` Richard Purdie
2026-03-31 14:17 ` Thomas Perrot
2026-03-31 15:40 ` Jörg Sommer
2026-03-31 19:45 ` Khem Raj
2026-03-31 20:27 ` Thomas Perrot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox