The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Mark Brown <broonie@kernel.org>
To: Paolo Bonzini <pbonzini@redhat.com>,
	Anup Patel <anup@brainfault.org>,
	Atish Patra <atish.patra@linux.dev>,
	Marc Zyngier <maz@kernel.org>, Oliver Upton <oupton@kernel.org>
Cc: Jiakai Xu <xujiakai2025@iscas.ac.cn>,
	kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org,
	Andrew Jones <andrew.jones@oss.qualcomm.com>,
	Anup Patel <anup@brainfault.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Shuah Khan <shuah@kernel.org>, Jiakai Xu <jiakaiPeanut@gmail.com>,
	kvm-riscv@lists.infradead.org,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [PATCH] KVM: arm64: Add memslot for ST_GPA_BASE in check_steal_time_uapi()
Date: Tue, 12 May 2026 10:59:56 +0900	[thread overview]
Message-ID: <agKJnKOcvbPZ5cgA@sirena.co.uk> (raw)
In-Reply-To: <20260501021639.2563219-1-xujiakai2025@iscas.ac.cn>

[-- Attachment #1: Type: text/plain, Size: 1808 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.
> 
> Add a memslot at ST_GPA_BASE in the temporary VM, mirroring what
> the main test already does.

The regression in Linus' tree that is fixed by this patch is still
present today.  Adding Marc and Oliver since this bug manifests on
arm64, adding Anup and Atish since the patch introducing the regression
was merged via RISC-V.

> 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
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  parent reply	other threads:[~2026-05-12  1:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260501021639.2563219-1-xujiakai2025@iscas.ac.cn>
2026-05-07  1:35 ` [PATCH] KVM: arm64: Add memslot for ST_GPA_BASE in check_steal_time_uapi() Mark Brown
2026-05-12  1:59 ` Mark Brown [this message]
2026-05-12  2:49   ` Zenghui Yu
2026-05-12 10:39     ` Mark Brown

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=agKJnKOcvbPZ5cgA@sirena.co.uk \
    --to=broonie@kernel.org \
    --cc=andrew.jones@oss.qualcomm.com \
    --cc=anup@brainfault.org \
    --cc=atish.patra@linux.dev \
    --cc=jiakaiPeanut@gmail.com \
    --cc=kvm-riscv@lists.infradead.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=oupton@kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=shuah@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=xujiakai2025@iscas.ac.cn \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox