From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50548) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yq046-0000lC-AA for qemu-devel@nongnu.org; Wed, 06 May 2015 10:12:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yq043-0005It-3h for qemu-devel@nongnu.org; Wed, 06 May 2015 10:12:46 -0400 Received: from mail-qc0-x236.google.com ([2607:f8b0:400d:c01::236]:35826) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yq043-0005Im-02 for qemu-devel@nongnu.org; Wed, 06 May 2015 10:12:43 -0400 Received: by qcbgu10 with SMTP id gu10so5088136qcb.2 for ; Wed, 06 May 2015 07:12:42 -0700 (PDT) Sender: Richard Henderson Message-ID: <554A2155.5070103@twiddle.net> Date: Wed, 06 May 2015 07:12:37 -0700 From: Richard Henderson MIME-Version: 1.0 References: <55490142.5030901@twiddle.net> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 6/7] monitor: "i": Add ARM specifics List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Crosthwaite Cc: Peter Maydell , "claudio.fontana" , Peter Crosthwaite , Alexander Graf , QEMU Developers , Peter Crosthwaite , "Edgar E. Iglesias" , Paolo Bonzini On 05/06/2015 12:06 AM, Peter Crosthwaite wrote: > Can > we rely on the env/CPUState always being up to date during > target_disas (which happens at translate time?) or will we need to go > field by field to make sure any env updates explicitly occur before > target_disas? I *think* so, but it's a near thing. The path goes tb_find_fast: cpu_get_tb_cpu_state, fill fill in flags for TB from current ENV state. tb_find_slow, tb_gen_code, using those same flags. There's the edge case of re-translation, but I'm going to assert that cpu mode changes ought not happen in that context. Doing otherwise means that the kernel has just switched modes, the translator has failed to end the TB, and the new code has faulted immediately. What I don't know is if we can, at the moment, canonicalize on TB flags. If the monitor were to use cpu_get_tb_cpu_state, I know it would work when using TCG, but I don't know if we keep all the same data up-to-date in KVM or XEN modes. r~