From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753922AbdA3RnZ (ORCPT ); Mon, 30 Jan 2017 12:43:25 -0500 Received: from foss.arm.com ([217.140.101.70]:48210 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752568AbdA3RnX (ORCPT ); Mon, 30 Jan 2017 12:43:23 -0500 Subject: Re: [RFC v2 10/10] KVM: arm/arm64: Emulate the EL1 phys timer register access To: Peter Maydell , Jintack Lim References: <1485479100-4966-1-git-send-email-jintack@cs.columbia.edu> <1485479100-4966-11-git-send-email-jintack@cs.columbia.edu> <86lgtt98gs.fsf@arm.com> Cc: KVM General , Catalin Marinas , Will Deacon , linux@armlinux.org.uk, lkml - Kernel Mailing List , arm-mail-list , Andre Przywara , Paolo Bonzini , "kvmarm@lists.cs.columbia.edu" From: Marc Zyngier Organization: ARM Ltd Message-ID: Date: Mon, 30 Jan 2017 17:35:28 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 30/01/17 17:26, Peter Maydell wrote: > On 30 January 2017 at 17:08, Jintack Lim wrote: >> On Sun, Jan 29, 2017 at 10:44 AM, Marc Zyngier wrote: >>> Shouldn't we take the ENABLE bit into account? The ARMv8 ARM version I >>> have at hand (version h) seems to indicate that we should, but we should >>> check with the latest and greatest... >> >> Thanks! I was not clear about this. I have ARM ARM version k, and it >> says that 'When the value of the ENABLE bit is 0, the ISTATUS field is >> UNKNOWN.' So I thought the istatus value doesn't matter if ENABLE is >> 0, and just set istatus bit regardless of ENABLE bit. If this is not >> what the manual meant, then I'm happy to fix this. > > It looks like the spec has been relaxed between the doc version > that Marc was looking at and the current one. So it's OK for > an implementation to either (a) set ISTATUS to 0 if ENABLE > is 0, or (b) do what you've done and set ISTATUS according > to the timer comparison whether ENABLE is clear or not > (or even (c) set ISTATUS to a random value if ENABLE is clear, > and other less likely choices). > I think we should add a comment to note that it's architecturally > UNKNOWN and we've made a choice for our implementation convenience. In that case, the proposed implementation is perfectly fine. I'll retire the old ARMv8 ARM from my laptop (funnily enough, I didn't fancy downloading version k while on the train and having my phone as my link to the outside world... ;-). Thanks, M. -- Jazz is not dead. It just smells funny...