tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 8c0dfc8b996502f065bb072eb44f2ef912277805 commit: 601fb01dc16f747534b866610743d95830b6655e [7634/9457] drivers: support for xsc drivers from Yunsilicon Technology config: x86_64-randconfig-076-20240509 (https://download.01.org/0day-ci/archive/20240509/202405090620.ipiUsJT5-lkp@i...) compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240509/202405090620.ipiUsJT5-lkp@i...)
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@intel.com | Closes: https://lore.kernel.org/oe-kbuild-all/202405090620.ipiUsJT5-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/net/ethernet/yunsilicon/xsc/net/main.c:295:5: warning: no previous prototype for 'xsc_eth_destroy_cq' [-Wmissing-prototypes] 295 | int xsc_eth_destroy_cq(struct xsc_core_device *xdev, struct xsc_cq *cq) | ^~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:333:6: warning: no previous prototype for 'xsc_eth_free_cq' [-Wmissing-prototypes] 333 | void xsc_eth_free_cq(struct xsc_cq *cq) | ^~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:338:5: warning: no previous prototype for 'xsc_eth_create_rss_qp_rqs' [-Wmissing-prototypes] 338 | int xsc_eth_create_rss_qp_rqs(struct xsc_core_device *xdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:359:6: warning: no previous prototype for 'xsc_eth_qp_event' [-Wmissing-prototypes] 359 | void xsc_eth_qp_event(struct xsc_core_qp *qp, int type) | ^~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:389:5: warning: no previous prototype for 'xsc_eth_create_qp_rq' [-Wmissing-prototypes] 389 | int xsc_eth_create_qp_rq(struct xsc_core_device *xdev, struct xsc_rq *prq, | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:416:5: warning: no previous prototype for 'xsc_eth_destroy_qp_rq' [-Wmissing-prototypes] 416 | int xsc_eth_destroy_qp_rq(struct xsc_core_device *xdev, struct xsc_rq *prq) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:469:5: warning: no previous prototype for 'xsc_eth_create_qp_sq' [-Wmissing-prototypes] 469 | int xsc_eth_create_qp_sq(struct xsc_core_device *xdev, struct xsc_sq *psq, | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:488:5: warning: no previous prototype for 'xsc_eth_modify_qp_sq' [-Wmissing-prototypes] 488 | int xsc_eth_modify_qp_sq(struct xsc_core_device *xdev, struct xsc_modify_raw_qp_mbox_in *in) | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:506:5: warning: no previous prototype for 'xsc_eth_destroy_qp_sq' [-Wmissing-prototypes] 506 | int xsc_eth_destroy_qp_sq(struct xsc_core_device *xdev, struct xsc_sq *psq) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:750:5: warning: no previous prototype for 'xsc_eth_set_hw_mtu' [-Wmissing-prototypes] 750 | int xsc_eth_set_hw_mtu(struct xsc_core_device *dev, u16 mtu, u16 rx_buf_sz) | ^~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:775:5: warning: no previous prototype for 'xsc_eth_get_mac' [-Wmissing-prototypes] 775 | int xsc_eth_get_mac(struct xsc_core_device *dev, char *mac) | ^~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:806:5: warning: no previous prototype for 'xsc_eth_modify_qps_channel' [-Wmissing-prototypes] 806 | int xsc_eth_modify_qps_channel(struct xsc_adapter *adapter, struct xsc_channel *c) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:828:5: warning: no previous prototype for 'xsc_eth_modify_qps' [-Wmissing-prototypes] 828 | int xsc_eth_modify_qps(struct xsc_adapter *adapter, | ^~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:845:5: warning: no previous prototype for 'xsc_rx_get_linear_frag_sz' [-Wmissing-prototypes] 845 | u32 xsc_rx_get_linear_frag_sz(u32 mtu) | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:852:6: warning: no previous prototype for 'xsc_rx_is_linear_skb' [-Wmissing-prototypes] 852 | bool xsc_rx_is_linear_skb(u32 mtu) | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1316:5: warning: no previous prototype for 'xsc_eth_open_channel' [-Wmissing-prototypes] 1316 | int xsc_eth_open_channel(struct xsc_adapter *adapter, | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1528:5: warning: no previous prototype for 'xsc_eth_open_channels' [-Wmissing-prototypes] 1528 | int xsc_eth_open_channels(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1640:6: warning: no previous prototype for 'xsc_eth_activate_channel' [-Wmissing-prototypes] 1640 | void xsc_eth_activate_channel(struct xsc_channel *c) | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1646:6: warning: no previous prototype for 'xsc_eth_deactivate_channel' [-Wmissing-prototypes] 1646 | void xsc_eth_deactivate_channel(struct xsc_channel *c) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1692:6: warning: no previous prototype for 'xsc_eth_activate_priv_channels' [-Wmissing-prototypes] 1692 | void xsc_eth_activate_priv_channels(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1707:6: warning: no previous prototype for 'xsc_eth_deactivate_priv_channels' [-Wmissing-prototypes] 1707 | void xsc_eth_deactivate_priv_channels(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1850:5: warning: no previous prototype for 'xsc_eth_change_link_status' [-Wmissing-prototypes] 1850 | int xsc_eth_change_link_status(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1907:6: warning: no previous prototype for 'xsc_eth_event_handler' [-Wmissing-prototypes] 1907 | void xsc_eth_event_handler(void *arg) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1915:5: warning: no previous prototype for 'xsc_eth_enable_nic_hca' [-Wmissing-prototypes] 1915 | int xsc_eth_enable_nic_hca(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:1977:5: warning: no previous prototype for 'xsc_eth_disable_nic_hca' [-Wmissing-prototypes] 1977 | int xsc_eth_disable_nic_hca(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2010:6: warning: no previous prototype for 'xsc_eth_rss_params_change' [-Wmissing-prototypes] 2010 | void xsc_eth_rss_params_change(struct xsc_adapter *adapter, u32 change, void *modify) | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2318:6: warning: no previous prototype for 'xsc_build_default_indir_rqt' [-Wmissing-prototypes] 2318 | void xsc_build_default_indir_rqt(u32 *indirection_rqt, int len, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2416:5: warning: no previous prototype for 'xsc_eth_nic_mtu_changed' [-Wmissing-prototypes] 2416 | int xsc_eth_nic_mtu_changed(struct xsc_adapter *priv) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2479:5: warning: no previous prototype for 'xsc_set_vf_mac' [-Wmissing-prototypes] 2479 | int xsc_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) | ^~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2496:5: warning: no previous prototype for 'xsc_get_vf_config' [-Wmissing-prototypes] 2496 | int xsc_get_vf_config(struct net_device *dev, | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2512:5: warning: no previous prototype for 'set_feature_rxcsum' [-Wmissing-prototypes] 2512 | int set_feature_rxcsum(struct net_device *netdev, bool enable) | ^~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2564:5: warning: no previous prototype for 'xsc_eth_set_features' [-Wmissing-prototypes] 2564 | int xsc_eth_set_features(struct net_device *netdev, netdev_features_t features) | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2581:5: warning: no previous prototype for 'xsc_select_queue' [-Wmissing-prototypes] 2581 | u16 xsc_select_queue(struct net_device *dev, struct sk_buff *skb, | ^~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c: In function 'xsc_get_phys_port_name':
drivers/net/ethernet/yunsilicon/xsc/net/main.c:2628:28: error: 'struct pci_dev' has no member named 'physfn'; did you mean 'is_physfn'?
2628 | if (!pdev->physfn) | ^~~~~~ | is_physfn drivers/net/ethernet/yunsilicon/xsc/net/main.c:2630:49: error: 'struct pci_dev' has no member named 'physfn'; did you mean 'is_physfn'? 2630 | pf_xdev = pci_get_drvdata(pdev->physfn); | ^~~~~~ | is_physfn drivers/net/ethernet/yunsilicon/xsc/net/main.c: At top level: drivers/net/ethernet/yunsilicon/xsc/net/main.c:2769:24: warning: no previous prototype for 'xsc_tirc_get_default_config' [-Wmissing-prototypes] 2769 | struct xsc_tirc_config xsc_tirc_get_default_config(enum xsc_traffic_types tt) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2774:6: warning: no previous prototype for 'xsc_build_rss_params' [-Wmissing-prototypes] 2774 | void xsc_build_rss_params(struct xsc_rss_params *rss_params, u16 num_channels) | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2792:6: warning: no previous prototype for 'xsc_eth_build_nic_params' [-Wmissing-prototypes] 2792 | void xsc_eth_build_nic_params(struct xsc_adapter *adapter, u32 ch_num, u32 tc_num) | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2814:6: warning: no previous prototype for 'xsc_eth_build_nic_netdev' [-Wmissing-prototypes] 2814 | void xsc_eth_build_nic_netdev(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2885:5: warning: no previous prototype for 'xsc_eth_create_xdev_resources' [-Wmissing-prototypes] 2885 | int xsc_eth_create_xdev_resources(struct xsc_core_device *xdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/yunsilicon/xsc/net/main.c:2906:5: warning: no previous prototype for 'xsc_eth_init_nic_rx' [-Wmissing-prototypes] 2906 | int xsc_eth_init_nic_rx(struct xsc_adapter *adapter) | ^~~~~~~~~~~~~~~~~~~
vim +2628 drivers/net/ethernet/yunsilicon/xsc/net/main.c
2614 2615 static int xsc_get_phys_port_name(struct net_device *dev, 2616 char *buf, size_t len) 2617 { 2618 struct xsc_adapter *adapter = netdev_priv(dev); 2619 struct xsc_core_device *xdev = adapter->xdev; 2620 struct xsc_core_device *pf_xdev; 2621 struct net_device *pf_netdev; 2622 struct pci_dev *pdev = xdev->pdev; 2623 int ret = len; 2624 2625 if (!pdev) 2626 return -EOPNOTSUPP; 2627 if (!xsc_core_is_pf(xdev)) {
2628 if (!pdev->physfn)
2629 return -EOPNOTSUPP; 2630 pf_xdev = pci_get_drvdata(pdev->physfn); 2631 if (!pf_xdev || !pf_xdev->netdev) 2632 return -EOPNOTSUPP; 2633 pf_netdev = (struct net_device *)pf_xdev->netdev; 2634 ret = snprintf(buf, len, "%s_%d", 2635 pf_netdev->name, xdev->vf_id); 2636 } else { 2637 return -EOPNOTSUPP; 2638 } 2639 if (ret >= len) 2640 return -EOPNOTSUPP; 2641 2642 return 0; 2643 } 2644