From: Thierry Herbelot <thierry.herbelot@6wind.com>
To: David Marchand <david.marchand@redhat.com>
Cc: dev@dpdk.org, Thomas Monjalon <thomas@monjalon.net>,
Bruce Richardson <bruce.richardson@intel.com>,
Stephen Hemminger <stephen@networkplumber.org>,
Olivier Matz <olivier.matz@6wind.com>
Subject: Re: [PATCH] net/intel/e1000: reduce the optimization level for gcc > 11
Date: Mon, 6 Oct 2025 15:01:30 +0200 [thread overview]
Message-ID: <8f14ef89-8f1a-42e7-8cf3-e609de32a98d@6wind.com> (raw)
In-Reply-To: <CAJFAV8zvhYiOy=PuUctg8N7EyM6asQdDNpnx_Xc+WusCz02L+A@mail.gmail.com>
On 10/6/25 14:55, David Marchand wrote:
> On Mon, 6 Oct 2025 at 14:45, Thierry Herbelot
> <thierry.herbelot@6wind.com> 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: uner 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).
>>
>> Note: if more regressions are seen in less-frequently used PMDs,
>> maybe we should switch the default optimization level to -O1,
>> (tree-wide) and only rise the optimization level for actively
>> maintained PMDs, which are proven to work as expected with
>> higher optimization levels.
>>
>> Link: http://patches.dpdk.org/project/dpdk/patch/20250909054023.3263401-1-thierry.herbelot@6wind.com/
>> Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com>
>
> NAK.
> Please RCA this rather than hiding such an issue.
Hello David,
As said in the commit log, this is clearly a Maintainer issue, who will
have the hardware documentation. The PMD is broken, and this was not
seen until a new gcc is used.
We can not expect a random developer to sprinkle memory barriers in the
PMD until testpmd seems to be working.
Best regards
Thierry
--
Thierry Herbelot
next prev parent reply other threads:[~2025-10-06 13:01 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-06 12:45 [PATCH] net/intel/e1000: reduce the optimization level for gcc > 11 Thierry Herbelot
2025-10-06 12:55 ` David Marchand
2025-10-06 13:01 ` Thierry Herbelot [this message]
2025-10-06 13:03 ` David Marchand
2025-10-06 13:02 ` [V2] " Thierry Herbelot
2025-10-08 8:38 ` Bruce Richardson
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=8f14ef89-8f1a-42e7-8cf3-e609de32a98d@6wind.com \
--to=thierry.herbelot@6wind.com \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=olivier.matz@6wind.com \
--cc=stephen@networkplumber.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.