tree:
https://git.kernel.org/pub/scm/linux/kernel/git/colyli/linux-bcache.git zoned
head: 9560b14e9901073c5fca5e5e6c531dbd950b2b04
commit: dbdcbd380a1847351fd02972a53ef07c1dd55065 [1/3] bcache: export bcache zone
information for zoned backing device
config: i386-randconfig-a005-20200526 (attached as .config)
compiler: gcc-6 (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
reproduce (this is a W=1 build):
git checkout dbdcbd380a1847351fd02972a53ef07c1dd55065
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
ld: drivers/md/bcache/super.o: in function `bch_cached_dev_zone_init':
> drivers/md/bcache/super.c:1392: undefined reference to
`__udivdi3'
vim +1392 drivers/md/bcache/super.c
1357
1358 /*
1359 * Initialize zone information for the bcache device, this function
1360 * assumes the bcache device has a cached device (dc != NULL), and
1361 * the cached device is zoned device (bdev_is_zoned(dc->bdev) == true).
1362 *
1363 * The following zone information of the bcache device will be set,
1364 * - zoned mode, same as the mode of zoned backing device
1365 * - zone size in sectors, same as the zoned backing device
1366 * - zones number, it is zones number of zoned backing device minus the
1367 * reserved zones for bcache super blocks.
1368 */
1369 static int bch_cached_dev_zone_init(struct cached_dev *dc)
1370 {
1371 struct request_queue *d_q, *b_q;
1372 enum blk_zoned_model mode;
1373
1374 if (!bdev_is_zoned(dc->bdev))
1375 return 0;
1376
1377 /* queue of bcache device */
1378 d_q = dc->disk.disk->queue;
1379 /* queue of backing device */
1380 b_q = bdev_get_queue(dc->bdev);
1381
1382 mode = blk_queue_zoned_model(b_q);
1383 if (mode != BLK_ZONED_NONE) {
1384 d_q->limits.zoned = mode;
1385 blk_queue_chunk_sectors(d_q, b_q->limits.chunk_sectors);
1386 /*
1387 * (dc->sb.data_offset / q->limits.chunk_sectors) is the
1388 * zones number reserved for bcache super block. By default
1389 * it is set to 1 by bcache-tools.
1390 */
1391 d_q->nr_zones = b_q->nr_zones -
1392 (dc->sb.data_offset / d_q->limits.chunk_sectors);
1393 }
1394
1395 return 0;
1396 }
1397
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org