Re: [PATCH v3 0/7] Rework device probing

Kevin Traynor
2026-04-10T15:16:21Z

On 4/10/26 3:34 PM, Morten Brørup wrote:
> Is there a workaround until this patch is added, if I don't want rte_eal_init() to probe any devices, but I want my application to probe devices later by calling rte_bus_scan() followed by rte_bus_probe()?
>
> It's not something we really need, so if you don't know it off the top of your head, don't spend time trying to figure it out.
>

The workaround we have used is '-a 0000:00:00.0' Only allowing a dummy
device, hence other devices are hotplugged as needed.

>
> Venlig hilsen / Kind regards,
> -Morten Brørup
>
>> -----Original Message-----
>> From: David Marchand [mailto:david.marchand@redhat.com]
>> Sent: Tuesday, 7 April 2026 13.52
>> To: dev@dpdk.org
>> Subject: [PATCH v3 0/7] Rework device probing
>>
>> Applications relying on device hotplug don't work well with the default
>> probing of all available resources.
>> This series proposes to change this behavior via a new EAL option.
>>
>>
>> --
>> David Marchand
>>
>> Changes since v2:
>> - rebased for late 26.03 fslmc bus changes,
>> - fixed devargs lookup,
>> - added debug logs,
>>
>> Changes since v1:
>> - restored per bus scan mode,
>> - fixed logic in device selection for dma/idxd,
>> - fixed raw/ifpga hotplug on ifpga bus,
>> - fixed some doxygen,
>>
>> Changes since RFC v3:
>> - removed per bus scan mode,
>>
>> Changes since RFC v2:
>> - went one step further and reworked devargs lookup in buses following
>> Bruce comment (see patch 4 which is cosmetic, and patch 5),
>> - updated device selection helper accordingly and
>> changed API to be device name based,
>> - renamed option, added check on -b presence, updated doc in the last
>> patch,
>>
>> Changes since RFC v1:
>> - reviewed bus probe() and cleaned up NXP drivers,
>> - changed approach following Bruce comment,
>>
>> David Marchand (7):
>> devtools: check packet forwarding in null test
>> bus/fslmc: fix bus cleanup
>> drivers/bus: require probe function for NXP drivers
>> drivers/bus: cleanup devargs lookup in scan
>> bus: factorize devargs lookup
>> bus: factorize device selection
>> eal: configure initial device probing
>>
>> app/test/test_eal_flags.c | 63 ++++++++++++++++
>> devtools/test-null.sh | 10 ++-
>> doc/guides/linux_gsg/eal_args.include.rst | 13 ++++
>> drivers/bus/auxiliary/auxiliary_common.c | 33 +--------
>> drivers/bus/auxiliary/bus_auxiliary_driver.h | 2 -
>> drivers/bus/auxiliary/linux/auxiliary.c | 2 +-
>> drivers/bus/auxiliary/private.h | 6 --
>> drivers/bus/cdx/cdx.c | 34 +--------
>> drivers/bus/dpaa/dpaa_bus.c | 71 ++++++++----------
>> drivers/bus/fslmc/fslmc_bus.c | 75 ++++++++------------
>> drivers/bus/fslmc/fslmc_vfio.c | 21 ++----
>> drivers/bus/ifpga/ifpga_bus.c | 8 ++-
>> drivers/bus/pci/bsd/pci.c | 5 +-
>> drivers/bus/pci/linux/pci.c | 2 +-
>> drivers/bus/pci/pci_common.c | 51 ++++---------
>> drivers/bus/pci/private.h | 11 ---
>> drivers/bus/pci/windows/pci.c | 4 +-
>> drivers/bus/platform/platform.c | 43 +----------
>> drivers/bus/uacce/uacce.c | 39 +---------
>> drivers/bus/vdev/vdev.c | 2 +-
>> drivers/bus/vmbus/linux/vmbus_bus.c | 2 +-
>> drivers/bus/vmbus/private.h | 3 -
>> drivers/bus/vmbus/vmbus_common.c | 45 +++---------
>> drivers/dma/idxd/idxd_bus.c | 18 +----
>> lib/eal/common/eal_common_bus.c | 54 ++++++++++++++
>> lib/eal/common/eal_common_options.c | 10 +++
>> lib/eal/common/eal_internal_cfg.h | 1 +
>> lib/eal/common/eal_option_list.h | 2 +
>> lib/eal/include/bus_driver.h | 38 ++++++++++
>> 29 files changed, 301 insertions(+), 367 deletions(-)
>>
>> --
>> 2.53.0
>