[Intel-wired-lan] [PATCH iwl-next v2] i40e: add trace events related to SFP module IOCTLs

kernel test robot lkp at intel.com
Sat Dec 23 09:18:52 UTC 2023


Hi Aleksandr,

kernel test robot noticed the following build errors:

[auto build test ERROR on tnguy-next-queue/dev-queue]

url:    https://github.com/intel-lab-lkp/linux/commits/Aleksandr-Loktionov/i40e-add-trace-events-related-to-SFP-module-IOCTLs/20231222-165333
base:   https://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git dev-queue
patch link:    https://lore.kernel.org/r/20231220173837.3326983-1-aleksandr.loktionov%40intel.com
patch subject: [PATCH iwl-next v2] i40e: add trace events related to SFP module IOCTLs
config: x86_64-randconfig-161-20231222 (https://download.01.org/0day-ci/archive/20231223/202312231758.zG1LthuL-lkp@intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231223/202312231758.zG1LthuL-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312231758.zG1LthuL-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from include/trace/define_trace.h:102,
                    from drivers/net/ethernet/intel/i40e/i40e_trace.h:276,
                    from drivers/net/ethernet/intel/i40e/i40e_main.c:25:
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: In function 'ftrace_test_probe_i40e_ioctl_get_module_info':
>> include/trace/trace_events.h:416:35: error: 'trace_event_raw_event_i40e_ioctl_template' undeclared (first use in this function); did you mean 'trace_event_raw_event_i40e_tx_template'?
     416 |  check_trace_callback_type_##call(trace_event_raw_event_##template); \
         |                                   ^~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:205:1: note: in expansion of macro 'DEFINE_EVENT'
     205 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   include/trace/trace_events.h:416:35: note: each undeclared identifier is reported only once for each function it appears in
     416 |  check_trace_callback_type_##call(trace_event_raw_event_##template); \
         |                                   ^~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:205:1: note: in expansion of macro 'DEFINE_EVENT'
     205 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: In function 'ftrace_test_probe_i40e_ioctl_get_module_eeprom':
>> include/trace/trace_events.h:416:35: error: 'trace_event_raw_event_i40e_ioctl_template' undeclared (first use in this function); did you mean 'trace_event_raw_event_i40e_tx_template'?
     416 |  check_trace_callback_type_##call(trace_event_raw_event_##template); \
         |                                   ^~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:211:1: note: in expansion of macro 'DEFINE_EVENT'
     211 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: In function 'ftrace_test_probe_i40e_ioctl_get_link_ksettings':
>> include/trace/trace_events.h:416:35: error: 'trace_event_raw_event_i40e_ioctl_template' undeclared (first use in this function); did you mean 'trace_event_raw_event_i40e_tx_template'?
     416 |  check_trace_callback_type_##call(trace_event_raw_event_##template); \
         |                                   ^~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:217:1: note: in expansion of macro 'DEFINE_EVENT'
     217 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   In file included from include/trace/define_trace.h:102,
                    from drivers/net/ethernet/intel/i40e/i40e_trace.h:276,
                    from drivers/net/ethernet/intel/i40e/i40e_main.c:25:
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: At top level:
>> include/trace/trace_events.h:441:14: error: 'event_class_i40e_ioctl_template' undeclared here (not in a function); did you mean 'event_class_i40e_xmit_template'?
     441 |  .class   = &event_class_##template,  \
         |              ^~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:205:1: note: in expansion of macro 'DEFINE_EVENT'
     205 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
>> include/trace/trace_events.h:445:19: error: 'trace_event_type_funcs_i40e_ioctl_template' undeclared here (not in a function); did you mean 'trace_event_type_funcs_i40e_xmit_template'?
     445 |  .event.funcs  = &trace_event_type_funcs_##template, \
         |                   ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:205:1: note: in expansion of macro 'DEFINE_EVENT'
     205 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
>> include/trace/trace_events.h:446:16: error: 'print_fmt_i40e_ioctl_template' undeclared here (not in a function); did you mean 'print_fmt_i40e_tx_template'?
     446 |  .print_fmt  = print_fmt_##template,   \
         |                ^~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:205:1: note: in expansion of macro 'DEFINE_EVENT'
     205 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   In file included from include/trace/define_trace.h:103,
                    from drivers/net/ethernet/intel/i40e/i40e_trace.h:276,
                    from drivers/net/ethernet/intel/i40e/i40e_main.c:25:
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: In function 'perf_test_probe_i40e_ioctl_get_module_info':
>> include/trace/perf.h:67:35: error: 'perf_trace_i40e_ioctl_template' undeclared (first use in this function); did you mean 'perf_trace_i40e_xmit_template'?
      67 |  check_trace_callback_type_##call(perf_trace_##template); \
         |                                   ^~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:205:1: note: in expansion of macro 'DEFINE_EVENT'
     205 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: In function 'perf_test_probe_i40e_ioctl_get_module_eeprom':
>> include/trace/perf.h:67:35: error: 'perf_trace_i40e_ioctl_template' undeclared (first use in this function); did you mean 'perf_trace_i40e_xmit_template'?
      67 |  check_trace_callback_type_##call(perf_trace_##template); \
         |                                   ^~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:211:1: note: in expansion of macro 'DEFINE_EVENT'
     211 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h: In function 'perf_test_probe_i40e_ioctl_get_link_ksettings':
>> include/trace/perf.h:67:35: error: 'perf_trace_i40e_ioctl_template' undeclared (first use in this function); did you mean 'perf_trace_i40e_xmit_template'?
      67 |  check_trace_callback_type_##call(perf_trace_##template); \
         |                                   ^~~~~~~~~~~
   drivers/net/ethernet/intel/i40e/./i40e_trace.h:217:1: note: in expansion of macro 'DEFINE_EVENT'
     217 | DEFINE_EVENT(
         | ^~~~~~~~~~~~
--
   drivers/net/ethernet/intel/i40e/i40e_ethtool.c: In function 'i40e_get_link_ksettings':
>> drivers/net/ethernet/intel/i40e/i40e_ethtool.c:1077:2: error: implicit declaration of function 'i40e_trace' [-Werror=implicit-function-declaration]
    1077 |  i40e_trace(ioctl_get_link_ksettings, pf, hw_link_info->link_info);
         |  ^~~~~~~~~~
>> drivers/net/ethernet/intel/i40e/i40e_ethtool.c:1077:13: error: 'ioctl_get_link_ksettings' undeclared (first use in this function); did you mean 'i40e_get_link_ksettings'?
    1077 |  i40e_trace(ioctl_get_link_ksettings, pf, hw_link_info->link_info);
         |             ^~~~~~~~~~~~~~~~~~~~~~~~
         |             i40e_get_link_ksettings
   drivers/net/ethernet/intel/i40e/i40e_ethtool.c:1077:13: note: each undeclared identifier is reported only once for each function it appears in
   drivers/net/ethernet/intel/i40e/i40e_ethtool.c: In function 'i40e_get_module_info':
>> drivers/net/ethernet/intel/i40e/i40e_ethtool.c:5589:14: error: 'ioctl_get_module_info' undeclared (first use in this function); did you mean 'i40e_get_module_info'?
    5589 |   i40e_trace(ioctl_get_module_info, pf, ~0UL);
         |              ^~~~~~~~~~~~~~~~~~~~~
         |              i40e_get_module_info
   drivers/net/ethernet/intel/i40e/i40e_ethtool.c: In function 'i40e_get_module_eeprom':
>> drivers/net/ethernet/intel/i40e/i40e_ethtool.c:5617:13: error: 'ioctl_get_module_eeprom' undeclared (first use in this function); did you mean 'i40e_get_module_eeprom'?
    5617 |  i40e_trace(ioctl_get_module_eeprom, pf, ee ? ee->len : 0U);
         |             ^~~~~~~~~~~~~~~~~~~~~~~
         |             i40e_get_module_eeprom
   cc1: some warnings being treated as errors


vim +/i40e_trace +1077 drivers/net/ethernet/intel/i40e/i40e_ethtool.c

  1057	
  1058	/**
  1059	 * i40e_get_link_ksettings - Get Link Speed and Duplex settings
  1060	 * @netdev: network interface device structure
  1061	 * @ks: ethtool ksettings
  1062	 *
  1063	 * Reports speed/duplex settings based on media_type
  1064	 **/
  1065	static int i40e_get_link_ksettings(struct net_device *netdev,
  1066					   struct ethtool_link_ksettings *ks)
  1067	{
  1068		struct i40e_netdev_priv *np = netdev_priv(netdev);
  1069		struct i40e_pf *pf = np->vsi->back;
  1070		struct i40e_hw *hw = &pf->hw;
  1071		struct i40e_link_status *hw_link_info = &hw->phy.link_info;
  1072		bool link_up = hw_link_info->link_info & I40E_AQ_LINK_UP;
  1073	
  1074		ethtool_link_ksettings_zero_link_mode(ks, supported);
  1075		ethtool_link_ksettings_zero_link_mode(ks, advertising);
  1076	
> 1077		i40e_trace(ioctl_get_link_ksettings, pf, hw_link_info->link_info);
  1078		if (link_up)
  1079			i40e_get_settings_link_up(hw, ks, netdev, pf);
  1080		else
  1081			i40e_get_settings_link_down(hw, ks, pf);
  1082	
  1083		/* Now set the settings that don't rely on link being up/down */
  1084		/* Set autoneg settings */
  1085		ks->base.autoneg = ((hw_link_info->an_info & I40E_AQ_AN_COMPLETED) ?
  1086				    AUTONEG_ENABLE : AUTONEG_DISABLE);
  1087	
  1088		/* Set media type settings */
  1089		switch (hw->phy.media_type) {
  1090		case I40E_MEDIA_TYPE_BACKPLANE:
  1091			ethtool_link_ksettings_add_link_mode(ks, supported, Autoneg);
  1092			ethtool_link_ksettings_add_link_mode(ks, supported, Backplane);
  1093			ethtool_link_ksettings_add_link_mode(ks, advertising, Autoneg);
  1094			ethtool_link_ksettings_add_link_mode(ks, advertising,
  1095							     Backplane);
  1096			ks->base.port = PORT_NONE;
  1097			break;
  1098		case I40E_MEDIA_TYPE_BASET:
  1099			ethtool_link_ksettings_add_link_mode(ks, supported, TP);
  1100			ethtool_link_ksettings_add_link_mode(ks, advertising, TP);
  1101			ks->base.port = PORT_TP;
  1102			break;
  1103		case I40E_MEDIA_TYPE_DA:
  1104		case I40E_MEDIA_TYPE_CX4:
  1105			ethtool_link_ksettings_add_link_mode(ks, supported, FIBRE);
  1106			ethtool_link_ksettings_add_link_mode(ks, advertising, FIBRE);
  1107			ks->base.port = PORT_DA;
  1108			break;
  1109		case I40E_MEDIA_TYPE_FIBER:
  1110			ethtool_link_ksettings_add_link_mode(ks, supported, FIBRE);
  1111			ethtool_link_ksettings_add_link_mode(ks, advertising, FIBRE);
  1112			ks->base.port = PORT_FIBRE;
  1113			break;
  1114		case I40E_MEDIA_TYPE_UNKNOWN:
  1115		default:
  1116			ks->base.port = PORT_OTHER;
  1117			break;
  1118		}
  1119	
  1120		/* Set flow control settings */
  1121		ethtool_link_ksettings_add_link_mode(ks, supported, Pause);
  1122		ethtool_link_ksettings_add_link_mode(ks, supported, Asym_Pause);
  1123	
  1124		switch (hw->fc.requested_mode) {
  1125		case I40E_FC_FULL:
  1126			ethtool_link_ksettings_add_link_mode(ks, advertising, Pause);
  1127			break;
  1128		case I40E_FC_TX_PAUSE:
  1129			ethtool_link_ksettings_add_link_mode(ks, advertising,
  1130							     Asym_Pause);
  1131			break;
  1132		case I40E_FC_RX_PAUSE:
  1133			ethtool_link_ksettings_add_link_mode(ks, advertising, Pause);
  1134			ethtool_link_ksettings_add_link_mode(ks, advertising,
  1135							     Asym_Pause);
  1136			break;
  1137		default:
  1138			ethtool_link_ksettings_del_link_mode(ks, advertising, Pause);
  1139			ethtool_link_ksettings_del_link_mode(ks, advertising,
  1140							     Asym_Pause);
  1141			break;
  1142		}
  1143	
  1144		return 0;
  1145	}
  1146	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


More information about the Intel-wired-lan mailing list