Hi Xuan, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on horms-ipvs/master] [also build test WARNING on linus/master v5.15-rc7] [cannot apply to mst-vhost/linux-next next-20211027] [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/Xuan-Zhuo/virtio-support-cache-indirect-desc/20211027-142025 base: https://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs.git master config: i386-randconfig-s002-20211027 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.4-dirty # https://github.com/0day-ci/linux/commit/bb65ceda850ed4592d8a940e01926d5e3d33ae92 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Xuan-Zhuo/virtio-support-cache-indirect-desc/20211027-142025 git checkout bb65ceda850ed4592d8a940e01926d5e3d33ae92 # save the attached .config to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=i386 SHELL=/bin/bash drivers/virtio/ 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/virtio/virtio_ring.c:438:26: sparse: sparse: cast from restricted __virtio64 drivers/virtio/virtio_ring.c:447:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __virtio64 [usertype] addr @@ got unsigned long long [usertype] @@ drivers/virtio/virtio_ring.c:447:28: sparse: expected restricted __virtio64 [usertype] addr drivers/virtio/virtio_ring.c:447:28: sparse: got unsigned long long [usertype] drivers/virtio/virtio_ring.c:464:49: sparse: sparse: cast from restricted __virtio64 >> drivers/virtio/virtio_ring.c:1083:26: sparse: sparse: cast from restricted __le64 >> drivers/virtio/virtio_ring.c:1092:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le64 [usertype] addr @@ got unsigned long long [usertype] @@ drivers/virtio/virtio_ring.c:1092:28: sparse: expected restricted __le64 [usertype] addr drivers/virtio/virtio_ring.c:1092:28: sparse: got unsigned long long [usertype] drivers/virtio/virtio_ring.c:1109:49: sparse: sparse: cast from restricted __le64 vim +1083 drivers/virtio/virtio_ring.c 1076 1077 static void desc_cache_chain_free_packed(void *chain) 1078 { 1079 struct vring_packed_desc *desc; 1080 1081 while (chain) { 1082 desc = chain; > 1083 chain = (void *)desc->addr; 1084 kfree(desc); 1085 } 1086 } 1087 1088 static void desc_cache_put_packed(struct vring_virtqueue *vq, 1089 struct vring_packed_desc *desc, int n) 1090 { 1091 if (vq->use_desc_cache && n <= VIRT_QUEUE_CACHE_DESC_NUM) { > 1092 desc->addr = (u64)vq->desc_cache_chain; 1093 vq->desc_cache_chain = desc; 1094 } else { 1095 kfree(desc); 1096 } 1097 } 1098 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization