Hi Nitesh, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on axboe-block/for-next] [also build test WARNING on linus/master v5.17-rc3 next-20220209] [cannot apply to device-mapper-dm/for-next] [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/Nitesh-Shetty/block-make-bio_map_kern-non-static/20220207-231407 base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next config: arm64-randconfig-s032-20220207 (https://download.01.org/0day-ci/archive/20220210/202202101447.DEcXWmHU-lkp@xxxxxxxxx/config) compiler: aarch64-linux-gcc (GCC) 11.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.4-dirty # https://github.com/0day-ci/linux/commit/22cbc1d3df11aaadd02b27ce5dcb702f9a8f4272 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Nitesh-Shetty/block-make-bio_map_kern-non-static/20220207-231407 git checkout 22cbc1d3df11aaadd02b27ce5dcb702f9a8f4272 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/nvme/host/ drivers/nvme/target/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> sparse warnings: (new ones prefixed by >>) >> drivers/nvme/host/core.c:1793:42: sparse: sparse: cast to restricted __le64 drivers/nvme/host/core.c:1793:42: sparse: sparse: cast from restricted __le32 >> drivers/nvme/host/core.c:1795:48: sparse: sparse: cast to restricted __le32 >> drivers/nvme/host/core.c:1795:48: sparse: sparse: cast from restricted __le16 >> drivers/nvme/host/core.c:903:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] dspec @@ got restricted __le32 [usertype] @@ drivers/nvme/host/core.c:903:26: sparse: expected restricted __le16 [usertype] dspec drivers/nvme/host/core.c:903:26: sparse: got restricted __le32 [usertype] vim +1793 drivers/nvme/host/core.c 1774 1775 static void nvme_config_copy(struct gendisk *disk, struct nvme_ns *ns, 1776 struct nvme_id_ns *id) 1777 { 1778 struct nvme_ctrl *ctrl = ns->ctrl; 1779 struct request_queue *queue = disk->queue; 1780 1781 if (!(ctrl->oncs & NVME_CTRL_ONCS_COPY)) { 1782 queue->limits.copy_offload = 0; 1783 queue->limits.max_copy_sectors = 0; 1784 queue->limits.max_copy_range_sectors = 0; 1785 queue->limits.max_copy_nr_ranges = 0; 1786 blk_queue_flag_clear(QUEUE_FLAG_COPY, queue); 1787 return; 1788 } 1789 1790 /* setting copy limits */ 1791 blk_queue_flag_test_and_set(QUEUE_FLAG_COPY, queue); 1792 queue->limits.copy_offload = 0; > 1793 queue->limits.max_copy_sectors = le64_to_cpu(id->mcl) * 1794 (1 << (ns->lba_shift - 9)); > 1795 queue->limits.max_copy_range_sectors = le32_to_cpu(id->mssrl) * 1796 (1 << (ns->lba_shift - 9)); 1797 queue->limits.max_copy_nr_ranges = id->msrc + 1; 1798 } 1799 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx