tree:
git://git.infradead.org/users/hch/block.git bdev-lookup
head: ad9fbb45818932ecfd28600994ff2c88ccd4b3e9
commit: ad9fbb45818932ecfd28600994ff2c88ccd4b3e9 [26/26] block: remove i_bdev
config: i386-randconfig-a012-20201117 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
git remote add hch-block
git://git.infradead.org/users/hch/block.git
git fetch --no-tags hch-block bdev-lookup
git checkout ad9fbb45818932ecfd28600994ff2c88ccd4b3e9
# 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: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
ld: fs/io_uring.o: in function `io_file_supports_async':
> fs/io_uring.c:2736: undefined reference to `I_BDEV'
vim +2736 fs/io_uring.c
2725
2726 /*
2727 * If we tracked the file through the SCM inflight mechanism, we could support
2728 * any file. For now, just ensure that anything potentially problematic is done
2729 * inline.
2730 */
2731 static bool io_file_supports_async(struct file *file, int rw)
2732 {
2733 umode_t mode = file_inode(file)->i_mode;
2734
2735 if (S_ISBLK(mode)) {
2736 if (io_bdev_nowait(I_BDEV(file->f_mapping->host)))
2737 return true;
2738 return false;
2739 }
2740 if (S_ISCHR(mode) || S_ISSOCK(mode))
2741 return true;
2742 if (S_ISREG(mode)) {
2743 if (io_bdev_nowait(file->f_inode->i_sb->s_bdev) &&
2744 file->f_op != &io_uring_fops)
2745 return true;
2746 return false;
2747 }
2748
2749 /* any ->read/write should understand O_NONBLOCK */
2750 if (file->f_flags & O_NONBLOCK)
2751 return true;
2752
2753 if (!(file->f_mode & FMODE_NOWAIT))
2754 return false;
2755
2756 if (rw == READ)
2757 return file->f_op->read_iter != NULL;
2758
2759 return file->f_op->write_iter != NULL;
2760 }
2761
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org