CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Israel Rukshin <israelr(a)mellanox.com>
CC: Jason Gunthorpe <jgg(a)mellanox.com>
CC: Max Gurtovoy <maxg(a)mellanox.com>
CC: Sagi Grimberg <sagi(a)grimberg.me>
tree:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b51594df17d0ce80b9f9f35394a1f42d7ac94472
commit: 1fc431320a53f3e9b33b399667c8788fa00eb8b0 RDMA/iser: Remove support for FMR memory
registration
date: 3 months ago
:::::: branch date: 52 minutes ago
:::::: commit date: 3 months ago
config: m68k-randconfig-m031-20200831 (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
drivers/infiniband/ulp/iser/iser_memory.c:389 iser_reg_mem_fastreg() error: double
unlocked 'ib_conn->fr_pool.lock' (orig line 368)
#
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 1fc431320a53f3e9b33b399667c8788fa00eb8b0
vim +389 drivers/infiniband/ulp/iser/iser_memory.c
5587856c9659ac Sagi Grimberg 2013-07-28 352
1fc431320a53f3 Israel Rukshin 2020-05-28 353 int iser_reg_mem_fastreg(struct
iscsi_iser_task *task,
b5f04b00f73d8f Jenny Derzhavetz 2015-12-09 354 enum iser_data_dir dir,
b5f04b00f73d8f Jenny Derzhavetz 2015-12-09 355 bool all_imm)
32467c420bb687 Sagi Grimberg 2015-08-06 356 {
32467c420bb687 Sagi Grimberg 2015-08-06 357 struct ib_conn *ib_conn =
&task->iser_conn->ib_conn;
32467c420bb687 Sagi Grimberg 2015-08-06 358 struct iser_data_buf *mem =
&task->data[dir];
32467c420bb687 Sagi Grimberg 2015-08-06 359 struct iser_mem_reg *reg =
&task->rdma_reg[dir];
32467c420bb687 Sagi Grimberg 2015-08-06 360 struct iser_fr_desc *desc = NULL;
3cffd930171518 Sagi Grimberg 2015-09-24 361 bool use_dma_key;
32467c420bb687 Sagi Grimberg 2015-08-06 362 int err;
32467c420bb687 Sagi Grimberg 2015-08-06 363
b5f04b00f73d8f Jenny Derzhavetz 2015-12-09 364 use_dma_key = mem->dma_nents == 1
&& (all_imm || !iser_always_reg) &&
b5f04b00f73d8f Jenny Derzhavetz 2015-12-09 365 scsi_get_prot_op(task->sc) ==
SCSI_PROT_NORMAL;
3cffd930171518 Sagi Grimberg 2015-09-24 366
3cffd930171518 Sagi Grimberg 2015-09-24 367 if (!use_dma_key) {
1fc431320a53f3 Israel Rukshin 2020-05-28 @368 desc = iser_reg_desc_get_fr(ib_conn);
32467c420bb687 Sagi Grimberg 2015-08-06 369 reg->mem_h = desc;
5587856c9659ac Sagi Grimberg 2013-07-28 370 }
5587856c9659ac Sagi Grimberg 2013-07-28 371
b76a439982f848 Israel Rukshin 2019-06-11 372 if (scsi_get_prot_op(task->sc) ==
SCSI_PROT_NORMAL) {
b76a439982f848 Israel Rukshin 2019-06-11 373 err = iser_reg_data_sg(task, mem, desc,
use_dma_key, reg);
32467c420bb687 Sagi Grimberg 2015-08-06 374 if (unlikely(err))
177e31bd5a4099 Sagi Grimberg 2014-03-05 375 goto err_reg;
b76a439982f848 Israel Rukshin 2019-06-11 376 } else {
b76a439982f848 Israel Rukshin 2019-06-11 377 err = iser_reg_sig_mr(task, mem,
&task->prot[dir],
b76a439982f848 Israel Rukshin 2019-06-11 378 &desc->rsc, reg);
32467c420bb687 Sagi Grimberg 2015-08-06 379 if (unlikely(err))
32467c420bb687 Sagi Grimberg 2015-08-06 380 goto err_reg;
32467c420bb687 Sagi Grimberg 2015-08-06 381
c934833e772396 zhengbin 2019-12-24 382 desc->sig_protected = true;
177e31bd5a4099 Sagi Grimberg 2014-03-05 383 }
d11ec4ecf022f4 Sagi Grimberg 2014-03-05 384
5587856c9659ac Sagi Grimberg 2013-07-28 385 return 0;
32467c420bb687 Sagi Grimberg 2015-08-06 386
5587856c9659ac Sagi Grimberg 2013-07-28 387 err_reg:
bd8b944eeeb06f Sagi Grimberg 2015-04-14 388 if (desc)
1fc431320a53f3 Israel Rukshin 2020-05-28 @389 iser_reg_desc_put_fr(ib_conn, desc);
d11ec4ecf022f4 Sagi Grimberg 2014-03-05 390
5587856c9659ac Sagi Grimberg 2013-07-28 391 return err;
5587856c9659ac Sagi Grimberg 2013-07-28 392 }
32467c420bb687 Sagi Grimberg 2015-08-06 393
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org