[PATCHv2 2/5] nvme: simplify passthrough bio cleanup
kernel test robot
lkp at intel.com
Fri Apr 7 17:22:32 PDT 2023
Hi Keith,
kernel test robot noticed the following build warnings:
[auto build test WARNING on axboe-block/for-next]
[also build test WARNING on next-20230406]
[cannot apply to linus/master v6.3-rc5]
[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/Keith-Busch/block-add-request-polling-helper/20230408-031926
base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next
patch link: https://lore.kernel.org/r/20230407191636.2631046-3-kbusch%40meta.com
patch subject: [PATCHv2 2/5] nvme: simplify passthrough bio cleanup
config: ia64-allyesconfig (https://download.01.org/0day-ci/archive/20230408/202304080846.C2qDQtUd-lkp@intel.com/config)
compiler: ia64-linux-gcc (GCC) 12.1.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
# https://github.com/intel-lab-lkp/linux/commit/9a32e7ca02dd8cff559b273fe161b5347b5b5c97
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Keith-Busch/block-add-request-polling-helper/20230408-031926
git checkout 9a32e7ca02dd8cff559b273fe161b5347b5b5c97
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/nvme/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp at intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202304080846.C2qDQtUd-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/nvme/host/ioctl.c: In function 'nvme_submit_user_cmd':
>> drivers/nvme/host/ioctl.c:232:21: warning: variable 'bio' set but not used [-Wunused-but-set-variable]
232 | struct bio *bio;
| ^~~
drivers/nvme/host/ioctl.c: In function 'nvme_uring_cmd_end_io_meta':
drivers/nvme/host/ioctl.c:528:36: warning: unused variable 'pdu' [-Wunused-variable]
528 | struct nvme_uring_cmd_pdu *pdu = nvme_uring_cmd_pdu(ioucmd);
| ^~~
vim +/bio +232 drivers/nvme/host/ioctl.c
2405252a680e21 Christoph Hellwig 2021-04-10 222
bcad2565b5d647 Christoph Hellwig 2022-05-11 223 static int nvme_submit_user_cmd(struct request_queue *q,
7b7fdb8e2dbc15 Christoph Hellwig 2023-01-08 224 struct nvme_command *cmd, u64 ubuffer, unsigned bufflen,
7b7fdb8e2dbc15 Christoph Hellwig 2023-01-08 225 void __user *meta_buffer, unsigned meta_len, u32 meta_seed,
7b7fdb8e2dbc15 Christoph Hellwig 2023-01-08 226 u64 *result, unsigned timeout, unsigned int flags)
bcad2565b5d647 Christoph Hellwig 2022-05-11 227 {
62281b9ed671be Christoph Hellwig 2022-12-14 228 struct nvme_ns *ns = q->queuedata;
bc8fb906b0ff93 Keith Busch 2022-09-19 229 struct nvme_ctrl *ctrl;
bcad2565b5d647 Christoph Hellwig 2022-05-11 230 struct request *req;
bcad2565b5d647 Christoph Hellwig 2022-05-11 231 void *meta = NULL;
bcad2565b5d647 Christoph Hellwig 2022-05-11 @232 struct bio *bio;
bc8fb906b0ff93 Keith Busch 2022-09-19 233 u32 effects;
bcad2565b5d647 Christoph Hellwig 2022-05-11 234 int ret;
bcad2565b5d647 Christoph Hellwig 2022-05-11 235
470e900c8036ff Kanchan Joshi 2022-09-30 236 req = nvme_alloc_user_request(q, cmd, 0, 0);
bcad2565b5d647 Christoph Hellwig 2022-05-11 237 if (IS_ERR(req))
bcad2565b5d647 Christoph Hellwig 2022-05-11 238 return PTR_ERR(req);
bcad2565b5d647 Christoph Hellwig 2022-05-11 239
470e900c8036ff Kanchan Joshi 2022-09-30 240 req->timeout = timeout;
470e900c8036ff Kanchan Joshi 2022-09-30 241 if (ubuffer && bufflen) {
470e900c8036ff Kanchan Joshi 2022-09-30 242 ret = nvme_map_user_request(req, ubuffer, bufflen, meta_buffer,
7b7fdb8e2dbc15 Christoph Hellwig 2023-01-08 243 meta_len, meta_seed, &meta, NULL, flags);
470e900c8036ff Kanchan Joshi 2022-09-30 244 if (ret)
470e900c8036ff Kanchan Joshi 2022-09-30 245 return ret;
470e900c8036ff Kanchan Joshi 2022-09-30 246 }
470e900c8036ff Kanchan Joshi 2022-09-30 247
bcad2565b5d647 Christoph Hellwig 2022-05-11 248 bio = req->bio;
bc8fb906b0ff93 Keith Busch 2022-09-19 249 ctrl = nvme_req(req)->ctrl;
bcad2565b5d647 Christoph Hellwig 2022-05-11 250
62281b9ed671be Christoph Hellwig 2022-12-14 251 effects = nvme_passthru_start(ctrl, ns, cmd->common.opcode);
62281b9ed671be Christoph Hellwig 2022-12-14 252 ret = nvme_execute_rq(req, false);
2405252a680e21 Christoph Hellwig 2021-04-10 253 if (result)
2405252a680e21 Christoph Hellwig 2021-04-10 254 *result = le64_to_cpu(nvme_req(req)->result.u64);
bcad2565b5d647 Christoph Hellwig 2022-05-11 255 if (meta)
bcad2565b5d647 Christoph Hellwig 2022-05-11 256 ret = nvme_finish_user_metadata(req, meta_buffer, meta,
bcad2565b5d647 Christoph Hellwig 2022-05-11 257 meta_len, ret);
2405252a680e21 Christoph Hellwig 2021-04-10 258 blk_mq_free_request(req);
bc8fb906b0ff93 Keith Busch 2022-09-19 259
bc8fb906b0ff93 Keith Busch 2022-09-19 260 if (effects)
bc8fb906b0ff93 Keith Busch 2022-09-19 261 nvme_passthru_end(ctrl, effects, cmd, ret);
bc8fb906b0ff93 Keith Busch 2022-09-19 262
2405252a680e21 Christoph Hellwig 2021-04-10 263 return ret;
2405252a680e21 Christoph Hellwig 2021-04-10 264 }
2405252a680e21 Christoph Hellwig 2021-04-10 265
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
More information about the Linux-nvme
mailing list