[v2] octeontx2_pf: Select NET_DEVLINK when enabling OCTEONTX2_PF

Message ID 20221219171918.834772-1-paul@pgazz.com
State New
Headers
Series [v2] octeontx2_pf: Select NET_DEVLINK when enabling OCTEONTX2_PF |

Commit Message

Paul Gazzillo Dec. 19, 2022, 5:19 p.m. UTC
  When using COMPILE_TEST, the driver controlled by OCTEONTX2_PF does
not select NET_DEVLINK while the related OCTEONTX2_AF driver does.
This means that when OCTEONTX2_PF is enabled from a default
configuration, linker errors will occur due to undefined references to
code controlled by NET_DEVLINK.

1. make.cross ARCH=x86_64 defconfig
2. make.cross ARCH=x86_64 menuconfig
3. Enable COMPILE_TEST
   General setup  --->
     Compile also drivers which will not load
4. Enable OCTEONTX2_PF
   Device Drivers  --->
     Network device support  --->
       Ethernet driver support  --->
         Marvell OcteonTX2 NIC Physical Function driver
5. Exit and save configuration.  NET_DEVLINK will still be disabled.
6. make.cross ARCH=x86_64 several linker errors, for example,
   ld: drivers/net/ethernet/marvell/octeontx2/nic/otx2_devlink.o:
     in function `otx2_register_dl':
   otx2_devlink.c:(.text+0x142): undefined reference to `devlink_alloc_ns'

This fix adds "select NET_DEVLINK" link to OCTEONTX2_PF's Kconfig
specification to match OCTEONTX2_AF.

Fixes: 2da489432747 ("octeontx2-pf: devlink params support to set mcam entry count")
Signed-off-by: Paul Gazzillo <paul@pgazz.com>
---
v1 -> v2: Added the fixes tag

 drivers/net/ethernet/marvell/octeontx2/Kconfig | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Jakub Kicinski Dec. 20, 2022, 7:38 p.m. UTC | #1
On Mon, 19 Dec 2022 12:19:11 -0500 Paul Gazzillo wrote:
> When using COMPILE_TEST, the driver controlled by OCTEONTX2_PF does
> not select NET_DEVLINK while the related OCTEONTX2_AF driver does.
> This means that when OCTEONTX2_PF is enabled from a default
> configuration, linker errors will occur due to undefined references to
> code controlled by NET_DEVLINK.

This has been fixed a long time ago by 9cbc3367968d ("octeontx2-pf:
select CONFIG_NET_DEVLINK") no?
  
Paul Gazzillo Dec. 20, 2022, 7:49 p.m. UTC | #2
On 12/20/2022, Jakub Kicinski wrote:
> On Mon, 19 Dec 2022 12:19:11 -0500 Paul Gazzillo wrote:
> > When using COMPILE_TEST, the driver controlled by OCTEONTX2_PF does
> > not select NET_DEVLINK while the related OCTEONTX2_AF driver does.
> > This means that when OCTEONTX2_PF is enabled from a default
> > configuration, linker errors will occur due to undefined references to
> > code controlled by NET_DEVLINK.
> 
> This has been fixed a long time ago by 9cbc3367968d ("octeontx2-pf:
> select CONFIG_NET_DEVLINK") no?

You are right.  My apologies.  I was looking at an older kernel.
  

Patch

diff --git a/drivers/net/ethernet/marvell/octeontx2/Kconfig b/drivers/net/ethernet/marvell/octeontx2/Kconfig
index 3f982ccf2c85..639893d87055 100644
--- a/drivers/net/ethernet/marvell/octeontx2/Kconfig
+++ b/drivers/net/ethernet/marvell/octeontx2/Kconfig
@@ -31,6 +31,7 @@  config NDC_DIS_DYNAMIC_CACHING
 config OCTEONTX2_PF
 	tristate "Marvell OcteonTX2 NIC Physical Function driver"
 	select OCTEONTX2_MBOX
+	select NET_DEVLINK
 	depends on (64BIT && COMPILE_TEST) || ARM64
 	depends on PCI
 	depends on PTP_1588_CLOCK_OPTIONAL