DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: Thierry Herbelot <thierry.herbelot@6wind.com>
Cc: <dev@dpdk.org>, Thomas Monjalon <thomas@monjalon.net>,
	David Marchand <david.marchand@redhat.com>,
	Stephen Hemminger <stephen@networkplumber.org>,
	Olivier Matz <olivier.matz@6wind.com>
Subject: Re: [V2] net/intel/e1000: reduce the optimization level for gcc > 11
Date: Wed, 8 Oct 2025 09:38:11 +0100	[thread overview]
Message-ID: <aOYi82c71qlZiazJ@bricha3-mobl1.ger.corp.intel.com> (raw)
In-Reply-To: <20251006130257.391200-1-thierry.herbelot@6wind.com>

On Mon, Oct 06, 2025 at 03:02:57PM +0200, Thierry Herbelot wrote:
> The e1000 PMD stopped working under Ubuntu-24.04 (using gcc-13) when
> compiled with -O3 (default level for all DPDK code). There is a crash
> when starting testpmd:
> 
> > (gdb) bt
> > #0  rte_read32_relaxed (addr=0x1100800e00) at ../sources/lib/eal/include/generic/rte_io.h:290
> > #1  rte_read32 (addr=0x1100800e00) at ../sources/lib/eal/include/generic/rte_io.h:345
> > #2  e1000_read_addr (addr=0x1100800e00) at ../sources/drivers/net/intel/e1000/base/e1000_osdep.h:106
> > #3  e1000_id_led_init_generic (hw=0x1586788c0) at ../sources/drivers/net/intel/e1000/base/e1000_mac.c:1844
> > #4  0x000062aaf653c85f in e1000_init_hw_82540 (hw=0x1586788c0)
> >     at ../sources/drivers/net/intel/e1000/base/e1000_82540.c:308
> > #5  0x000062aaf6db8227 in em_hardware_init (hw=hw@entry=0x1586788c0)
> >     at ../sources/drivers/net/intel/e1000/em_ethdev.c:920
> > #6  0x000062aaf65340ff in em_hw_init (hw=0x1586788c0) at ../sources/drivers/net/intel/e1000/em_ethdev.c:445
> > #7  eth_em_dev_init (eth_dev=eth_dev@entry=0x62aaff346000 <rte_eth_devices>)
> >     at ../sources/drivers/net/intel/e1000/em_ethdev.c:314
> > #8  0x000062aaf6db8b71 in rte_eth_dev_pci_generic_probe (private_data_size=11240,
> >     dev_init=0x62aaf6db8310 <eth_em_dev_init>, pci_dev=0x62ab2853dd90) at ../sources/lib/ethdev/ethdev_pci.h:150
> > #9  eth_em_pci_probe (pci_drv=<optimized out>, pci_dev=0x62ab2853dd90)
> >     at ../sources/drivers/net/intel/e1000/em_ethdev.c:365
> > #10 0x000062aaf646adf5 in rte_pci_probe_one_driver (dr=dr@entry=0x62aaf82d8020 <rte_em_pmd>,
> >     dev=dev@entry=0x62ab2853dd90) at ../sources/drivers/bus/pci/pci_common.c:299
> > #11 0x000062aaf6a15f7d in pci_probe_all_drivers (dev=0x62ab2853dd90) at ../sources/drivers/bus/pci/pci_common.c:383
> > #12 pci_probe () at ../sources/drivers/bus/pci/pci_common.c:410
> > #13 0x000062aaf7a485f3 in rte_bus_probe () at ../sources/lib/eal/common/eal_common_bus.c:84
> > #14 0x000062aaf670585d in rte_eal_init (argc=argc@entry=146, argv=argv@entry=0x7fffca468898)
> >     at ../sources/lib/eal/linux/eal.c:1253
> 
> The crash is linked to the use of gcc-13: under Ubuntu-24.04 testpmd
> compiled with gcc-11 from the same DPDK tree works as expected.
> 
> The perfect solution would be for someone to investigate why the
> PMD crashes. However, this depends on Maintainer availability.
> 
> A less-perfect solution is to reduce the optimization level
> (like another proposal for net/qede: see Link).
> 
Thanks for reporting the issue. I'd like to spend a little time trying to
really root cause the issue before applying this workaround patch. Can you
provide a bit more info about the setup you used when you hit this issue. I
expect a lot of use of e1000 driver is in virtualized setups, but can you
confirm if that was the case here, or were you using real hardware?

If we do have to apply this workaround fix of reducing optimization level,
I see you reduce optimization for both the base code and the DPDK-specific
driver code. Is it necessary to reduce optimization on both, or can we get
away with just reducing it on the DPDK part alone?

Thanks,
/Bruce

  reply	other threads:[~2025-10-08  8:38 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-06 12:45 [PATCH] " Thierry Herbelot
2025-10-06 12:55 ` David Marchand
2025-10-06 13:01   ` Thierry Herbelot
2025-10-06 13:03     ` David Marchand
2025-10-06 13:02 ` [V2] " Thierry Herbelot
2025-10-08  8:38   ` Bruce Richardson [this message]
2025-10-08 10:10     ` Thomas Monjalon
2025-10-08 11:25       ` Thierry Herbelot
2025-10-10 13:20   ` Bruce Richardson
2025-10-10 13:23     ` Thierry Herbelot

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=aOYi82c71qlZiazJ@bricha3-mobl1.ger.corp.intel.com \
    --to=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=olivier.matz@6wind.com \
    --cc=stephen@networkplumber.org \
    --cc=thierry.herbelot@6wind.com \
    --cc=thomas@monjalon.net \
    /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;
as well as URLs for NNTP newsgroup(s).