From: Marc Zyngier <maz@kernel.org>
To: Oliver Upton <oliver.upton@linux.dev>
Cc: kvmarm@lists.linux.dev, linux-arm-kernel@lists.infradead.org,
Wei-Lin Chang <r09922117@csie.ntu.edu.tw>,
Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
Dmytro Terletskyi <Dmytro_Terletskyi@epam.com>,
Joey Gouly <joey.gouly@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Zenghui Yu <yuzenghui@huawei.com>
Subject: Re: [PATCH 3/3] KVM: arm64: timer: Consolidate NV configuration of virtual timers
Date: Fri, 31 Jan 2025 08:46:11 +0000 [thread overview]
Message-ID: <868qqrv0a4.wl-maz@kernel.org> (raw)
In-Reply-To: <Z5vx8NVN8lF6QuJz@linux.dev>
On Thu, 30 Jan 2025 21:41:04 +0000,
Oliver Upton <oliver.upton@linux.dev> wrote:
>
> > +void kvm_timer_vcpu_nv_init(struct kvm_vcpu *vcpu)
> > +{
> > + /*
> > + * A vcpu running at EL2 is in charge of the offset applied to
> > + * the virtual timer, so use the physical VM offset, and point
> > + * the vcpu offset to CNTVOFF_EL2.
> > + *
> > + * The virtual offset behaviour is "interesting", as it always
> > + * applies when HCR_EL2.E2H==0, but only when accessed from EL1 when
> > + * HCR_EL2.E2H==1. Apply it to the HV timer when E2H==0.
> > + */
>
> I'm definitely being pedantic, but all the talk of an HV timer when
> E2H==0 isn't sitting well with me. Since a programmable E2H has gone
> out the window there isn't such thing as an HV timer when E2H==0, as
> FEAT_VHE isn't implemented for the VM.
Ah, that's a very good point!
> And along those lines, accesses to CNTHV_*_EL2 registers should undef
> when FEAT_VHE isn't implemented for the VM but I don't think we have any
> enforcement of that.
Indeed. Let me fix this and add the required UNDEF behaviour.
Thanks,
M.
--
Without deviation from the norm, progress is not possible.
next prev parent reply other threads:[~2025-01-31 8:46 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-28 16:17 [PATCH 0/3] KVM/arm64: timer fixes for 6.14 Marc Zyngier
2025-01-28 16:17 ` [PATCH 1/3] KVM: arm64: timer: Always evaluate the need for a soft timer Marc Zyngier
2025-02-04 14:08 ` Dmytro Terletskyi
2025-01-28 16:17 ` [PATCH 2/3] KVM: arm64: timer: Correctly handle EL1 timer emulation when !FEAT_ECV Marc Zyngier
2025-02-04 14:10 ` Dmytro Terletskyi
2025-01-28 16:17 ` [PATCH 3/3] KVM: arm64: timer: Consolidate NV configuration of virtual timers Marc Zyngier
2025-01-30 21:41 ` Oliver Upton
2025-01-31 8:46 ` Marc Zyngier [this message]
2025-02-04 14:15 ` Dmytro Terletskyi
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=868qqrv0a4.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=Dmytro_Terletskyi@epam.com \
--cc=Volodymyr_Babchuk@epam.com \
--cc=joey.gouly@arm.com \
--cc=kvmarm@lists.linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=oliver.upton@linux.dev \
--cc=r09922117@csie.ntu.edu.tw \
--cc=suzuki.poulose@arm.com \
--cc=yuzenghui@huawei.com \
/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.