Hi Edward, I love your patch! Yet something to improve: [auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Edward-Cree/sfc-driver-for-EF100-family-NICs-part-1/20200725-000401 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 1b6687e31a2df9fbdb12d25c1d1d372777bf96a8 config: alpha-allyesconfig (attached as .config) compiler: alpha-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 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All error/warnings (new ones prefixed by >>): >> drivers/net/ethernet/sfc/siena.c:1021:16: error: '__efx_enqueue_skb' undeclared here (not in a function); did you mean 'efx_enqueue_skb'? 1021 | .tx_enqueue = __efx_enqueue_skb, | ^~~~~~~~~~~~~~~~~ | efx_enqueue_skb >> drivers/net/ethernet/sfc/siena.c:1029:15: error: '__efx_rx_packet' undeclared here (not in a function); did you mean 'efx_rx_packet'? 1029 | .rx_packet = __efx_rx_packet, | ^~~~~~~~~~~~~~~ | efx_rx_packet -- >> drivers/net/ethernet/sfc/ef10.c:3981:16: error: '__efx_enqueue_skb' undeclared here (not in a function); did you mean 'efx_enqueue_skb'? 3981 | .tx_enqueue = __efx_enqueue_skb, | ^~~~~~~~~~~~~~~~~ | efx_enqueue_skb >> drivers/net/ethernet/sfc/ef10.c:3989:15: error: '__efx_rx_packet' undeclared here (not in a function); did you mean 'efx_rx_packet'? 3989 | .rx_packet = __efx_rx_packet, | ^~~~~~~~~~~~~~~ | efx_rx_packet -- >> drivers/net/ethernet/sfc/tx.c:287:13: warning: no previous prototype for '__efx_enqueue_skb' [-Wmissing-prototypes] 287 | netdev_tx_t __efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb) | ^~~~~~~~~~~~~~~~~ -- >> drivers/net/ethernet/sfc/rx.c:372:6: warning: no previous prototype for '__efx_rx_packet' [-Wmissing-prototypes] 372 | void __efx_rx_packet(struct efx_channel *channel) | ^~~~~~~~~~~~~~~ -- drivers/net/ethernet/sfc/ef100_netdev.c: In function 'ef100_hard_start_xmit': >> drivers/net/ethernet/sfc/ef100_netdev.c:57:7: error: implicit declaration of function 'ef100_enqueue_skb'; did you mean 'efx_enqueue_skb_tso'? [-Werror=implicit-function-declaration] 57 | rc = ef100_enqueue_skb(tx_queue, skb); | ^~~~~~~~~~~~~~~~~ | efx_enqueue_skb_tso cc1: some warnings being treated as errors -- >> drivers/net/ethernet/sfc/ef100_rx.c:16:6: warning: no previous prototype for '__ef100_rx_packet' [-Wmissing-prototypes] 16 | void __ef100_rx_packet(struct efx_channel *channel) | ^~~~~~~~~~~~~~~~~ -- >> drivers/net/ethernet/sfc/ef100_tx.c:24:5: warning: no previous prototype for 'ef100_enqueue_skb' [-Wmissing-prototypes] 24 | int ef100_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb) | ^~~~~~~~~~~~~~~~~ vim +1021 drivers/net/ethernet/sfc/siena.c 960 961 /************************************************************************** 962 * 963 * Revision-dependent attributes used by efx.c and nic.c 964 * 965 ************************************************************************** 966 */ 967 968 const struct efx_nic_type siena_a0_nic_type = { 969 .is_vf = false, 970 .mem_bar = siena_mem_bar, 971 .mem_map_size = siena_mem_map_size, 972 .probe = siena_probe_nic, 973 .remove = siena_remove_nic, 974 .init = siena_init_nic, 975 .dimension_resources = siena_dimension_resources, 976 .fini = efx_port_dummy_op_void, 977 #ifdef CONFIG_EEH 978 .monitor = siena_monitor, 979 #else 980 .monitor = NULL, 981 #endif 982 .map_reset_reason = efx_mcdi_map_reset_reason, 983 .map_reset_flags = siena_map_reset_flags, 984 .reset = efx_mcdi_reset, 985 .probe_port = efx_mcdi_port_probe, 986 .remove_port = efx_mcdi_port_remove, 987 .fini_dmaq = efx_farch_fini_dmaq, 988 .prepare_flush = siena_prepare_flush, 989 .finish_flush = siena_finish_flush, 990 .prepare_flr = efx_port_dummy_op_void, 991 .finish_flr = efx_farch_finish_flr, 992 .describe_stats = siena_describe_nic_stats, 993 .update_stats = siena_update_nic_stats, 994 .start_stats = efx_mcdi_mac_start_stats, 995 .pull_stats = efx_mcdi_mac_pull_stats, 996 .stop_stats = efx_mcdi_mac_stop_stats, 997 .set_id_led = efx_mcdi_set_id_led, 998 .push_irq_moderation = siena_push_irq_moderation, 999 .reconfigure_mac = siena_mac_reconfigure, 1000 .check_mac_fault = efx_mcdi_mac_check_fault, 1001 .reconfigure_port = efx_mcdi_port_reconfigure, 1002 .get_wol = siena_get_wol, 1003 .set_wol = siena_set_wol, 1004 .resume_wol = siena_init_wol, 1005 .test_chip = siena_test_chip, 1006 .test_nvram = efx_mcdi_nvram_test_all, 1007 .mcdi_request = siena_mcdi_request, 1008 .mcdi_poll_response = siena_mcdi_poll_response, 1009 .mcdi_read_response = siena_mcdi_read_response, 1010 .mcdi_poll_reboot = siena_mcdi_poll_reboot, 1011 .irq_enable_master = efx_farch_irq_enable_master, 1012 .irq_test_generate = efx_farch_irq_test_generate, 1013 .irq_disable_non_ev = efx_farch_irq_disable_master, 1014 .irq_handle_msi = efx_farch_msi_interrupt, 1015 .irq_handle_legacy = efx_farch_legacy_interrupt, 1016 .tx_probe = efx_farch_tx_probe, 1017 .tx_init = efx_farch_tx_init, 1018 .tx_remove = efx_farch_tx_remove, 1019 .tx_write = efx_farch_tx_write, 1020 .tx_limit_len = efx_farch_tx_limit_len, > 1021 .tx_enqueue = __efx_enqueue_skb, 1022 .rx_push_rss_config = siena_rx_push_rss_config, 1023 .rx_pull_rss_config = siena_rx_pull_rss_config, 1024 .rx_probe = efx_farch_rx_probe, 1025 .rx_init = efx_farch_rx_init, 1026 .rx_remove = efx_farch_rx_remove, 1027 .rx_write = efx_farch_rx_write, 1028 .rx_defer_refill = efx_farch_rx_defer_refill, > 1029 .rx_packet = __efx_rx_packet, --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org