From: Suzuki K Poulose <suzuki.poulose@arm.com>
To: Fuad Tabba <fuad.tabba@linux.dev>, kvm@vger.kernel.org
Cc: kvmarm@lists.linux.dev, Will Deacon <will@kernel.org>,
Julien Thierry <julien.thierry.kdev@gmail.com>,
Alexandru Elisei <alexandru.elisei@arm.com>,
Andre Przywara <andre.przywara@arm.com>,
Oliver Upton <oliver.upton@linux.dev>,
Marc Zyngier <maz@kernel.org>, Fuad Tabba <tabba@google.com>
Subject: Re: [PATCH kvmtool 5/5] arm64: Query counter-offset support on the VM fd
Date: Sat, 12 Sep 2026 08:29:59 +0100 [thread overview]
Message-ID: <f0cf2d64-c7c3-49ec-b3c8-bd1f30270411@arm.com> (raw)
In-Reply-To: <20260831192406.1341841-6-fuad.tabba@linux.dev>
On 31/08/2026 20:24, Fuad Tabba wrote:
> kvm__arch_set_counter_offset() probes KVM_CAP_COUNTER_OFFSET with
> kvm__supports_extension(), which issues KVM_CHECK_EXTENSION on the
> global /dev/kvm fd. That reports the host's raw capabilities, unaware of
> any per-VM restrictions.
>
> pKVM does not offer the counter offset to a protected VM, and reflects
> that on the VM fd alone. kvmtool's own check passes, and the
> KVM_ARM_SET_COUNTER_OFFSET that follows is refused by
> commit b12b3b04f6ba ("KVM: arm64: Check whether a VM IOCTL is allowed
> in pKVM"):
>
> KVM_ARM_SET_COUNTER_OFFSET: Invalid argument
>
> Query it on the VM fd via kvm__supports_vm_extension(), so
> --counter-offset on a protected VM fails with kvmtool's own message:
>
> Fatal: No support for global counter offset
>
> Signed-off-by: Fuad Tabba <fuad.tabba@linux.dev>
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> ---
> arm64/kvm.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arm64/kvm.c b/arm64/kvm.c
> index 36b3284..0bb3535 100644
> --- a/arm64/kvm.c
> +++ b/arm64/kvm.c
> @@ -155,7 +155,7 @@ static void kvm__arch_set_counter_offset(struct kvm *kvm)
> if (!kvm->cfg.arch.counter_offset)
> return;
>
> - if (!kvm__supports_extension(kvm, KVM_CAP_COUNTER_OFFSET))
> + if (!kvm__supports_vm_extension(kvm, KVM_CAP_COUNTER_OFFSET))
> die("No support for global counter offset");
>
> if (ioctl(kvm->vm_fd, KVM_ARM_SET_COUNTER_OFFSET, &offset))
prev parent reply other threads:[~2026-09-12 7:30 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-31 19:24 [PATCH kvmtool 0/5] Fix diagnostics and capability probes for protected VMs Fuad Tabba
2026-08-31 19:24 ` [PATCH kvmtool 1/5] arm64: Do not abort on register-dump failures Fuad Tabba
2026-09-12 7:33 ` Suzuki K Poulose
2026-09-12 13:54 ` Fuad Tabba
2026-09-12 14:02 ` Fuad Tabba
2026-09-12 19:36 ` Suzuki K Poulose
2026-08-31 19:24 ` [PATCH kvmtool 2/5] kvm: Bound-check the exit-reason string lookup Fuad Tabba
2026-09-12 7:35 ` Suzuki K Poulose
2026-08-31 19:24 ` [PATCH kvmtool 3/5] kvm: Name every exit reason the UAPI header defines Fuad Tabba
2026-09-12 7:35 ` Suzuki K Poulose
2026-08-31 19:24 ` [PATCH kvmtool 4/5] arm64: Query steal-time support on the VM fd Fuad Tabba
2026-09-12 7:28 ` Suzuki K Poulose
2026-08-31 19:24 ` [PATCH kvmtool 5/5] arm64: Query counter-offset " Fuad Tabba
2026-09-12 7:29 ` Suzuki K Poulose [this message]
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=f0cf2d64-c7c3-49ec-b3c8-bd1f30270411@arm.com \
--to=suzuki.poulose@arm.com \
--cc=alexandru.elisei@arm.com \
--cc=andre.przywara@arm.com \
--cc=fuad.tabba@linux.dev \
--cc=julien.thierry.kdev@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=maz@kernel.org \
--cc=oliver.upton@linux.dev \
--cc=tabba@google.com \
--cc=will@kernel.org \
/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.