drivers/infiniband/hw/bnxt_re/uapi.c:499:30: sparse: sparse: symbol 'bnxt_re_create_qp_defs' was not declared. Should it be static?

From: kernel test robot

Date: Thu Sep 10 2026 - 18:18:40 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 50d05c7c76c96b90462f24debacca971d2e86713
commit: 7e812673a948395675e9893e75b0fc60d19bbf27 RDMA/bnxt_re: Support doorbells for app allocated QPs
date: 4 months ago
config: x86_64-randconfig-121-20260910 (https://download.01.org/0day-ci/archive/20260911/202609110534.gyZDGRyo-lkp@xxxxxxxxx/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260911/202609110534.gyZDGRyo-lkp@xxxxxxxxx/reproduce)

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
| Fixes: 7e812673a948 ("RDMA/bnxt_re: Support doorbells for app allocated QPs")
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609110534.gyZDGRyo-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> drivers/infiniband/hw/bnxt_re/uapi.c:499:30: sparse: sparse: symbol 'bnxt_re_create_qp_defs' was not declared. Should it be static?

vim +/bnxt_re_create_qp_defs +499 drivers/infiniband/hw/bnxt_re/uapi.c

456
457 DECLARE_UVERBS_NAMED_METHOD(BNXT_RE_METHOD_DBR_ALLOC,
458 UVERBS_ATTR_IDR(BNXT_RE_ALLOC_DBR_HANDLE,
459 BNXT_RE_OBJECT_DBR,
460 UVERBS_ACCESS_NEW,
461 UA_MANDATORY),
462 UVERBS_ATTR_PTR_OUT(BNXT_RE_ALLOC_DBR_ATTR,
463 UVERBS_ATTR_STRUCT(struct bnxt_re_db_region,
464 umdbr),
465 UA_MANDATORY),
466 UVERBS_ATTR_PTR_OUT(BNXT_RE_ALLOC_DBR_OFFSET,
467 UVERBS_ATTR_TYPE(u64),
468 UA_MANDATORY));
469
470 DECLARE_UVERBS_NAMED_METHOD_DESTROY(BNXT_RE_METHOD_DBR_FREE,
471 UVERBS_ATTR_IDR(BNXT_RE_FREE_DBR_HANDLE,
472 BNXT_RE_OBJECT_DBR,
473 UVERBS_ACCESS_DESTROY,
474 UA_MANDATORY));
475
476 DECLARE_UVERBS_NAMED_OBJECT(BNXT_RE_OBJECT_DBR,
477 UVERBS_TYPE_ALLOC_IDR(bnxt_re_dbr_cleanup),
478 &UVERBS_METHOD(BNXT_RE_METHOD_DBR_ALLOC),
479 &UVERBS_METHOD(BNXT_RE_METHOD_DBR_FREE));
480
481 DECLARE_UVERBS_NAMED_METHOD(BNXT_RE_METHOD_GET_DEFAULT_DBR,
482 UVERBS_ATTR_PTR_OUT(BNXT_RE_DEFAULT_DBR_ATTR,
483 UVERBS_ATTR_STRUCT(struct bnxt_re_db_region,
484 umdbr),
485 UA_MANDATORY));
486
487 DECLARE_UVERBS_GLOBAL_METHODS(BNXT_RE_OBJECT_DEFAULT_DBR,
488 &UVERBS_METHOD(BNXT_RE_METHOD_GET_DEFAULT_DBR));
489
490 ADD_UVERBS_ATTRIBUTES_SIMPLE(
491 bnxt_re_qp_create,
492 UVERBS_OBJECT_QP,
493 UVERBS_METHOD_QP_CREATE,
494 UVERBS_ATTR_IDR(BNXT_RE_CREATE_QP_ATTR_DBR_HANDLE,
495 BNXT_RE_OBJECT_DBR,
496 UVERBS_ACCESS_READ,
497 UA_OPTIONAL));
498
> 499 const struct uapi_definition bnxt_re_create_qp_defs[] = {
500 UAPI_DEF_CHAIN_OBJ_TREE(UVERBS_OBJECT_QP, &bnxt_re_qp_create),
501 {},
502 };
503

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki