* [PATCH] KVM: arm64: Add memslot for ST_GPA_BASE in check_steal_time_uapi()
@ 2026-05-01 2:16 Jiakai Xu
2026-05-07 1:35 ` Mark Brown
0 siblings, 1 reply; 2+ messages in thread
From: Jiakai Xu @ 2026-05-01 2:16 UTC (permalink / raw)
To: kvm, linux-kernel, linux-kselftest
Cc: Andrew Jones, Anup Patel, Jiakai Xu, Paolo Bonzini, Shuah Khan,
Mark Brown, Jiakai Xu
The refactored check_steal_time_uapi() creates a temporary VM via
vm_create_with_one_vcpu(), whose default memslot0 only covers GPA
0..~2MB. Setting st_ipa to ST_GPA_BASE (1 << 30) causes
kvm_arm_pvtime_set_attr() to fail with EINVAL because gfn_to_hva()
cannot find a valid memslot at the target GFN.
Add a memslot at ST_GPA_BASE in the temporary VM, mirroring what
the main test already does.
Reported-by: Mark Brown <broonie@kernel.org>
Closes: https://lore.kernel.org/lkml/afM8WEe4gG5tL4fH@sirena.co.uk
Signed-off-by: Jiakai Xu <xujiakai2025@iscas.ac.cn>
Signed-off-by: Jiakai Xu <jiakaiPeanut@gmail.com>
Fixes: 40351ed924dd30 ("KVM: selftests: Refactor UAPI tests into dedicated function")
---
tools/testing/selftests/kvm/steal_time.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tools/testing/selftests/kvm/steal_time.c b/tools/testing/selftests/kvm/steal_time.c
index 7df2bc8eec02..2b01b466ddc1 100644
--- a/tools/testing/selftests/kvm/steal_time.c
+++ b/tools/testing/selftests/kvm/steal_time.c
@@ -213,6 +213,10 @@ static void check_steal_time_uapi(void)
vm = vm_create_with_one_vcpu(&vcpu, NULL);
+ /* ST_GPA_BASE needs a valid memslot for gfn_to_hva() to succeed */
+ vm_userspace_mem_region_add(vm, VM_MEM_SRC_ANONYMOUS, ST_GPA_BASE,
+ 1, 1, 0);
+
struct kvm_device_attr dev = {
.group = KVM_ARM_VCPU_PVTIME_CTRL,
.attr = KVM_ARM_VCPU_PVTIME_IPA,
--
2.34.1
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] KVM: arm64: Add memslot for ST_GPA_BASE in check_steal_time_uapi()
2026-05-01 2:16 [PATCH] KVM: arm64: Add memslot for ST_GPA_BASE in check_steal_time_uapi() Jiakai Xu
@ 2026-05-07 1:35 ` Mark Brown
0 siblings, 0 replies; 2+ messages in thread
From: Mark Brown @ 2026-05-07 1:35 UTC (permalink / raw)
To: Jiakai Xu
Cc: kvm, linux-kernel, linux-kselftest, Andrew Jones, Anup Patel,
Paolo Bonzini, Shuah Khan, Jiakai Xu
[-- Attachment #1: Type: text/plain, Size: 481 bytes --]
On Fri, May 01, 2026 at 02:16:39AM +0000, Jiakai Xu wrote:
> The refactored check_steal_time_uapi() creates a temporary VM via
> vm_create_with_one_vcpu(), whose default memslot0 only covers GPA
> 0..~2MB. Setting st_ipa to ST_GPA_BASE (1 << 30) causes
> kvm_arm_pvtime_set_attr() to fail with EINVAL because gfn_to_hva()
> cannot find a valid memslot at the target GFN.
Tested-by: Mark Brown <broonie@kernel.org>
It'd be good to get this merged, this is a mainline regression.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-05-07 1:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-01 2:16 [PATCH] KVM: arm64: Add memslot for ST_GPA_BASE in check_steal_time_uapi() Jiakai Xu
2026-05-07 1:35 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox