From: Darren Worrall The build can currently fail with ld: vmlinux.o: in function `idpf_plug_vport_aux_dev': drivers/net/ethernet/intel/idpf/idpf_idc.c:82: undefined reference to `auxiliary_device_init' ld: drivers/net/ethernet/intel/idpf/idpf_idc.c:86: undefined reference to `__auxiliary_device_add' ld: vmlinux.o: in function `idpf_plug_core_aux_dev': drivers/net/ethernet/intel/idpf/idpf_idc.c:223: undefined reference to `auxiliary_device_init' ld: drivers/net/ethernet/intel/idpf/idpf_idc.c:227: undefined reference to `__auxiliary_device_add' if IDPF is enabled but no other driver pulls in AUXILIARY_BUS. We hit this building a minimal kernel for hosts with IDPF NICs. It can be reproduced on x86_64 from allnoconfig by enabling PCI, PCI_MSI, NET, NETDEVICES, ETHERNET, NET_VENDOR_INTEL and IDPF. Select AUXILIARY_BUS in IDPF, as ICE and I40E already do. The same link failure was fixed for BNGE in commit d7065436e8a0 ("net: bnge: add AUXILIARY_BUS to Kconfig dependencies"). Build-tested with that configuration on net-queue (dev-queue, 34a70a40c954) and on mainline (067c5c24cef2): vmlinux fails to link without this patch and links with it. Boot-tested on bare metal (AMD EPYC) with a Google Cloud IDPF NIC, using a 6.18.60 kernel carrying the same change and IDPF built in: idpf probes the NIC and its link comes up. Fixes: f4312e6bfa2a ("idpf: implement core RDMA auxiliary dev create, init, and destroy") Cc: stable@vger.kernel.org # 6.17+ Signed-off-by: Darren Worrall --- The link failure was diagnosed, this patch drafted and the tests above run with the help of an AI coding assistant. I reviewed the patch and the test results. --- drivers/net/ethernet/intel/idpf/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/intel/idpf/Kconfig b/drivers/net/ethernet/intel/idpf/Kconfig index 586df3a4af..6b59173e0d 100644 --- a/drivers/net/ethernet/intel/idpf/Kconfig +++ b/drivers/net/ethernet/intel/idpf/Kconfig @@ -5,6 +5,7 @@ config IDPF tristate "Intel(R) Infrastructure Data Path Function Support" depends on PCI_MSI depends on PTP_1588_CLOCK_OPTIONAL + select AUXILIARY_BUS select DIMLIB select LIBIE_CP select LIBETH_XDP --- base-commit: 34a70a40c954fb8044ecd124840a2c38cd3aa4cc change-id: 20261111-idpf-auxiliary-bus-c0058e27cd9d Best regards, -- Darren Worrall