* [DPDK/ethdev Bug 1691] e1000 device initialization fails with SIGILL in KVM
@ 2025-04-03 21:07 bugzilla
0 siblings, 0 replies; only message in thread
From: bugzilla @ 2025-04-03 21:07 UTC (permalink / raw)
To: dev
[-- Attachment #1: Type: text/plain, Size: 2611 bytes --]
https://bugs.dpdk.org/show_bug.cgi?id=1691
Bug ID: 1691
Summary: e1000 device initialization fails with SIGILL in KVM
Product: DPDK
Version: 24.11
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: ethdev
Assignee: dev@dpdk.org
Reporter: mgsmith@netgate.com
Target Milestone: ---
Created attachment 309
--> https://bugs.dpdk.org/attachment.cgi?id=309&action=edit
backtrace from gdb
When attempting to run FD.io VPP in a qemu VM with e1000 interfaces, SIGILL is
caught during initialization of one of the e1000 interfaces attached to the VM.
The value of si_code is 2 (illegal operand).
This occurs on at least VPP versions:
24.10 (DPDK 24.07)
25.02 (DPDK 24.11)
The VM where the problem occurs is running ubuntu 24.04 LTS (kernel
6.8.0-54-generic). This issue does not occur on another VM running ubuntu 22.04
LTS (kernel 5.15.0-133-generic) on the same host system and using the same
version of VPP/DPDK.
The problem occurs very consistently when DPDK is compiled with gcc using
optimization level 2 or 3. It does not occur when DPDK is compiled with gcc
using optimization level 1 or compiled with clang.
I'll attach a text file with a stack trace since I don't know how to make it
format nicely here. The signal is caught in e1000_id_led_init_generic() while
trying to read from the memory address of the ledctl register.
Googling found someone else reporting the same problem to qemu -
https://gitlab.com/qemu-project/qemu/-/issues/2784. It doesn't seem to me like
the issue can be attributed to qemu though.
It should be possible to reproduce the problem via:
1) Provision a qemu VM running ubuntu 24.04 ("noble"). Attach one or more e1000
NICs.
2) In the VM, install the VPP 25.02 deb packages (libvppinfra, vpp,
vpp-plugin-core, vpp-plugin-devtools, vpp-plugin-dpdk) for noble
(https://packagecloud.io/fdio/2502).
3) In the VM, run 'systemctl stop vpp.service' to make sure VPP is shut down.
4) In the VM, edit /etc/vpp/startup.conf. Add a line containing 'dpdk { dev
<PCI_addr_of_e1000> }'.
5) In the VM, run 'systemctl start vpp.service' to start VPP. Or just execute
it from a shell as /usr/bin/vpp -c /etc/vpp/startup.conf. In either case, it
should crash immediately on SIGILL.
I'm not sure if it also affects e1000 hardware devices, I don't have any to
test.
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #2: Type: text/html, Size: 4749 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-04-03 21:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-03 21:07 [DPDK/ethdev Bug 1691] e1000 device initialization fails with SIGILL in KVM bugzilla
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.