Re: [RFC PATCH 3/3] RDMA/rxe: Support dma-buf as memory region
From: kernel test robot <hidden>
Date: 2021-09-09 03:23:48
Also in:
oe-kbuild-all
Hi Shunsuke, [FYI, it's a private test report for your RFC patch.] [auto build test ERROR on v5.14] [cannot apply to rdma/for-next next-20210908] [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] url: https://github.com/0day-ci/linux/commits/Shunsuke-Mie/RDMA-rxe-Add-dma-buf-support/20210908-142001 base: 7d2a07b769330c34b4deabeed939325c77a7ec2f config: x86_64-randconfig-a016-20210908 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 9c476172b93367d2cb88d7d3f4b1b5b456fa6020) 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/0day-ci/linux/commit/80fcf7f4bc573f6f833baeb7e390e44a79ddd84f git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Shunsuke-Mie/RDMA-rxe-Add-dma-buf-support/20210908-142001 git checkout 80fcf7f4bc573f6f833baeb7e390e44a79ddd84f # save the attached .config to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/infiniband/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <redacted> All errors (new ones prefixed by >>):
quoted
drivers/infiniband/sw/rxe/rxe_mr.c:304:7: error: use of undeclared identifier 'i'
for (i = 0; i < mr->num_map; i++)
^
drivers/infiniband/sw/rxe/rxe_mr.c:304:14: error: use of undeclared identifier 'i'
for (i = 0; i < mr->num_map; i++)
^
drivers/infiniband/sw/rxe/rxe_mr.c:304:31: error: use of undeclared identifier 'i'
for (i = 0; i < mr->num_map; i++)
^
drivers/infiniband/sw/rxe/rxe_mr.c:305:17: error: use of undeclared identifier 'i'
kfree(mr->map[i]);
^
4 errors generated.
vim +/i +304 drivers/infiniband/sw/rxe/rxe_mr.c
254
255 /* initialize a umem and map all the areas of dma-buf. */
256 int rxe_mr_dmabuf_init_user(struct rxe_pd *pd, int fd, u64 start, u64 length,
257 u64 iova, int access, struct rxe_mr *mr)
258 {
259 struct ib_umem_dmabuf *umem_dmabuf;
260 int num_buf;
261 int err;
262
263 umem_dmabuf = ib_umem_dmabuf_get(pd->ibpd.device, start, length, fd,
264 access, &rxe_ib_dmabuf_attach_ops);
265 if (IS_ERR(umem_dmabuf)) {
266 err = PTR_ERR(umem_dmabuf);
267 pr_err("%s: failed to get umem_dmabuf (%d)", __func__, err);
268 goto err1;
269 }
270
271 umem_dmabuf->private = mr;
272
273 mr->umem = &umem_dmabuf->umem;
274 mr->umem->iova = iova;
275 num_buf = ib_umem_num_pages(mr->umem);
276
277 rxe_mr_init(access, mr);
278
279 err = rxe_mr_alloc(mr, num_buf);
280 if (err)
281 goto err1;
282
283 mr->page_shift = PAGE_SHIFT;
284 mr->page_mask = PAGE_SIZE - 1;
285
286 mr->ibmr.pd = &pd->ibpd;
287 mr->access = access;
288 mr->length = length;
289 mr->iova = iova;
290 mr->va = start;
291 mr->offset = ib_umem_offset(mr->umem);
292 mr->state = RXE_MR_STATE_VALID;
293 mr->type = RXE_MR_TYPE_MR;
294
295 err = rxe_map_dmabuf_mr(mr);
296 if (err) {
297 pr_err("%s: failed to map the dma-buf region", __func__);
298 goto err2;
299 }
300
301 return 0;
302
303 err2:
> 304 for (i = 0; i < mr->num_map; i++)
305 kfree(mr->map[i]);
306 kfree(mr->map);
307 err1:
308 return err;
309 }
310
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Attachments
- .config.gz [application/gzip] 39558 bytes