From: kernel test robot <lkp@intel.com>
To: Sascha Bischoff <Sascha.Bischoff@arm.com>
Cc: oe-kbuild-all@lists.linux.dev, Marc Zyngier <maz@kernel.org>
Subject: [linux-next:master 5557/8449] arch/arm64/kvm/vgic/vgic-v5-tables.c:1473:23: sparse: sparse: incorrect type in initializer (different base types)
Date: Sat, 19 Sep 2026 12:49:59 +0800 [thread overview]
Message-ID: <202609191215.to1MBYak-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 3f2425f5b5bbbdd991ca9cdfd5502e68d8895998
commit: f9846846c4df6818d323f4a86c168bd2d63c6cdb [5557/8449] KVM: arm64: gic-v5: Implement save/restore mechanisms for ISTs
config: arm64-randconfig-r1307-20260918 (https://download.01.org/0day-ci/archive/20260919/202609191215.to1MBYak-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 7252edd9aa82ef1c570ff6694ef7f4763a8a5d2f)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260919/202609191215.to1MBYak-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609191215.to1MBYak-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
arch/arm64/kvm/vgic/vgic-v5-tables.c:1069:34: sparse: sparse: Using plain integer as NULL pointer
arch/arm64/kvm/vgic/vgic-v5-tables.c:537:31: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *vmd_base @@ got void *[assigned] vmd @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:537:31: sparse: expected void [noderef] __iomem *vmd_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:537:31: sparse: got void *[assigned] vmd
arch/arm64/kvm/vgic/vgic-v5-tables.c:578:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected restricted __le64 [noderef] [usertype] __iomem *vpet_base @@ got restricted __le64 [usertype] *[assigned] vpet @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:578:24: sparse: expected restricted __le64 [noderef] [usertype] __iomem *vpet_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:578:24: sparse: got restricted __le64 [usertype] *[assigned] vpet
arch/arm64/kvm/vgic/vgic-v5-tables.c:685:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *objp @@ got restricted __le64 [noderef] [usertype] __iomem *vpet_base @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:685:18: sparse: expected void const *objp
arch/arm64/kvm/vgic/vgic-v5-tables.c:685:18: sparse: got restricted __le64 [noderef] [usertype] __iomem *vpet_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:686:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *objp @@ got void [noderef] __iomem *vmd_base @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:686:18: sparse: expected void const *objp
arch/arm64/kvm/vgic/vgic-v5-tables.c:686:18: sparse: got void [noderef] __iomem *vmd_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:742:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected restricted __le64 [usertype] *vpet_base @@ got restricted __le64 [noderef] [usertype] __iomem *vpet_base @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:742:19: sparse: expected restricted __le64 [usertype] *vpet_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:742:19: sparse: got restricted __le64 [noderef] [usertype] __iomem *vpet_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:754:13: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le64 [usertype] tmp @@ got unsigned long long @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:754:13: sparse: expected restricted __le64 [usertype] tmp
arch/arm64/kvm/vgic/vgic-v5-tables.c:754:13: sparse: got unsigned long long
arch/arm64/kvm/vgic/vgic-v5-tables.c:757:17: sparse: sparse: cast from restricted __le64
arch/arm64/kvm/vgic/vgic-v5-tables.c:790:19: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected restricted __le64 [usertype] *vpet_base @@ got restricted __le64 [noderef] [usertype] __iomem *vpet_base @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:790:19: sparse: expected restricted __le64 [usertype] *vpet_base
arch/arm64/kvm/vgic/vgic-v5-tables.c:790:19: sparse: got restricted __le64 [noderef] [usertype] __iomem *vpet_base
>> arch/arm64/kvm/vgic/vgic-v5-tables.c:1473:23: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int __rpu_val @@ got restricted __le32 [assigned] [usertype] h_iste @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:1473:23: sparse: expected unsigned int __rpu_val
arch/arm64/kvm/vgic/vgic-v5-tables.c:1473:23: sparse: got restricted __le32 [assigned] [usertype] h_iste
arch/arm64/kvm/vgic/vgic-v5-tables.c:1525:31: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int __rpu_val @@ got restricted __le32 [assigned] [usertype] h_iste @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:1525:31: sparse: expected unsigned int __rpu_val
arch/arm64/kvm/vgic/vgic-v5-tables.c:1525:31: sparse: got restricted __le32 [assigned] [usertype] h_iste
>> arch/arm64/kvm/vgic/vgic-v5-tables.c:1722:23: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 __rgu_val @@ got unsigned int @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:1722:23: sparse: expected restricted __le32 __rgu_val
arch/arm64/kvm/vgic/vgic-v5-tables.c:1722:23: sparse: got unsigned int
arch/arm64/kvm/vgic/vgic-v5-tables.c:1777:31: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 __rgu_val @@ got unsigned int @@
arch/arm64/kvm/vgic/vgic-v5-tables.c:1777:31: sparse: expected restricted __le32 __rgu_val
arch/arm64/kvm/vgic/vgic-v5-tables.c:1777:31: sparse: got unsigned int
vim +1473 arch/arm64/kvm/vgic/vgic-v5-tables.c
1452
1453 /*
1454 * Save a linear host IST to userspace memory.
1455 *
1456 * Only the architected 32-bit ISTE state is stored. Metadata is skipped when
1457 * striding through the host IST.
1458 */
1459 static int vgic_v5_save_linear_ist(const struct vgic_v5_ist_desc *ist,
1460 u32 __user *uaddr, size_t nr_entries)
1461 {
1462 __le32 h_iste;
1463 size_t index;
1464 int ret;
1465
1466 vgic_v5_clean_inval(ist->base,
1467 GICV5_LINEAR_IST_SIZE(ist->id_bits, ist->istsz));
1468
1469 for (index = 0; index < nr_entries; index++) {
1470 __le32 *h_iste_addr = ist->base + index * ist->iste_size;
1471
1472 h_iste = READ_ONCE(*h_iste_addr);
> 1473 ret = put_user(h_iste, uaddr);
1474 if (ret)
1475 return ret;
1476
1477 uaddr++;
1478 }
1479
1480 return 0;
1481 }
1482
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-09-19 4:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202609191215.to1MBYak-lkp@intel.com \
--to=lkp@intel.com \
--cc=Sascha.Bischoff@arm.com \
--cc=maz@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.