[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a9fd7e22-f46a-fd47-26ee-44d2d36783fd@huawei.com>
Date: Mon, 16 Mar 2020 20:38:36 +0800
From: Zenghui Yu <yuzenghui@...wei.com>
To: Marc Zyngier <maz@...nel.org>
CC: KarimAllah Ahmed <karahmed@...zon.de>,
<linux-kernel@...r.kernel.org>, <kvmarm@...ts.cs.columbia.edu>,
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH] KVM: arm64: Use the correct timer for accessing CNT
Hi Marc,
On 2020/3/16 19:09, Marc Zyngier wrote:
> Hi Zenghui,
>
> On 2020-03-16 10:49, Zenghui Yu wrote:
>> Hi,
>>
>> On 2020/3/16 17:39, KarimAllah Ahmed wrote:
>>> Use the physical timer object when reading the physical timer counter
>>> instead of using the virtual timer object. This is only visible when
>>> reading it from user-space as kvm_arm_timer_get_reg() is only
>>> executed on
>>> the get register patch from user-space.
>>
>> s/patch/path/
>>
>> I think the physical counter hasn't yet been accessed by the current
>> userspace, wrong?
>
> I don't think userspace can access it, as the ONE_REG API only exposes
> the virtual
> timer so far, and userspace is much better off just reading the counter
> directly
> (it has access to the virtual counter, and the guarantee that cntvoff is
> 0 in this
> context).
Yeah, I see. The physical timer registers are all ignored in
walk_one_sys_reg() and won't be exposed.
>
> But as we move towards a situation where we can save/restore the
> physical timer
> just like the virtual one, we're going to use this path and hit this bug.
Thanks for the explanation.
Zenghui
Powered by blists - more mailing lists