Public bug reported:

The dkms module is failing to build at install time with kernel 7.3 in
stonking:

(...)
  CC [M]  drivers/net/ethernet/mellanox/mlx5/core/main.o
In file included from drivers/net/ethernet/mellanox/mlx5/core/eswitch.h:47,
                 from drivers/net/ethernet/mellanox/mlx5/core/main.c:54:
drivers/net/ethernet/mellanox/mlx5/core/sf/sf.h:90:6: warning: no previous 
prototype for ‘mlx5_external_controller_sf_exist’ [-Wmissing-prototypes]
   90 | bool mlx5_external_controller_sf_exist(struct mlx5_core_dev *dev)
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/net/ethernet/mellanox/mlx5/core/main.c:73:
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:60:44: warning: ‘struct 
mlxdevm’ declared inside parameter list will not be visible outside of this 
definition or declaration
   60 | static int mlx5_devm_traps_register(struct mlxdevm *mlxdevm)
      |                                            ^~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:65:47: warning: ‘struct 
mlxdevm’ declared inside parameter list will not be visible outside of this 
definition or declaration
   65 | static void mlx5_devm_traps_unregister(struct mlxdevm *mlxdevm)
      |                                               ^~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:69:45: warning: ‘struct 
mlxdevm’ declared inside parameter list will not be visible outside of this 
definition or declaration
   69 | static int mlx5_devm_params_register(struct mlxdevm *mlxdevm)
      |                                             ^~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:74:48: warning: ‘struct 
mlxdevm’ declared inside parameter list will not be visible outside of this 
definition or declaration
   74 | static void mlx5_devm_params_unregister(struct mlxdevm *mlxdevm)
      |                                                ^~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:105:71: warning: ‘struct 
mlx5_vport’ declared inside parameter list will not be visible outside of this 
definition or declaration
  105 | static int mlx5_pf_vf_devm_port_init(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |                                                                       
^~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:110:61: warning: ‘struct 
mlx5_vport’ declared inside parameter list will not be visible outside of this 
definition or declaration
  110 | int mlx5_sf_devm_port_init(struct mlx5_eswitch *esw, struct mlx5_vport 
*vport,
      |                                                             ^~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:110:5: warning: no previous 
prototype for ‘mlx5_sf_devm_port_init’ [-Wmissing-prototypes]
  110 | int mlx5_sf_devm_port_init(struct mlx5_eswitch *esw, struct mlx5_vport 
*vport,
      |     ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:116:69: warning: ‘struct 
mlx5_vport’ declared inside parameter list will not be visible outside of this 
definition or declaration
  116 | static void mlx5_devm_port_cleanup(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |                                                                     
^~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:120:13: error: redefinition 
of ‘mlx5_devm_rate_nodes_destroy’
  120 | static void mlx5_devm_rate_nodes_destroy(struct mlx5_core_dev *dev)
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:101:13: note: previous 
definition of ‘mlx5_devm_rate_nodes_destroy’ with type ‘void(struct 
mlx5_core_dev *)’
  101 | static void mlx5_devm_rate_nodes_destroy(struct mlx5_core_dev *dev)
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:124:71: warning: ‘struct 
mlx5_vport’ declared inside parameter list will not be visible outside of this 
definition or declaration
  124 | static int mlx5_pf_vf_devm_port_init(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |                                                                       
^~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:124:12: error: conflicting 
types for ‘mlx5_pf_vf_devm_port_init’; have ‘int(struct mlx5_eswitch *, struct 
mlx5_vport *)’
  124 | static int mlx5_pf_vf_devm_port_init(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:105:12: note: previous 
definition of ‘mlx5_pf_vf_devm_port_init’ with type ‘int(struct mlx5_eswitch *, 
struct mlx5_vport *)’
  105 | static int mlx5_pf_vf_devm_port_init(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:129:61: warning: ‘struct 
mlx5_vport’ declared inside parameter list will not be visible outside of this 
definition or declaration
  129 | int mlx5_sf_devm_port_init(struct mlx5_eswitch *esw, struct mlx5_vport 
*vport,
      |                                                             ^~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:129:5: error: conflicting 
types for ‘mlx5_sf_devm_port_init’; have ‘int(struct mlx5_eswitch *, struct 
mlx5_vport *, u32,  u32)’ {aka ‘int(struct mlx5_eswitch *, struct mlx5_vport *, 
unsigned int,  unsigned int)’}
  129 | int mlx5_sf_devm_port_init(struct mlx5_eswitch *esw, struct mlx5_vport 
*vport,
      |     ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:110:5: note: previous 
definition of ‘mlx5_sf_devm_port_init’ with type ‘int(struct mlx5_eswitch *, 
struct mlx5_vport *, u32,  u32)’ {aka ‘int(struct mlx5_eswitch *, struct 
mlx5_vport *, unsigned int,  unsigned int)’}
  110 | int mlx5_sf_devm_port_init(struct mlx5_eswitch *esw, struct mlx5_vport 
*vport,
      |     ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:135:69: warning: ‘struct 
mlx5_vport’ declared inside parameter list will not be visible outside of this 
definition or declaration
  135 | static void mlx5_devm_port_cleanup(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |                                                                     
^~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:135:13: error: conflicting 
types for ‘mlx5_devm_port_cleanup’; have ‘void(struct mlx5_eswitch *, struct 
mlx5_vport *)’
  135 | static void mlx5_devm_port_cleanup(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |             ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:116:13: note: previous 
definition of ‘mlx5_devm_port_cleanup’ with type ‘void(struct mlx5_eswitch *, 
struct mlx5_vport *)’
  116 | static void mlx5_devm_port_cleanup(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |             ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/main.c: In function ‘mlx5_init_once’:
drivers/net/ethernet/mellanox/mlx5/core/main.c:1220:17: error: implicit 
declaration of function ‘mlx5_devm_device_get’; did you mean 
‘mlx5_devm_register’? [-Wimplicit-function-declaration]
 1220 |         devm = &mlx5_devm_device_get(dev)->device;
      |                 ^~~~~~~~~~~~~~~~~~~~
      |                 mlx5_devm_register
drivers/net/ethernet/mellanox/mlx5/core/main.c:1220:42: error: invalid type 
argument of ‘->’ (have ‘int’)
 1220 |         devm = &mlx5_devm_device_get(dev)->device;
      |                                          ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c:1221:9: error: implicit 
declaration of function ‘devm_lock’; did you mean ‘devl_lock’? 
[-Wimplicit-function-declaration]
 1221 |         devm_lock(devm);
      |         ^~~~~~~~~
      |         devl_lock
drivers/net/ethernet/mellanox/mlx5/core/main.c: In function ‘mlx5_cleanup_once’:
drivers/net/ethernet/mellanox/mlx5/core/main.c:1362:58: error: invalid type 
argument of ‘->’ (have ‘int’)
 1362 |         struct mlxdevm *devm = &mlx5_devm_device_get(dev)->device;
      |                                                          ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c:1387:9: error: implicit 
declaration of function ‘devm_unlock’; did you mean ‘devl_unlock’? 
[-Wimplicit-function-declaration]
 1387 |         devm_unlock(devm);
      |         ^~~~~~~~~~~
      |         devl_unlock
drivers/net/ethernet/mellanox/mlx5/core/main.c: In function 
‘mlx5_init_one_devl_locked’:
drivers/net/ethernet/mellanox/mlx5/core/main.c:1773:67: error: invalid type 
argument of ‘->’ (have ‘int’)
 1773 |         err = 
mlx5_devm_params_register(&mlx5_devm_device_get(dev)->device);
      |                                                                   ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c:1785:42: error: invalid type 
argument of ‘->’ (have ‘int’)
 1785 |         devm = &mlx5_devm_device_get(dev)->device;
      |                                          ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c:1810:63: error: invalid type 
argument of ‘->’ (have ‘int’)
 1810 |         mlx5_devm_params_unregister(&mlx5_devm_device_get(dev)->device);
      |                                                               ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c: In function ‘mlx5_uninit_one’:
drivers/net/ethernet/mellanox/mlx5/core/main.c:1848:58: error: invalid type 
argument of ‘->’ (have ‘int’)
 1848 |         struct mlxdevm *devm = &mlx5_devm_device_get(dev)->device;
      |                                                          ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c:1869:71: error: invalid type 
argument of ‘->’ (have ‘int’)
 1869 |                 
mlx5_devm_params_unregister(&mlx5_devm_device_get(dev)->device);
      |                                                                       ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c:1883:63: error: invalid type 
argument of ‘->’ (have ‘int’)
 1883 |         mlx5_devm_params_unregister(&mlx5_devm_device_get(dev)->device);
      |                                                               ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c: In function 
‘mlx5_load_one_devl_locked’:
drivers/net/ethernet/mellanox/mlx5/core/main.c:1932:42: error: invalid type 
argument of ‘->’ (have ‘int’)
 1932 |         devm = &mlx5_devm_device_get(dev)->device;
      |                                          ^~
drivers/net/ethernet/mellanox/mlx5/core/main.c: In function 
‘mlx5_unload_one_devl_locked’:
drivers/net/ethernet/mellanox/mlx5/core/main.c:1998:42: error: invalid type 
argument of ‘->’ (have ‘int’)
 1998 |         devm = &mlx5_devm_device_get(dev)->device;
      |                                          ^~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h: At top level:
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:135:13: warning: 
‘mlx5_devm_port_cleanup’ defined but not used [-Wunused-function]
  135 | static void mlx5_devm_port_cleanup(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |             ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:124:12: warning: 
‘mlx5_pf_vf_devm_port_init’ defined but not used [-Wunused-function]
  124 | static int mlx5_pf_vf_devm_port_init(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:120:13: warning: 
‘mlx5_devm_rate_nodes_destroy’ defined but not used [-Wunused-function]
  120 | static void mlx5_devm_rate_nodes_destroy(struct mlx5_core_dev *dev)
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:116:13: warning: 
‘mlx5_devm_port_cleanup’ defined but not used [-Wunused-function]
  116 | static void mlx5_devm_port_cleanup(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |             ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:105:12: warning: 
‘mlx5_pf_vf_devm_port_init’ defined but not used [-Wunused-function]
  105 | static int mlx5_pf_vf_devm_port_init(struct mlx5_eswitch *esw, struct 
mlx5_vport *vport)
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:101:13: warning: 
‘mlx5_devm_rate_nodes_destroy’ defined but not used [-Wunused-function]
  101 | static void mlx5_devm_rate_nodes_destroy(struct mlx5_core_dev *dev)
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:65:13: warning: 
‘mlx5_devm_traps_unregister’ defined but not used [-Wunused-function]
   65 | static void mlx5_devm_traps_unregister(struct mlxdevm *mlxdevm)
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/mlx5_devm.h:60:12: warning: 
‘mlx5_devm_traps_register’ defined but not used [-Wunused-function]
   60 | static int mlx5_devm_traps_register(struct mlxdevm *mlxdevm)
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** 
[/usr/src/linux-headers-7.3.0-5-generic/scripts/Makefile.build:290: 
drivers/net/ethernet/mellanox/mlx5/core/main.o] Error 1


$ uname -a
Linux s 7.3.0-5-generic #5-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 14 11:40:59 UTC 
2026 x86_64 GNU/Linux

** Affects: doca-ofed-3.4-dkms (Ubuntu)
     Importance: High
         Status: New


** Tags: ftbfs

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2168077

Title:
  FTBFS with kernel 7.3

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/doca-ofed-3.4-dkms/+bug/2168077/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to