From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: drivers/vdpa/mlx5/core/mr.c:244: undefined reference to `vhost_iotlb_itree_first'
Date: Sat, 26 Sep 2020 07:56:56 +0800 [thread overview]
Message-ID: <202009260751.v0NKY1aK%lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 4575 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b463b6f69974867b3b5885de2f488d72e979a751
commit: 94abbccdf2916cb03f9626f2d36c6e9971490c12 vdpa/mlx5: Add shared memory registration code
date: 7 weeks ago
config: arm-randconfig-r024-20200924 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.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://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=94abbccdf2916cb03f9626f2d36c6e9971490c12
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 94abbccdf2916cb03f9626f2d36c6e9971490c12
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.o: in function `map_direct_mr':
>> drivers/vdpa/mlx5/core/mr.c:244: undefined reference to `vhost_iotlb_itree_first'
>> arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.c:245: undefined reference to `vhost_iotlb_itree_next'
>> arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.c:260: undefined reference to `vhost_iotlb_itree_first'
arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.c:261: undefined reference to `vhost_iotlb_itree_next'
arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.o: in function `_mlx5_vdpa_create_mr':
drivers/vdpa/mlx5/core/mr.c:377: undefined reference to `vhost_iotlb_itree_first'
arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.c:378: undefined reference to `vhost_iotlb_itree_next'
arm-linux-gnueabi-ld: drivers/vdpa/mlx5/core/mr.o: in function `map_empty':
drivers/vdpa/mlx5/core/mr.c:460: undefined reference to `vhost_iotlb_itree_first'
vim +244 drivers/vdpa/mlx5/core/mr.c
225
226 static int map_direct_mr(struct mlx5_vdpa_dev *mvdev, struct mlx5_vdpa_direct_mr *mr,
227 struct vhost_iotlb *iotlb)
228 {
229 struct vhost_iotlb_map *map;
230 unsigned long lgcd = 0;
231 int log_entity_size;
232 unsigned long size;
233 u64 start = 0;
234 int err;
235 struct page *pg;
236 unsigned int nsg;
237 int sglen;
238 u64 pa;
239 u64 paend;
240 struct scatterlist *sg;
241 struct device *dma = mvdev->mdev->device;
242 int ret;
243
> 244 for (map = vhost_iotlb_itree_first(iotlb, mr->start, mr->end - 1);
> 245 map; map = vhost_iotlb_itree_next(map, start, mr->end - 1)) {
246 size = maplen(map, mr);
247 lgcd = gcd(lgcd, size);
248 start += size;
249 }
250 log_entity_size = ilog2(lgcd);
251
252 sglen = 1 << log_entity_size;
253 nsg = MLX5_DIV_ROUND_UP_POW2(mr->end - mr->start, log_entity_size);
254
255 err = sg_alloc_table(&mr->sg_head, nsg, GFP_KERNEL);
256 if (err)
257 return err;
258
259 sg = mr->sg_head.sgl;
> 260 for (map = vhost_iotlb_itree_first(iotlb, mr->start, mr->end - 1);
261 map; map = vhost_iotlb_itree_next(map, mr->start, mr->end - 1)) {
262 paend = map->addr + maplen(map, mr);
263 for (pa = map->addr; pa < paend; pa += sglen) {
264 pg = pfn_to_page(__phys_to_pfn(pa));
265 if (!sg) {
266 mlx5_vdpa_warn(mvdev, "sg null. start 0x%llx, end 0x%llx\n",
267 map->start, map->last + 1);
268 err = -ENOMEM;
269 goto err_map;
270 }
271 sg_set_page(sg, pg, sglen, 0);
272 sg = sg_next(sg);
273 if (!sg)
274 goto done;
275 }
276 }
277 done:
278 mr->log_size = log_entity_size;
279 mr->nsg = nsg;
280 ret = dma_map_sg_attrs(dma, mr->sg_head.sgl, mr->nsg, DMA_BIDIRECTIONAL, 0);
281 if (!ret)
282 goto err_map;
283
284 err = create_direct_mr(mvdev, mr);
285 if (err)
286 goto err_direct;
287
288 return 0;
289
290 err_direct:
291 dma_unmap_sg_attrs(dma, mr->sg_head.sgl, mr->nsg, DMA_BIDIRECTIONAL, 0);
292 err_map:
293 sg_free_table(&mr->sg_head);
294 return err;
295 }
296
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 29988 bytes --]
next reply other threads:[~2020-09-25 23:56 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-25 23:56 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2020-10-26 0:40 drivers/vdpa/mlx5/core/mr.c:244: undefined reference to `vhost_iotlb_itree_first' kernel test robot
2020-10-26 0:40 ` kernel test robot
2020-10-25 20:54 kernel test robot
2020-10-25 20:54 ` kernel test robot
2020-08-20 15:36 kernel test robot
2020-08-20 15:36 ` kernel test robot
2020-08-21 14:41 ` Michael S. Tsirkin
2020-08-21 14:41 ` Michael S. Tsirkin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202009260751.v0NKY1aK%lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.