Hi Shamir, Thank you for the patch! Yet something to improve: [auto build test ERROR on rdma/for-next] [also build test ERROR on v4.19-rc7 next-20181012] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Shamir-Rabinovitch/convey-ib_ucontext-via-ib_udata/20181015-021539 base: https://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git for-next config: x86_64-allmodconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): >> drivers/infiniband/core/uverbs_std_types.c:79:34: warning: Using plain integer as NULL pointer drivers/infiniband/core/uverbs_std_types.c:131:34: warning: Using plain integer as NULL pointer drivers/infiniband/core/uverbs_std_types.c:192:34: warning: Using plain integer as NULL pointer -- >> drivers/infiniband/core/uverbs_std_types_mr.c:39:34: warning: Using plain integer as NULL pointer drivers/infiniband/core/uverbs_std_types_mr.c:58:34: warning: Using plain integer as NULL pointer -- >> drivers/infiniband/core/verbs.c:340:9: error: undefined identifier 'rdma_is_user_pd' drivers/infiniband/core/verbs.c:1228:13: error: undefined identifier 'rdma_is_user_pd' drivers/infiniband/core/verbs.c:1905:13: error: undefined identifier 'rdma_is_user_pd' drivers/infiniband/core/verbs.c:1989:13: error: undefined identifier 'rdma_is_user_pd' drivers/infiniband/core/verbs.c:2015:13: error: undefined identifier 'rdma_is_user_pd' In file included from arch/x86/include/asm/bug.h:83:0, from include/linux/bug.h:5, from include/linux/mmdebug.h:5, from include/linux/gfp.h:5, from include/linux/slab.h:15, from drivers/infiniband/core/verbs.c:43: drivers/infiniband/core/verbs.c: In function 'ib_dealloc_pd': drivers/infiniband/core/verbs.c:340:10: error: implicit declaration of function 'rdma_is_user_pd'; did you mean 'rdma_is_zero_gid'? [-Werror=implicit-function-declaration] WARN_ON(rdma_is_user_pd(pd)); ^ include/asm-generic/bug.h:122:25: note: in definition of macro 'WARN_ON' int __ret_warn_on = !!(condition); \ ^~~~~~~~~ cc1: some warnings being treated as errors -- >> drivers/infiniband/hw/hns/hns_roce_main.c:498:41: warning: incorrect type in assignment (different argument counts) drivers/infiniband/hw/hns/hns_roce_main.c:498:41: expected int ( *dealloc_pd )( ... ) drivers/infiniband/hw/hns/hns_roce_main.c:498:41: got int ( *<noident> )( ... ) drivers/infiniband/hw/hns/hns_roce_main.c:509:41: warning: incorrect type in assignment (different argument counts) drivers/infiniband/hw/hns/hns_roce_main.c:509:41: expected int ( *destroy_qp )( ... ) drivers/infiniband/hw/hns/hns_roce_main.c:509:41: got int ( *const destroy_qp )( ... ) drivers/infiniband/hw/hns/hns_roce_main.c:523:41: warning: incorrect type in assignment (different argument counts) drivers/infiniband/hw/hns/hns_roce_main.c:523:41: expected int ( *dereg_mr )( ... ) drivers/infiniband/hw/hns/hns_roce_main.c:523:41: got int ( *<noident> )( ... ) drivers/infiniband/hw/hns/hns_roce_main.c: In function 'hns_roce_register_device': drivers/infiniband/hw/hns/hns_roce_main.c:498:22: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] ib_dev->dealloc_pd = hns_roce_dealloc_pd; ^ drivers/infiniband/hw/hns/hns_roce_main.c:509:22: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] ib_dev->destroy_qp = hr_dev->hw->destroy_qp; ^ drivers/infiniband/hw/hns/hns_roce_main.c:523:20: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] ib_dev->dereg_mr = hns_roce_dereg_mr; ^ cc1: some warnings being treated as errors vim +/rdma_is_user_pd +340 drivers/infiniband/core/verbs.c eda5b925 Shamir Rabinovitch 2018-10-14 327 eda5b925 Shamir Rabinovitch 2018-10-14 328 /** eda5b925 Shamir Rabinovitch 2018-10-14 329 * ib_dealloc_pd - Deallocates a protection domain. eda5b925 Shamir Rabinovitch 2018-10-14 330 * @pd: The protection domain to deallocate. eda5b925 Shamir Rabinovitch 2018-10-14 331 * eda5b925 Shamir Rabinovitch 2018-10-14 332 * It is an error to call this function while any resources in the pd still eda5b925 Shamir Rabinovitch 2018-10-14 333 * exist. The caller is responsible to synchronously destroy them and eda5b925 Shamir Rabinovitch 2018-10-14 334 * guarantee no new allocations will happen. eda5b925 Shamir Rabinovitch 2018-10-14 335 * eda5b925 Shamir Rabinovitch 2018-10-14 336 * NOTE: Never call this function from uverbs! eda5b925 Shamir Rabinovitch 2018-10-14 337 */ eda5b925 Shamir Rabinovitch 2018-10-14 338 void ib_dealloc_pd(struct ib_pd *pd) eda5b925 Shamir Rabinovitch 2018-10-14 339 { eda5b925 Shamir Rabinovitch 2018-10-14 @340 WARN_ON(rdma_is_user_pd(pd)); eda5b925 Shamir Rabinovitch 2018-10-14 341 ib_dealloc_pd_user(pd, NULL); eda5b925 Shamir Rabinovitch 2018-10-14 342 } ^1da177e Linus Torvalds 2005-04-16 343 EXPORT_SYMBOL(ib_dealloc_pd); ^1da177e Linus Torvalds 2005-04-16 344 :::::: The code at line 340 was first introduced by commit :::::: eda5b92561d6d57782b4f6097b71886b85e3ca08 IB/verbs: dealloc_pd verb need ib_udata :::::: TO: Shamir Rabinovitch <shamir.rabinovitch@xxxxxxxxxx> :::::: CC: 0day robot <lkp@xxxxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip