Hi, Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on sparc-next/master] [also build test WARNING on linux/master linus/master v5.8-rc2 next-20200622] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/yunaixin03610-163-com/Adding-Huawei-BMA-drivers/20200623-014140 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next.git master config: sh-allmodconfig (attached as .config) compiler: sh4-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=sh If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> All warnings (new ones prefixed by >>, old ones prefixed by <<): drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:394:5: warning: no previous prototype for 'bspveth_setup_tx_resources' [-Wmissing-prototypes] 394 | s32 bspveth_setup_tx_resources(struct bspveth_device *pvethdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/sh/include/asm/thread_info.h:15, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/sh/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/spinlock.h:51, from include/linux/seqlock.h:36, from include/linux/time.h:6, from include/linux/stat.h:19, from include/linux/module.h:13, from drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:18: drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: In function 'bspveth_setup_tx_resources': drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:427:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 427 | ptx_queue->pbdbase_p = (u8 *)(__pa((BSP_VETH_T)(ptx_queue->pbdbase_v))); | ^ arch/sh/include/asm/page.h:138:20: note: in definition of macro '___pa' 138 | #define ___pa(x) ((x)-PAGE_OFFSET) | ^ >> drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:427:32: note: in >> expansion of macro '__pa' 427 | ptx_queue->pbdbase_p = (u8 *)(__pa((BSP_VETH_T)(ptx_queue->pbdbase_v))); | ^~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: At top level: drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:443:6: warning: no previous prototype for 'bspveth_free_tx_resources' [-Wmissing-prototypes] 443 | void bspveth_free_tx_resources(struct bspveth_device *pvethdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:485:5: warning: no previous prototype for 'bspveth_setup_all_tx_resources' [-Wmissing-prototypes] 485 | s32 bspveth_setup_all_tx_resources(struct bspveth_device *pvethdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: In function 'bspveth_setup_all_tx_resources': drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:514:33: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 514 | (struct bspveth_dma_shmbd *)((BSP_VETH_T)(shmq_head) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:514:4: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 514 | (struct bspveth_dma_shmbd *)((BSP_VETH_T)(shmq_head) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:517:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 517 | (u8 *)((BSP_VETH_T)(shmq_head_p) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:517:4: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 517 | (u8 *)((BSP_VETH_T)(shmq_head_p) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:520:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 520 | (struct bspveth_dmal *)((BSP_VETH_T)(shmq_head) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:520:4: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 520 | (struct bspveth_dmal *)((BSP_VETH_T)(shmq_head) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:523:4: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 523 | (u8 *)(u64)(VETH_SHAREPOOL_BASE_INBMC + | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: At top level: drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:554:6: warning: no previous prototype for 'bspveth_free_all_tx_resources' [-Wmissing-prototypes] 554 | void bspveth_free_all_tx_resources(struct bspveth_device *pvethdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:571:5: warning: no previous prototype for 'veth_alloc_one_rx_skb' [-Wmissing-prototypes] 571 | s32 veth_alloc_one_rx_skb(struct bspveth_rxtx_q *prx_queue, int idx) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:616:5: warning: no previous prototype for 'veth_refill_rxskb' [-Wmissing-prototypes] 616 | s32 veth_refill_rxskb(struct bspveth_rxtx_q *prx_queue, int queue) | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:654:5: warning: no previous prototype for 'bspveth_setup_rx_skb' [-Wmissing-prototypes] 654 | s32 bspveth_setup_rx_skb(struct bspveth_device *pvethdev, | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:685:6: warning: no previous prototype for 'bspveth_free_rx_skb' [-Wmissing-prototypes] 685 | void bspveth_free_rx_skb(struct bspveth_device *pvethdev, | ^~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:718:5: warning: no previous prototype for 'bspveth_setup_all_rx_skb' [-Wmissing-prototypes] 718 | s32 bspveth_setup_all_rx_skb(struct bspveth_device *pvethdev) | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:746:6: warning: no previous prototype for 'bspveth_free_all_rx_skb' [-Wmissing-prototypes] 746 | void bspveth_free_all_rx_skb(struct bspveth_device *pvethdev) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:758:5: warning: no previous prototype for 'bspveth_setup_rx_resources' [-Wmissing-prototypes] 758 | s32 bspveth_setup_rx_resources(struct bspveth_device *pvethdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from arch/sh/include/asm/thread_info.h:15, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/sh/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/spinlock.h:51, from include/linux/seqlock.h:36, from include/linux/time.h:6, from include/linux/stat.h:19, from include/linux/module.h:13, from drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:18: drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: In function 'bspveth_setup_rx_resources': drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:792:36: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 792 | prx_queue->pbdbase_p = (u8 *)__pa((BSP_VETH_T) (prx_queue->pbdbase_v)); | ^ arch/sh/include/asm/page.h:138:20: note: in definition of macro '___pa' 138 | #define ___pa(x) ((x)-PAGE_OFFSET) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:792:31: note: in expansion of macro '__pa' 792 | prx_queue->pbdbase_p = (u8 *)__pa((BSP_VETH_T) (prx_queue->pbdbase_v)); | ^~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: At top level: drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:809:6: warning: no previous prototype for 'bspveth_free_rx_resources' [-Wmissing-prototypes] 809 | void bspveth_free_rx_resources(struct bspveth_device *pvethdev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:841:5: warning: no previous prototype for 'bspveth_setup_all_rx_resources' [-Wmissing-prototypes] 841 | s32 bspveth_setup_all_rx_resources(struct bspveth_device *pvethdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c: In function 'bspveth_setup_all_rx_resources': drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:871:33: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 871 | (struct bspveth_dma_shmbd *)((BSP_VETH_T)(shmq_head) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:871:4: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 871 | (struct bspveth_dma_shmbd *)((BSP_VETH_T)(shmq_head) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:874:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 874 | (u8 *)((BSP_VETH_T)(shmq_head_p) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:874:4: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 874 | (u8 *)((BSP_VETH_T)(shmq_head_p) | ^ drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c:877:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] 877 | (struct bspveth_dmal *)((BSP_VETH_T)(shmq_head) | ^ vim +/__pa +427 drivers/net/ethernet/huawei/bma/veth_drv/veth_hb.c 393 394 s32 bspveth_setup_tx_resources(struct bspveth_device *pvethdev, 395 struct bspveth_rxtx_q *ptx_queue) 396 { 397 unsigned int size; 398 399 if (!pvethdev || !ptx_queue) 400 return BSP_ERR_NULL_POINTER; 401 402 ptx_queue->count = MAX_QUEUE_BDNUM; 403 404 size = sizeof(struct bspveth_bd_info) * ptx_queue->count; 405 ptx_queue->pbdinfobase_v = vmalloc(size); 406 if (!ptx_queue->pbdinfobase_v) 407 goto alloc_failed; 408 409 memset(ptx_queue->pbdinfobase_v, 0, size); 410 411 /* round up to nearest 4K */ 412 ptx_queue->size = ptx_queue->count * sizeof(struct bspveth_bd_info); 413 ptx_queue->size = ALIGN(ptx_queue->size, 4096); 414 415 /* prepare 4096 send buffer */ 416 ptx_queue->pbdbase_v = kmalloc(ptx_queue->size, GFP_KERNEL); 417 if (!ptx_queue->pbdbase_v) { 418 VETH_LOG(DLOG_ERROR, 419 "Unable to kmalloc for the receive descriptor ring\n"); 420 421 vfree(ptx_queue->pbdinfobase_v); 422 ptx_queue->pbdinfobase_v = NULL; 423 424 goto alloc_failed; 425 } 426 > 427 ptx_queue->pbdbase_p = (u8 > *)(__pa((BSP_VETH_T)(ptx_queue->pbdbase_v))); 428 429 ptx_queue->next_to_fill = 0; 430 ptx_queue->next_to_free = 0; 431 ptx_queue->head = 0; 432 ptx_queue->tail = 0; 433 ptx_queue->work_limit = BSPVETH_WORK_LIMIT; 434 435 memset(&ptx_queue->s, 0, sizeof(struct bspveth_rxtx_statis)); 436 437 return 0; 438 439 alloc_failed: 440 return -ENOMEM; 441 } 442 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip