Re: [PATCH v3 15/16] nvmet-fc: avoid deadlock on delete association path

From: kernel test robot
Date: Tue Dec 19 2023 - 03:30:19 EST


Hi Daniel,

kernel test robot noticed the following build errors:

[auto build test ERROR on linux-nvme/nvme-6.8]
[also build test ERROR on linus/master v6.7-rc6 next-20231219]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Daniel-Wagner/nvmet-fc-remove-unnecessary-bracket/20231219-003117
base: git://git.infradead.org/nvme.git nvme-6.8
patch link: https://lore.kernel.org/r/20231218153105.12717-16-dwagner%40suse.de
patch subject: [PATCH v3 15/16] nvmet-fc: avoid deadlock on delete association path
config: loongarch-defconfig (https://download.01.org/0day-ci/archive/20231219/202312191634.ASof5mm8-lkp@xxxxxxxxx/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231219/202312191634.ASof5mm8-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
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312191634.ASof5mm8-lkp@xxxxxxxxx/

All error/warnings (new ones prefixed by >>):

drivers/nvme/target/fc.c: In function 'nvmet_fc_put_tgtport_work':
>> drivers/nvme/target/fc.c:253:9: error: implicit declaration of function 'nvmet_fc_tgtport_put'; did you mean 'nvmet_ctrl_put'? [-Werror=implicit-function-declaration]
253 | nvmet_fc_tgtport_put(tgtport);
| ^~~~~~~~~~~~~~~~~~~~
| nvmet_ctrl_put
drivers/nvme/target/fc.c: At top level:
>> drivers/nvme/target/fc.c:259:13: warning: conflicting types for 'nvmet_fc_tgtport_put'; have 'void(struct nvmet_fc_tgtport *)'
259 | static void nvmet_fc_tgtport_put(struct nvmet_fc_tgtport *tgtport);
| ^~~~~~~~~~~~~~~~~~~~
drivers/nvme/target/fc.c:259:13: error: static declaration of 'nvmet_fc_tgtport_put' follows non-static declaration
drivers/nvme/target/fc.c:253:9: note: previous implicit declaration of 'nvmet_fc_tgtport_put' with type 'void(struct nvmet_fc_tgtport *)'
253 | nvmet_fc_tgtport_put(tgtport);
| ^~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors


vim +253 drivers/nvme/target/fc.c

244
245
246 static void nvmet_fc_handle_ls_rqst_work(struct work_struct *work);
247 static void nvmet_fc_fcp_rqst_op_defer_work(struct work_struct *work);
248 static void nvmet_fc_put_tgtport_work(struct work_struct *work)
249 {
250 struct nvmet_fc_tgtport *tgtport =
251 container_of(work, struct nvmet_fc_tgtport, put_work);
252
> 253 nvmet_fc_tgtport_put(tgtport);
254 }
255 static void nvmet_fc_tgt_a_put(struct nvmet_fc_tgt_assoc *assoc);
256 static int nvmet_fc_tgt_a_get(struct nvmet_fc_tgt_assoc *assoc);
257 static void nvmet_fc_tgt_q_put(struct nvmet_fc_tgt_queue *queue);
258 static int nvmet_fc_tgt_q_get(struct nvmet_fc_tgt_queue *queue);
> 259 static void nvmet_fc_tgtport_put(struct nvmet_fc_tgtport *tgtport);
260 static int nvmet_fc_tgtport_get(struct nvmet_fc_tgtport *tgtport);
261 static void nvmet_fc_handle_fcp_rqst(struct nvmet_fc_tgtport *tgtport,
262 struct nvmet_fc_fcp_iod *fod);
263 static void nvmet_fc_delete_target_assoc(struct nvmet_fc_tgt_assoc *assoc);
264 static void nvmet_fc_xmt_ls_rsp(struct nvmet_fc_tgtport *tgtport,
265 struct nvmet_fc_ls_iod *iod);
266
267

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