All of lore.kernel.org
 help / color / mirror / Atom feed
* [jpirko-mlxsw:petrm_8021qaz 18/18] drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
@ 2020-08-19 21:34 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-08-19 21:34 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 38454 bytes --]

tree:   https://github.com/jpirko/linux_mlxsw petrm_8021qaz
head:   9695d59b85070316a2336212a26addeff39f3c56
commit: 9695d59b85070316a2336212a26addeff39f3c56 [18/18] more wip
config: powerpc64-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 9695d59b85070316a2336212a26addeff39f3c56
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   In file included from include/linux/srcu.h:21,
                    from include/linux/notifier.h:16,
                    from arch/powerpc/include/asm/uprobes.h:12,
                    from include/linux/uprobes.h:49,
                    from include/linux/mm_types.h:14,
                    from include/linux/mmzone.h:21,
                    from include/linux/gfp.h:6,
                    from include/linux/umh.h:4,
                    from include/linux/kmod.h:9,
                    from include/linux/module.h:16,
                    from drivers/net/ethernet/mellanox/mlxsw/spectrum.c:5:
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c: In function 'mlxsw_sp_port_create':
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |                                  ^~
   include/linux/workqueue.h:233:16: note: in definition of macro '__INIT_WORK'
     233 |   __init_work((_work), _onstack);    \
         |                ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |                                  ^~
   include/linux/workqueue.h:234:4: note: in definition of macro '__INIT_WORK'
     234 |   (_work)->data = (atomic_long_t) WORK_DATA_INIT(); \
         |    ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |                                  ^~
   include/linux/workqueue.h:235:22: note: in definition of macro '__INIT_WORK'
     235 |   lockdep_init_map(&(_work)->lockdep_map, "(work_completion)"#_work, &__key, 0); \
         |                      ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |                                  ^~
   include/linux/workqueue.h:236:20: note: in definition of macro '__INIT_WORK'
     236 |   INIT_LIST_HEAD(&(_work)->entry);   \
         |                    ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |                                  ^~
   include/linux/workqueue.h:237:4: note: in definition of macro '__INIT_WORK'
     237 |   (_work)->func = (_func);    \
         |    ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1568:6: error: 'mlxsw_sp_pb_speed_update_work' undeclared (first use in this function); did you mean 'mlxsw_sp_span_speed_update_work'?
    1568 |      mlxsw_sp_pb_speed_update_work);
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/workqueue.h:237:20: note: in definition of macro '__INIT_WORK'
     237 |   (_work)->func = (_func);    \
         |                    ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1568:6: note: each undeclared identifier is reported only once for each function it appears in
    1568 |      mlxsw_sp_pb_speed_update_work);
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/workqueue.h:237:20: note: in definition of macro '__INIT_WORK'
     237 |   (_work)->func = (_func);    \
         |                    ^~~~~
   include/linux/workqueue.h:257:3: note: in expansion of macro 'INIT_WORK'
     257 |   INIT_WORK(&(_work)->work, (_func));   \
         |   ^~~~~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
   In file included from include/linux/workqueue.h:9,
                    from include/linux/srcu.h:21,
                    from include/linux/notifier.h:16,
                    from arch/powerpc/include/asm/uprobes.h:12,
                    from include/linux/uprobes.h:49,
                    from include/linux/mm_types.h:14,
                    from include/linux/mmzone.h:21,
                    from include/linux/gfp.h:6,
                    from include/linux/umh.h:4,
                    from include/linux/kmod.h:9,
                    from include/linux/module.h:16,
                    from drivers/net/ethernet/mellanox/mlxsw/spectrum.c:5:
>> drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |                                  ^~
   include/linux/timer.h:114:19: note: in definition of macro '__init_timer'
     114 |   init_timer_key((_timer), (_fn), (_flags), #_timer, &__key);\
         |                   ^~~~~~
   include/linux/workqueue.h:272:2: note: in expansion of macro '__INIT_DELAYED_WORK'
     272 |  __INIT_DELAYED_WORK(_work, _func, 0)
         |  ^~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:2: note: in expansion of macro 'INIT_DELAYED_WORK'
    1567 |  INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
         |  ^~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c: In function 'mlxsw_sp_port_remove':
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1624:41: error: 'struct mlxsw_sp_port' has no member named 'span'
    1624 |  cancel_delayed_work_sync(&mlxsw_sp_port->span.speed_update_dw);
         |                                         ^~
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c: In function 'mlxsw_sp_pude_event_func':
   drivers/net/ethernet/mellanox/mlxsw/spectrum.c:2029:40: error: 'struct mlxsw_sp_port' has no member named 'span'
    2029 |   mlxsw_core_schedule_dw(&mlxsw_sp_port->span.speed_update_dw, 0);
         |                                        ^~
--
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:564:6: warning: no previous prototype for 'mlxsw_sp_pb_speed_update_work' [-Wmissing-prototypes]
     564 | void mlxsw_sp_pb_speed_update_work(struct work_struct *work)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c: In function 'mlxsw_sp_pb_speed_update_work':
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:575:2: error: 'err' undeclared (first use in this function)
     575 |  err = mlxsw_sp_port_speed_get(mlxsw_sp_port, &speed);
         |  ^~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:575:2: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:577:10: warning: 'return' with a value, in function returning void [-Wreturn-type]
     577 |   return err;
         |          ^~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:564:6: note: declared here
     564 | void mlxsw_sp_pb_speed_update_work(struct work_struct *work)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from include/linux/seqlock.h:19,
                    from include/linux/mmzone.h:16,
                    from include/linux/gfp.h:6,
                    from include/linux/mm.h:10,
                    from include/linux/bvec.h:13,
                    from include/linux/skbuff.h:17,
                    from include/linux/if_ether.h:19,
                    from drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:7:
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:595:28: error: dereferencing pointer to incomplete type 'struct mlxsw_sp_span'
     595 |  mutex_lock(&mlxsw_sp->span->analyzed_ports_lock);
         |                            ^~
   include/linux/mutex.h:167:44: note: in definition of macro 'mutex_lock'
     167 | #define mutex_lock(lock) mutex_lock_nested(lock, 0)
         |                                            ^~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:597:6: error: implicit declaration of function 'mlxsw_sp_span_analyzed_port_find' [-Werror=implicit-function-declaration]
     597 |  if (mlxsw_sp_span_analyzed_port_find(mlxsw_sp->span,
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c:599:3: error: implicit declaration of function 'mlxsw_sp_span_port_buffer_update'; did you mean 'mlxsw_sp_port_buffers_init'? [-Werror=implicit-function-declaration]
     599 |   mlxsw_sp_span_port_buffer_update(mlxsw_sp_port,
         |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |   mlxsw_sp_port_buffers_init
   cc1: some warnings being treated as errors
--
   drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c: In function 'mlxsw_sp_span_port_buffer_update':
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c:988:13: error: implicit declaration of function 'mlxsw_sp_span_buffsize_get'; did you mean 'mlxsw_reg_sbib_buff_size_get'? [-Werror=implicit-function-declaration]
     988 |  buffsize = mlxsw_sp_span_buffsize_get(mlxsw_sp, speed, mtu);
         |             ^~~~~~~~~~~~~~~~~~~~~~~~~~
         |             mlxsw_reg_sbib_buff_size_get
   drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c: At top level:
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c:1743:3: error: 'const struct mlxsw_sp_span_ops' has no member named 'buffsize_get'
    1743 |  .buffsize_get = mlxsw_sp3_span_buffsize_get,
         |   ^~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c:1743:18: error: 'mlxsw_sp3_span_buffsize_get' undeclared here (not in a function); did you mean 'mlxsw_reg_sbib_buff_size_get'?
    1743 |  .buffsize_get = mlxsw_sp3_span_buffsize_get,
         |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                  mlxsw_reg_sbib_buff_size_get
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c:1743:18: error: positional initialization of field in 'struct' declared with 'designated_init' attribute [-Werror=designated-init]
   drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c:1743:18: note: (near initialization for 'mlxsw_sp3_span_ops')
   cc1: some warnings being treated as errors
--
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1238:3: error: 'const struct mlxsw_sp_port_type_speed_ops' has no member named 'ptys_max_speed'
    1238 |  .ptys_max_speed   = mlxsw_sp1_ptys_max_speed,
         |   ^~~~~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1238:22: error: positional initialization of field in 'struct' declared with 'designated_init' attribute [-Werror=designated-init]
    1238 |  .ptys_max_speed   = mlxsw_sp1_ptys_max_speed,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1238:22: note: (near initialization for 'mlxsw_sp1_port_type_speed_ops')
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1238:22: error: initialization of 'u32 (*)(struct mlxsw_sp *, u8,  const struct ethtool_link_ksettings *)' {aka 'unsigned int (*)(struct mlxsw_sp *, unsigned char,  const struct ethtool_link_ksettings *)'} from incompatible pointer type 'u32 (*)(struct mlxsw_sp *, u8)' {aka 'unsigned int (*)(struct mlxsw_sp *, unsigned char)'} [-Werror=incompatible-pointer-types]
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1238:22: note: (near initialization for 'mlxsw_sp1_port_type_speed_ops.to_ptys_advert_link')
>> drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1239:26: warning: initialized field overwritten [-Woverride-init]
    1239 |  .to_ptys_advert_link  = mlxsw_sp1_to_ptys_advert_link,
         |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1239:26: note: (near initialization for 'mlxsw_sp1_port_type_speed_ops.to_ptys_advert_link')
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1660:3: error: 'const struct mlxsw_sp_port_type_speed_ops' has no member named 'ptys_max_speed'
    1660 |  .ptys_max_speed   = mlxsw_sp2_ptys_max_speed,
         |   ^~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1660:22: error: positional initialization of field in 'struct' declared with 'designated_init' attribute [-Werror=designated-init]
    1660 |  .ptys_max_speed   = mlxsw_sp2_ptys_max_speed,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1660:22: note: (near initialization for 'mlxsw_sp2_port_type_speed_ops')
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1660:22: error: initialization of 'u32 (*)(struct mlxsw_sp *, u8,  const struct ethtool_link_ksettings *)' {aka 'unsigned int (*)(struct mlxsw_sp *, unsigned char,  const struct ethtool_link_ksettings *)'} from incompatible pointer type 'u32 (*)(struct mlxsw_sp *, u8)' {aka 'unsigned int (*)(struct mlxsw_sp *, unsigned char)'} [-Werror=incompatible-pointer-types]
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1660:22: note: (near initialization for 'mlxsw_sp2_port_type_speed_ops.to_ptys_advert_link')
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1661:26: warning: initialized field overwritten [-Woverride-init]
    1661 |  .to_ptys_advert_link  = mlxsw_sp2_to_ptys_advert_link,
         |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/mellanox/mlxsw/spectrum_ethtool.c:1661:26: note: (near initialization for 'mlxsw_sp2_port_type_speed_ops.to_ptys_advert_link')
   cc1: some warnings being treated as errors

# https://github.com/jpirko/linux_mlxsw/commit/9695d59b85070316a2336212a26addeff39f3c56
git remote add jpirko-mlxsw https://github.com/jpirko/linux_mlxsw
git fetch --no-tags jpirko-mlxsw petrm_8021qaz
git checkout 9695d59b85070316a2336212a26addeff39f3c56
vim +1567 drivers/net/ethernet/mellanox/mlxsw/spectrum.c

7b819530669458 Petr Machata    2018-08-05  1370  
5b15385964fab6 Ido Schimmel    2017-06-08  1371  static int mlxsw_sp_port_create(struct mlxsw_sp *mlxsw_sp, u8 local_port,
49185277cc451e Jiri Pirko      2019-10-31  1372  				u8 split_base_local_port,
35896d9641db1a Jiri Pirko      2019-10-31  1373  				struct mlxsw_sp_port_mapping *port_mapping)
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1374  {
c57529e1d5d882 Ido Schimmel    2017-05-26  1375  	struct mlxsw_sp_port_vlan *mlxsw_sp_port_vlan;
49185277cc451e Jiri Pirko      2019-10-31  1376  	bool split = !!split_base_local_port;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1377  	struct mlxsw_sp_port *mlxsw_sp_port;
622d3e9201072a Danielle Ratson 2020-07-09  1378  	u32 lanes = port_mapping->width;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1379  	struct net_device *dev;
1b604efb6c2890 Danielle Ratson 2020-07-09  1380  	bool splittable;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1381  	int err;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1382  
1b604efb6c2890 Danielle Ratson 2020-07-09  1383  	splittable = lanes > 1 && !split;
e519418f8992b0 Jiri Pirko      2019-03-24  1384  	err = mlxsw_core_port_init(mlxsw_sp->core, local_port,
35896d9641db1a Jiri Pirko      2019-10-31  1385  				   port_mapping->module + 1, split,
622d3e9201072a Danielle Ratson 2020-07-09  1386  				   port_mapping->lane / lanes,
1b604efb6c2890 Danielle Ratson 2020-07-09  1387  				   splittable, lanes,
cdf29f4a262527 Jiri Pirko      2019-04-03  1388  				   mlxsw_sp->base_mac,
cdf29f4a262527 Jiri Pirko      2019-04-03  1389  				   sizeof(mlxsw_sp->base_mac));
5b15385964fab6 Ido Schimmel    2017-06-08  1390  	if (err) {
5b15385964fab6 Ido Schimmel    2017-06-08  1391  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to init core port\n",
5b15385964fab6 Ido Schimmel    2017-06-08  1392  			local_port);
5b15385964fab6 Ido Schimmel    2017-06-08  1393  		return err;
5b15385964fab6 Ido Schimmel    2017-06-08  1394  	}
5b15385964fab6 Ido Schimmel    2017-06-08  1395  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1396  	dev = alloc_etherdev(sizeof(struct mlxsw_sp_port));
5b15385964fab6 Ido Schimmel    2017-06-08  1397  	if (!dev) {
5b15385964fab6 Ido Schimmel    2017-06-08  1398  		err = -ENOMEM;
5b15385964fab6 Ido Schimmel    2017-06-08  1399  		goto err_alloc_etherdev;
5b15385964fab6 Ido Schimmel    2017-06-08  1400  	}
f20a91f1cc7010 Jiri Pirko      2016-10-27  1401  	SET_NETDEV_DEV(dev, mlxsw_sp->bus_info->dev);
6b2a880f9dd1c8 Jiri Pirko      2019-10-03  1402  	dev_net_set(dev, mlxsw_sp_net(mlxsw_sp));
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1403  	mlxsw_sp_port = netdev_priv(dev);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1404  	mlxsw_sp_port->dev = dev;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1405  	mlxsw_sp_port->mlxsw_sp = mlxsw_sp;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1406  	mlxsw_sp_port->local_port = local_port;
a2d2a20553f0b7 Ido Schimmel    2018-12-20  1407  	mlxsw_sp_port->pvid = MLXSW_SP_DEFAULT_VID;
18f1e70c413713 Ido Schimmel    2016-02-26  1408  	mlxsw_sp_port->split = split;
49185277cc451e Jiri Pirko      2019-10-31  1409  	mlxsw_sp_port->split_base_local_port = split_base_local_port;
35896d9641db1a Jiri Pirko      2019-10-31  1410  	mlxsw_sp_port->mapping = *port_mapping;
0c83f88c02085a Ido Schimmel    2016-09-12  1411  	mlxsw_sp_port->link.autoneg = 1;
31a08a523ae453 Ido Schimmel    2017-05-26  1412  	INIT_LIST_HEAD(&mlxsw_sp_port->vlans_list);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1413  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1414  	mlxsw_sp_port->pcpu_stats =
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1415  		netdev_alloc_pcpu_stats(struct mlxsw_sp_port_pcpu_stats);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1416  	if (!mlxsw_sp_port->pcpu_stats) {
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1417  		err = -ENOMEM;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1418  		goto err_alloc_stats;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1419  	}
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1420  
9deef43ddfb1df Nogah Frankel   2017-10-26  1421  	INIT_DELAYED_WORK(&mlxsw_sp_port->periodic_hw_stats.update_dw,
fc1bbb0f1831cc Nogah Frankel   2016-09-16  1422  			  &update_stats_cache);
fc1bbb0f1831cc Nogah Frankel   2016-09-16  1423  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1424  	dev->netdev_ops = &mlxsw_sp_port_netdev_ops;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1425  	dev->ethtool_ops = &mlxsw_sp_port_ethtool_ops;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1426  
35896d9641db1a Jiri Pirko      2019-10-31  1427  	err = mlxsw_sp_port_module_map(mlxsw_sp_port);
5b15385964fab6 Ido Schimmel    2017-06-08  1428  	if (err) {
5b15385964fab6 Ido Schimmel    2017-06-08  1429  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to map module\n",
5b15385964fab6 Ido Schimmel    2017-06-08  1430  			mlxsw_sp_port->local_port);
5b15385964fab6 Ido Schimmel    2017-06-08  1431  		goto err_port_module_map;
5b15385964fab6 Ido Schimmel    2017-06-08  1432  	}
5b15385964fab6 Ido Schimmel    2017-06-08  1433  
3247ff2b318f3e Ido Schimmel    2016-09-08  1434  	err = mlxsw_sp_port_swid_set(mlxsw_sp_port, 0);
3247ff2b318f3e Ido Schimmel    2016-09-08  1435  	if (err) {
3247ff2b318f3e Ido Schimmel    2016-09-08  1436  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to set SWID\n",
3247ff2b318f3e Ido Schimmel    2016-09-08  1437  			mlxsw_sp_port->local_port);
3247ff2b318f3e Ido Schimmel    2016-09-08  1438  		goto err_port_swid_set;
3247ff2b318f3e Ido Schimmel    2016-09-08  1439  	}
3247ff2b318f3e Ido Schimmel    2016-09-08  1440  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1441  	err = mlxsw_sp_port_dev_addr_init(mlxsw_sp_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1442  	if (err) {
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1443  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Unable to init port mac address\n",
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1444  			mlxsw_sp_port->local_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1445  		goto err_dev_addr_init;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1446  	}
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1447  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1448  	netif_carrier_off(dev);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1449  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1450  	dev->features |= NETIF_F_NETNS_LOCAL | NETIF_F_LLTX | NETIF_F_SG |
763b4b70afcd32 Yotam Gigi      2016-07-21  1451  			 NETIF_F_HW_VLAN_CTAG_FILTER | NETIF_F_HW_TC;
8e44c0ce599191 Jiri Pirko      2019-05-05  1452  	dev->hw_features |= NETIF_F_HW_TC | NETIF_F_LOOPBACK;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1453  
d894be57ca92c8 Jarod Wilson    2016-10-20  1454  	dev->min_mtu = 0;
d894be57ca92c8 Jarod Wilson    2016-10-20  1455  	dev->max_mtu = ETH_MAX_MTU;
d894be57ca92c8 Jarod Wilson    2016-10-20  1456  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1457  	/* Each packet needs to have a Tx header (metadata) on top all other
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1458  	 * headers.
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1459  	 */
feb7d387a6cf6c Yotam Gigi      2016-10-04  1460  	dev->needed_headroom = MLXSW_TXHDR_LEN;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1461  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1462  	err = mlxsw_sp_port_system_port_mapping_set(mlxsw_sp_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1463  	if (err) {
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1464  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to set system port mapping\n",
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1465  			mlxsw_sp_port->local_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1466  		goto err_port_system_port_mapping_set;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1467  	}
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1468  
35896d9641db1a Jiri Pirko      2019-10-31  1469  	err = mlxsw_sp_port_speed_by_width_set(mlxsw_sp_port);
18f1e70c413713 Ido Schimmel    2016-02-26  1470  	if (err) {
18f1e70c413713 Ido Schimmel    2016-02-26  1471  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to enable speeds\n",
18f1e70c413713 Ido Schimmel    2016-02-26  1472  			mlxsw_sp_port->local_port);
18f1e70c413713 Ido Schimmel    2016-02-26  1473  		goto err_port_speed_by_width_set;
18f1e70c413713 Ido Schimmel    2016-02-26  1474  	}
18f1e70c413713 Ido Schimmel    2016-02-26  1475  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1476  	err = mlxsw_sp_port_mtu_set(mlxsw_sp_port, ETH_DATA_LEN);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1477  	if (err) {
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1478  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to set MTU\n",
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1479  			mlxsw_sp_port->local_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1480  		goto err_port_mtu_set;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1481  	}
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1482  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1483  	err = mlxsw_sp_port_admin_status_set(mlxsw_sp_port, false);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1484  	if (err)
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1485  		goto err_port_admin_status_set;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1486  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1487  	err = mlxsw_sp_port_buffers_init(mlxsw_sp_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1488  	if (err) {
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1489  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize buffers\n",
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1490  			mlxsw_sp_port->local_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1491  		goto err_port_buffers_init;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1492  	}
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1493  
90183b980d0af7 Ido Schimmel    2016-04-06  1494  	err = mlxsw_sp_port_ets_init(mlxsw_sp_port);
90183b980d0af7 Ido Schimmel    2016-04-06  1495  	if (err) {
90183b980d0af7 Ido Schimmel    2016-04-06  1496  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize ETS\n",
90183b980d0af7 Ido Schimmel    2016-04-06  1497  			mlxsw_sp_port->local_port);
90183b980d0af7 Ido Schimmel    2016-04-06  1498  		goto err_port_ets_init;
90183b980d0af7 Ido Schimmel    2016-04-06  1499  	}
90183b980d0af7 Ido Schimmel    2016-04-06  1500  
7b819530669458 Petr Machata    2018-08-05  1501  	err = mlxsw_sp_port_tc_mc_mode_set(mlxsw_sp_port, true);
7b819530669458 Petr Machata    2018-08-05  1502  	if (err) {
7b819530669458 Petr Machata    2018-08-05  1503  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize TC MC mode\n",
7b819530669458 Petr Machata    2018-08-05  1504  			mlxsw_sp_port->local_port);
7b819530669458 Petr Machata    2018-08-05  1505  		goto err_port_tc_mc_mode;
7b819530669458 Petr Machata    2018-08-05  1506  	}
7b819530669458 Petr Machata    2018-08-05  1507  
f00817df2b428e Ido Schimmel    2016-04-06  1508  	/* ETS and buffers must be initialized before DCB. */
f00817df2b428e Ido Schimmel    2016-04-06  1509  	err = mlxsw_sp_port_dcb_init(mlxsw_sp_port);
f00817df2b428e Ido Schimmel    2016-04-06  1510  	if (err) {
f00817df2b428e Ido Schimmel    2016-04-06  1511  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize DCB\n",
f00817df2b428e Ido Schimmel    2016-04-06  1512  			mlxsw_sp_port->local_port);
f00817df2b428e Ido Schimmel    2016-04-06  1513  		goto err_port_dcb_init;
f00817df2b428e Ido Schimmel    2016-04-06  1514  	}
f00817df2b428e Ido Schimmel    2016-04-06  1515  
a110748725450a Ido Schimmel    2017-05-26  1516  	err = mlxsw_sp_port_fids_init(mlxsw_sp_port);
45a4a16cdb0332 Ido Schimmel    2017-05-16  1517  	if (err) {
a110748725450a Ido Schimmel    2017-05-26  1518  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize FIDs\n",
45a4a16cdb0332 Ido Schimmel    2017-05-16  1519  			mlxsw_sp_port->local_port);
a110748725450a Ido Schimmel    2017-05-26  1520  		goto err_port_fids_init;
45a4a16cdb0332 Ido Schimmel    2017-05-16  1521  	}
45a4a16cdb0332 Ido Schimmel    2017-05-16  1522  
371b437a325172 Nogah Frankel   2018-01-10  1523  	err = mlxsw_sp_tc_qdisc_init(mlxsw_sp_port);
371b437a325172 Nogah Frankel   2018-01-10  1524  	if (err) {
371b437a325172 Nogah Frankel   2018-01-10  1525  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize TC qdiscs\n",
371b437a325172 Nogah Frankel   2018-01-10  1526  			mlxsw_sp_port->local_port);
371b437a325172 Nogah Frankel   2018-01-10  1527  		goto err_port_qdiscs_init;
371b437a325172 Nogah Frankel   2018-01-10  1528  	}
371b437a325172 Nogah Frankel   2018-01-10  1529  
ff285d6847ce66 Petr Machata    2020-08-10  1530  	if (mlxsw_sp->span_ops->fix_momte)
ff285d6847ce66 Petr Machata    2020-08-10  1531  		mlxsw_sp->span_ops->fix_momte(mlxsw_sp_port);
ff285d6847ce66 Petr Machata    2020-08-10  1532  
979b9b251ae06e Ido Schimmel    2019-09-26  1533  	err = mlxsw_sp_port_vlan_set(mlxsw_sp_port, 0, VLAN_N_VID - 1, false,
979b9b251ae06e Ido Schimmel    2019-09-26  1534  				     false);
979b9b251ae06e Ido Schimmel    2019-09-26  1535  	if (err) {
979b9b251ae06e Ido Schimmel    2019-09-26  1536  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to clear VLAN filter\n",
979b9b251ae06e Ido Schimmel    2019-09-26  1537  			mlxsw_sp_port->local_port);
979b9b251ae06e Ido Schimmel    2019-09-26  1538  		goto err_port_vlan_clear;
979b9b251ae06e Ido Schimmel    2019-09-26  1539  	}
979b9b251ae06e Ido Schimmel    2019-09-26  1540  
6e6030bd541218 Ido Schimmel    2018-10-17  1541  	err = mlxsw_sp_port_nve_init(mlxsw_sp_port);
6e6030bd541218 Ido Schimmel    2018-10-17  1542  	if (err) {
6e6030bd541218 Ido Schimmel    2018-10-17  1543  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to initialize NVE\n",
6e6030bd541218 Ido Schimmel    2018-10-17  1544  			mlxsw_sp_port->local_port);
6e6030bd541218 Ido Schimmel    2018-10-17  1545  		goto err_port_nve_init;
6e6030bd541218 Ido Schimmel    2018-10-17  1546  	}
6e6030bd541218 Ido Schimmel    2018-10-17  1547  
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1548  	err = mlxsw_sp_port_pvid_set(mlxsw_sp_port, MLXSW_SP_DEFAULT_VID);
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1549  	if (err) {
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1550  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to set PVID\n",
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1551  			mlxsw_sp_port->local_port);
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1552  		goto err_port_pvid_set;
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1553  	}
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1554  
a2d2a20553f0b7 Ido Schimmel    2018-12-20  1555  	mlxsw_sp_port_vlan = mlxsw_sp_port_vlan_create(mlxsw_sp_port,
a2d2a20553f0b7 Ido Schimmel    2018-12-20  1556  						       MLXSW_SP_DEFAULT_VID);
c57529e1d5d882 Ido Schimmel    2017-05-26  1557  	if (IS_ERR(mlxsw_sp_port_vlan)) {
c57529e1d5d882 Ido Schimmel    2017-05-26  1558  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to create VID 1\n",
05978481e77e47 Ido Schimmel    2016-08-17  1559  			mlxsw_sp_port->local_port);
d86fd113ebbb37 Wei Yongjun     2017-11-06  1560  		err = PTR_ERR(mlxsw_sp_port_vlan);
635c8c8bba670d Ido Schimmel    2018-12-19  1561  		goto err_port_vlan_create;
05978481e77e47 Ido Schimmel    2016-08-17  1562  	}
346fca3b58cbe0 Ido Schimmel    2018-12-20  1563  	mlxsw_sp_port->default_vlan = mlxsw_sp_port_vlan;
05978481e77e47 Ido Schimmel    2016-08-17  1564  
5fc1733897bff1 Shalom Toledo   2019-07-04  1565  	INIT_DELAYED_WORK(&mlxsw_sp_port->ptp.shaper_dw,
5fc1733897bff1 Shalom Toledo   2019-07-04  1566  			  mlxsw_sp->ptp_ops->shaper_work);
3a3e627ce0ac0f Jiri Pirko      2020-01-20 @1567  	INIT_DELAYED_WORK(&mlxsw_sp_port->span.speed_update_dw,
9695d59b850703 Petr Machata    2020-08-19 @1568  			  mlxsw_sp_pb_speed_update_work);
5fc1733897bff1 Shalom Toledo   2019-07-04  1569  
2f25844c233650 Ido Schimmel    2016-08-17  1570  	mlxsw_sp->ports[local_port] = mlxsw_sp_port;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1571  	err = register_netdev(dev);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1572  	if (err) {
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1573  		dev_err(mlxsw_sp->bus_info->dev, "Port %d: Failed to register netdev\n",
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1574  			mlxsw_sp_port->local_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1575  		goto err_register_netdev;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1576  	}
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1577  
d808c7e490350c Elad Raz        2016-10-28  1578  	mlxsw_core_port_eth_set(mlxsw_sp->core, mlxsw_sp_port->local_port,
e519418f8992b0 Jiri Pirko      2019-03-24  1579  				mlxsw_sp_port, dev);
9deef43ddfb1df Nogah Frankel   2017-10-26  1580  	mlxsw_core_schedule_dw(&mlxsw_sp_port->periodic_hw_stats.update_dw, 0);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1581  	return 0;
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1582  
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1583  err_register_netdev:
2f25844c233650 Ido Schimmel    2016-08-17  1584  	mlxsw_sp->ports[local_port] = NULL;
635c8c8bba670d Ido Schimmel    2018-12-19  1585  	mlxsw_sp_port_vlan_destroy(mlxsw_sp_port_vlan);
635c8c8bba670d Ido Schimmel    2018-12-19  1586  err_port_vlan_create:
262e1ff91c3bc9 Ido Schimmel    2018-12-20  1587  err_port_pvid_set:
6e6030bd541218 Ido Schimmel    2018-10-17  1588  	mlxsw_sp_port_nve_fini(mlxsw_sp_port);
6e6030bd541218 Ido Schimmel    2018-10-17  1589  err_port_nve_init:
979b9b251ae06e Ido Schimmel    2019-09-26  1590  err_port_vlan_clear:
371b437a325172 Nogah Frankel   2018-01-10  1591  	mlxsw_sp_tc_qdisc_fini(mlxsw_sp_port);
371b437a325172 Nogah Frankel   2018-01-10  1592  err_port_qdiscs_init:
a110748725450a Ido Schimmel    2017-05-26  1593  	mlxsw_sp_port_fids_fini(mlxsw_sp_port);
a110748725450a Ido Schimmel    2017-05-26  1594  err_port_fids_init:
4de34eb5743f72 Ido Schimmel    2016-08-04  1595  	mlxsw_sp_port_dcb_fini(mlxsw_sp_port);
f00817df2b428e Ido Schimmel    2016-04-06  1596  err_port_dcb_init:
7b819530669458 Petr Machata    2018-08-05  1597  	mlxsw_sp_port_tc_mc_mode_set(mlxsw_sp_port, false);
7b819530669458 Petr Machata    2018-08-05  1598  err_port_tc_mc_mode:
90183b980d0af7 Ido Schimmel    2016-04-06  1599  err_port_ets_init:
4f02d302f11226 Petr Machata    2020-08-14  1600  	mlxsw_sp_port_buffers_fini(mlxsw_sp_port);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1601  err_port_buffers_init:
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1602  err_port_admin_status_set:
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1603  err_port_mtu_set:
18f1e70c413713 Ido Schimmel    2016-02-26  1604  err_port_speed_by_width_set:
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1605  err_port_system_port_mapping_set:
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1606  err_dev_addr_init:
3247ff2b318f3e Ido Schimmel    2016-09-08  1607  	mlxsw_sp_port_swid_set(mlxsw_sp_port, MLXSW_PORT_SWID_DISABLED_PORT);
3247ff2b318f3e Ido Schimmel    2016-09-08  1608  err_port_swid_set:
2e915e0b68c921 Ido Schimmel    2017-06-08  1609  	mlxsw_sp_port_module_unmap(mlxsw_sp_port);
5b15385964fab6 Ido Schimmel    2017-06-08  1610  err_port_module_map:
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1611  	free_percpu(mlxsw_sp_port->pcpu_stats);
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1612  err_alloc_stats:
56ade8fe3fe1e1 Jiri Pirko      2015-10-16  1613  	free_netdev(dev);
5b15385964fab6 Ido Schimmel    2017-06-08  1614  err_alloc_etherdev:
67963a33b4fde8 Jiri Pirko      2016-10-28  1615  	mlxsw_core_port_fini(mlxsw_sp->core, local_port);
67963a33b4fde8 Jiri Pirko      2016-10-28  1616  	return err;
67963a33b4fde8 Jiri Pirko      2016-10-28  1617  }
67963a33b4fde8 Jiri Pirko      2016-10-28  1618  

:::::: The code at line 1567 was first introduced by commit
:::::: 3a3e627ce0ac0fe15e0a011540a1f7c96bf8a07b spectrum: Add a delayed work to update SPAN buffsize according to speed

:::::: TO: Jiri Pirko <jiri@mellanox.com>
:::::: CC: David S. Miller <davem@davemloft.net>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 70343 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-08-19 21:34 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-19 21:34 [jpirko-mlxsw:petrm_8021qaz 18/18] drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1567:34: error: 'struct mlxsw_sp_port' has no member named 'span' kernel test robot

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.