Hi Kanchan, Thank you for the patch! Yet something to improve: [auto build test ERROR on axboe-block/for-next] [also build test ERROR on linus/master] [cannot apply to hch-configfs/for-next v5.19] [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/Kanchan-Joshi/fs-add-file_operations-uring_cmd_iopoll/20220806-004320 base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20220806/202208060547.zSVYtFTN-lkp@xxxxxxxxx/config) compiler: gcc-11 (Debian 11.3.0-3) 11.3.0 reproduce (this is a W=1 build): # https://github.com/intel-lab-lkp/linux/commit/0964795577fbf09d8b315269504b5e87b5ac492b git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Kanchan-Joshi/fs-add-file_operations-uring_cmd_iopoll/20220806-004320 git checkout 0964795577fbf09d8b315269504b5e87b5ac492b # save the config file mkdir build_dir && cp config build_dir/.config make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): In file included from <command-line>: drivers/nvme/host/ioctl.c: In function 'nvme_ns_head_chr_uring_cmd_iopoll': >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/linux/compiler_types.h:334:23: note: in definition of macro '__compiletime_assert' 334 | if (!(condition)) \ | ^~~~~~~~~ include/linux/compiler_types.h:354:9: note: in expansion of macro '_compiletime_assert' 354 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/linux/compiler_types.h:334:23: note: in definition of macro '__compiletime_assert' 334 | if (!(condition)) \ | ^~~~~~~~~ include/linux/compiler_types.h:354:9: note: in expansion of macro '_compiletime_assert' 354 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/linux/compiler_types.h:334:23: note: in definition of macro '__compiletime_assert' 334 | if (!(condition)) \ | ^~~~~~~~~ include/linux/compiler_types.h:354:9: note: in expansion of macro '_compiletime_assert' 354 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/linux/compiler_types.h:334:23: note: in definition of macro '__compiletime_assert' 334 | if (!(condition)) \ | ^~~~~~~~~ include/linux/compiler_types.h:354:9: note: in expansion of macro '_compiletime_assert' 354 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/linux/compiler_types.h:334:23: note: in definition of macro '__compiletime_assert' 334 | if (!(condition)) \ | ^~~~~~~~~ include/linux/compiler_types.h:354:9: note: in expansion of macro '_compiletime_assert' 354 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/linux/compiler_types.h:310:27: note: in definition of macro '__unqual_scalar_typeof' 310 | _Generic((x), \ | ^ include/asm-generic/rwonce.h:50:9: note: in expansion of macro '__READ_ONCE' 50 | __READ_ONCE(x); \ | ^~~~~~~~~~~ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ In file included from ./arch/x86/include/generated/asm/rwonce.h:1, from include/linux/compiler.h:248, from include/linux/ptrace.h:5, from drivers/nvme/host/ioctl.c:6: >> drivers/nvme/host/ioctl.c:737:39: error: 'struct io_uring_cmd' has no member named 'private' 737 | bio = READ_ONCE(ioucmd->private); | ^~ include/asm-generic/rwonce.h:44:73: note: in definition of macro '__READ_ONCE' 44 | #define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x)) | ^ drivers/nvme/host/ioctl.c:737:23: note: in expansion of macro 'READ_ONCE' 737 | bio = READ_ONCE(ioucmd->private); | ^~~~~~~~~ vim +737 drivers/nvme/host/ioctl.c 724 725 int nvme_ns_head_chr_uring_cmd_iopoll(struct io_uring_cmd *ioucmd) 726 { 727 struct cdev *cdev = file_inode(ioucmd->file)->i_cdev; 728 struct nvme_ns_head *head = container_of(cdev, struct nvme_ns_head, cdev); 729 int srcu_idx = srcu_read_lock(&head->srcu); 730 struct nvme_ns *ns = nvme_find_path(head); 731 struct bio *bio; 732 int ret = 0; 733 struct request_queue *q; 734 735 if (ns) { 736 rcu_read_lock(); > 737 bio = READ_ONCE(ioucmd->private); 738 q = ns->queue; 739 if (test_bit(QUEUE_FLAG_POLL, &q->queue_flags) && bio 740 && bio->bi_bdev) 741 ret = bio_poll(bio, 0, 0); 742 rcu_read_unlock(); 743 } 744 srcu_read_unlock(&head->srcu, srcu_idx); 745 return ret; 746 } 747 #endif /* CONFIG_NVME_MULTIPATH */ 748 -- 0-DAY CI Kernel Test Service https://01.org/lkp