Hi, Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master] [also build test ERROR on v5.8-rc1 next-20200616] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/yunaixin03610-163-com/Adding-Huawei-BMA-drivers/20200616-102318 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git a5dc8300df75e8b8384b4c82225f1e4a0b4d9b55 config: i386-allyesconfig (attached as .config) compiler: gcc-9 (Debian 9.3.0-13) 9.3.0 reproduce (this is a W=1 build): # save the attached .config to linux build tree make W=1 ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> All error/warnings (new ones prefixed by >>, old ones prefixed by <<): In file included from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:16: >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.h:250:2: >> error: unknown type name '__kernel_time_t' 250 | __kernel_time_t init_time; | ^~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:55:6: >> warning: no previous prototype for 'dump_global_info' [-Wmissing-prototypes] 55 | void dump_global_info(void) | ^~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:93:6: >> warning: no previous prototype for 'edma_veth_free_tx_resources' >> [-Wmissing-prototypes] 93 | void edma_veth_free_tx_resources(struct edma_rxtx_q_s *ptx_queue) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:109:6: >> warning: no previous prototype for 'edma_veth_free_all_tx_resources' >> [-Wmissing-prototypes] 109 | void edma_veth_free_all_tx_resources(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:118:5: >> warning: no previous prototype for 'edma_veth_setup_tx_resources' >> [-Wmissing-prototypes] 118 | int edma_veth_setup_tx_resources(struct edma_rxtx_q_s *ptx_queue) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:142:5: >> warning: no previous prototype for 'edma_veth_setup_all_tx_resources' >> [-Wmissing-prototypes] 142 | int edma_veth_setup_all_tx_resources(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:186:5: >> warning: no previous prototype for 'edma_veth_setup_rx_resources' >> [-Wmissing-prototypes] 186 | int edma_veth_setup_rx_resources(struct edma_rxtx_q_s *prx_queue) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:210:5: >> warning: no previous prototype for 'edma_veth_setup_all_rx_resources' >> [-Wmissing-prototypes] 210 | int edma_veth_setup_all_rx_resources(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:253:6: >> warning: no previous prototype for 'edma_veth_free_rx_resources' >> [-Wmissing-prototypes] 253 | void edma_veth_free_rx_resources(struct edma_rxtx_q_s *prx_queue) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:270:6: >> warning: no previous prototype for 'edma_veth_free_all_rx_resources' >> [-Wmissing-prototypes] 270 | void edma_veth_free_all_rx_resources(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:279:5: >> warning: no previous prototype for 'edma_veth_setup_all_rxtx_queue' >> [-Wmissing-prototypes] 279 | int edma_veth_setup_all_rxtx_queue(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:363:6: >> warning: no previous prototype for 'edma_veth_dump' [-Wmissing-prototypes] 363 | void edma_veth_dump(void) | ^~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:392:5: >> warning: no previous prototype for 'edma_veth_setup_resource' >> [-Wmissing-prototypes] 392 | int edma_veth_setup_resource(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:418:5: >> warning: no previous prototype for 'edma_veth_free_rxtx_queue' >> [-Wmissing-prototypes] 418 | int edma_veth_free_rxtx_queue(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:457:6: >> warning: no previous prototype for 'edma_veth_free_resource' >> [-Wmissing-prototypes] 457 | void edma_veth_free_resource(struct edma_eth_dev_s *edma_eth) | ^~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:469:5: >> warning: no previous prototype for 'edma_veth_send_one_pkt' >> [-Wmissing-prototypes] 469 | int edma_veth_send_one_pkt(struct edma_cut_packet_node_s *cut_packet_node) | ^~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:776:5: >> warning: no previous prototype for 'edma_veth_recv_pkt' >> [-Wmissing-prototypes] 776 | int edma_veth_recv_pkt(struct edma_rxtx_q_s *prx_queue, | ^~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:858:6: >> warning: no previous prototype for 'edma_task_do_packet_recv' >> [-Wmissing-prototypes] 858 | void edma_task_do_packet_recv(unsigned long data) | ^~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:883:5: >> warning: no previous prototype for '__dmacmp_err_deal_2' >> [-Wmissing-prototypes] 883 | int __dmacmp_err_deal_2(struct edma_rxtx_q_s *prxtx_queue, u32 type) | ^~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:916:5: >> warning: no previous prototype for 'edma_veth_check_dma_status' >> [-Wmissing-prototypes] 916 | int edma_veth_check_dma_status(struct edma_rxtx_q_s *prxtx_queue, u32 type) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:937:5: warning: no previous prototype for '__check_dmacmp_H_2' [-Wmissing-prototypes] 937 | int __check_dmacmp_H_2(struct edma_rxtx_q_s *prxtx_queue, u32 type) | ^~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1017:5: warning: no previous prototype for '__checkspace_H_2' [-Wmissing-prototypes] 1017 | int __checkspace_H_2(struct edma_rxtx_q_s *prxtx_queue, u32 type, u32 *pcnt) | ^~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1091:5: warning: no previous prototype for '__make_dmalistbd_h2b_H_2' [-Wmissing-prototypes] 1091 | int __make_dmalistbd_h2b_H_2(struct edma_rxtx_q_s *prxtx_queue, u32 cnt) | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.h:19, from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:16: drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c: In function '__make_dmalistbd_h2b_H_2': drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1162:38: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 1162 | pdmalbase_v[i].slow = lower_32_bits((u64)prxtx_queue->pdmalbase_p); | ^ include/linux/kernel.h:189:33: note: in definition of macro 'lower_32_bits' 189 | #define lower_32_bits(n) ((u32)(n)) | ^ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1163:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 1163 | pdmalbase_v[i].shi = upper_32_bits((u64)prxtx_queue->pdmalbase_p); | ^ include/linux/kernel.h:183:35: note: in definition of macro 'upper_32_bits' 183 | #define upper_32_bits(n) ((u32)(((n) >> 16) >> 16)) | ^ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c: At top level: drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1173:5: warning: no previous prototype for '__make_dmalistbd_b2h_H_2' [-Wmissing-prototypes] 1173 | int __make_dmalistbd_b2h_H_2(struct edma_rxtx_q_s *prxtx_queue, u32 cnt) | ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.h:19, from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:16: drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c: In function '__make_dmalistbd_b2h_H_2': drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1242:38: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 1242 | pdmalbase_v[i].slow = lower_32_bits((u64)prxtx_queue->pdmalbase_p); | ^ include/linux/kernel.h:189:33: note: in definition of macro 'lower_32_bits' 189 | #define lower_32_bits(n) ((u32)(n)) | ^ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1243:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 1243 | pdmalbase_v[i].shi = upper_32_bits((u64)prxtx_queue->pdmalbase_p); | ^ include/linux/kernel.h:183:35: note: in definition of macro 'upper_32_bits' 183 | #define upper_32_bits(n) ((u32)(((n) >> 16) >> 16)) | ^ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c: At top level: drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1253:5: warning: no previous prototype for '__start_dmalist_H_2' [-Wmissing-prototypes] 1253 | int __start_dmalist_H_2(struct edma_rxtx_q_s *prxtx_queue, u32 type, u32 cnt) | ^~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1297:5: warning: no previous prototype for 'check_dma_queue_fault_2' [-Wmissing-prototypes] 1297 | int check_dma_queue_fault_2(struct edma_rxtx_q_s *prxtx_queue, | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1327:5: warning: no previous prototype for '__dma_rxtx_H_2' [-Wmissing-prototypes] 1327 | int __dma_rxtx_H_2(struct edma_rxtx_q_s *prxtx_queue, u32 type) | ^~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1394:6: warning: no previous prototype for 'edma_task_do_data_transmit' [-Wmissing-prototypes] 1394 | void edma_task_do_data_transmit(unsigned long data) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1431:5: warning: no previous prototype for 'edma_tasklet_setup' [-Wmissing-prototypes] 1431 | int edma_tasklet_setup(struct edma_eth_dev_s *dev, u8 **rx_buf, | ^~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1479:6: warning: no previous prototype for 'edma_tasklet_free' [-Wmissing-prototypes] 1479 | void edma_tasklet_free(struct edma_eth_dev_s *dev, u8 **rx_buf, | ^~~~~~~~~~~~~~~~~ In file included from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.h:31, from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:16: drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c: In function 'edma_cdev_init': drivers/net/ethernet/huawei/bma/cdev_veth_drv/../edma_drv/bma_include.h:109:19: error: storage size of 'uptime' isn't known 109 | struct timespec uptime; | ^~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1600:2: note: in expansion of macro 'GET_SYS_SECONDS' 1600 | GET_SYS_SECONDS(g_eth_edmaprivate.init_time); | ^~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/../edma_drv/bma_include.h:110:3: error: implicit declaration of function 'get_monotonic_boottime' [-Werror=implicit-function-declaration] 110 | get_monotonic_boottime(&uptime); | ^~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1600:2: note: in expansion of macro 'GET_SYS_SECONDS' 1600 | GET_SYS_SECONDS(g_eth_edmaprivate.init_time); | ^~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/../edma_drv/bma_include.h:109:19: warning: unused variable 'uptime' [-Wunused-variable] 109 | struct timespec uptime; | ^~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1600:2: note: in expansion of macro 'GET_SYS_SECONDS' 1600 | GET_SYS_SECONDS(g_eth_edmaprivate.init_time); | ^~~~~~~~~~~~~~~ In file included from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:16: drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c: In function 'cdev_copy_packet_to_user': drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.h:258:17: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'size_t' {aka 'unsigned int'} [-Wformat=] 258 | netdev_err(0, "[%s,%d] -> " fmt "n", | ^~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1667:2: note: in expansion of macro 'LOG' 1667 | LOG(DLOG_DEBUG, | ^~~ drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:1668:20: note: format string is defined here 1668 | "User needs %ld bytes, pos: %ld, total len: %u, left: %ld.", | ~~^ | | | long int | %d In file included from drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.c:16: vim +/__kernel_time_t +250 drivers/net/ethernet/huawei/bma/cdev_veth_drv/virtual_cdev_eth_net.h 222 223 struct edma_eth_dev_s { 224 struct edma_rxtx_q_s *ptx_queue; 225 struct edma_rxtx_q_s *prx_queue; 226 227 struct edma_packet_node_s *rx_packet; 228 spinlock_t rx_queue_lock; /* spinlock for rx queue */ 229 230 u32 rx_packet_head; 231 u32 rx_packet_tail; 232 233 unsigned long pages_tx; 234 unsigned long pages_rx; 235 236 u8 *pshmpool_p; 237 u8 *pshmpool_v; 238 u32 shmpoolsize; 239 240 u32 recv_int; 241 u32 tobmc_int; 242 u32 run_dma_TX_task; 243 u32 run_dma_RX_task; 244 u32 run_skb_RX_task; 245 246 struct tasklet_struct skb_task; 247 struct tasklet_struct dma_task; 248 249 struct cdev_dev_s cdev; > 250 __kernel_time_t init_time; 251 252 void *edma_priv; 253 }; 254 255 #ifndef LOG 256 #define LOG(level, fmt, ...) do {\ 257 if (debug >= (level)) {\ > 258 netdev_err(0, "[%s,%d] -> " fmt "\n", \ 259 __func__, __LINE__, ##__VA_ARGS__); \ 260 } \ 261 } while (0) 262 #endif 263 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip