From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:32961) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wnq5S-00037P-2H for qemu-devel@nongnu.org; Fri, 23 May 2014 10:04:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wnq5J-0001W5-M0 for qemu-devel@nongnu.org; Fri, 23 May 2014 10:04:42 -0400 Received: from mail-la0-f47.google.com ([209.85.215.47]:56189) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wnq5J-0001Vr-FC for qemu-devel@nongnu.org; Fri, 23 May 2014 10:04:33 -0400 Received: by mail-la0-f47.google.com with SMTP id pn19so4260441lab.20 for ; Fri, 23 May 2014 07:04:32 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <1400805738-11889-7-git-send-email-edgar.iglesias@gmail.com> References: <1400805738-11889-1-git-send-email-edgar.iglesias@gmail.com> <1400805738-11889-7-git-send-email-edgar.iglesias@gmail.com> From: Peter Maydell Date: Fri, 23 May 2014 15:04:12 +0100 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: Re: [Qemu-devel] [PATCH v4 06/21] target-arm: Use a 1:1 mapping between EL and MMU index List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Edgar E. Iglesias" Cc: Rob Herring , Peter Crosthwaite , Fabian Aggeler , QEMU Developers , Alexander Graf , John Williams , =?UTF-8?B?QWxleCBCZW5uw6ll?= , Christoffer Dall , Richard Henderson On 23 May 2014 01:42, Edgar E. Iglesias wrote: > From: "Edgar E. Iglesias" > > Signed-off-by: Edgar E. Iglesias > --- > target-arm/cpu.h | 8 ++++---- > target-arm/translate.h | 6 +----- > 2 files changed, 5 insertions(+), 9 deletions(-) > > diff --git a/target-arm/cpu.h b/target-arm/cpu.h > index 11b7a0b..62d85ff 100644 > --- a/target-arm/cpu.h > +++ b/target-arm/cpu.h > @@ -1080,12 +1080,12 @@ static inline CPUARMState *cpu_init(const char *cpu_model) > #define cpu_list arm_cpu_list > > /* MMU modes definitions */ > -#define MMU_MODE0_SUFFIX _kernel > -#define MMU_MODE1_SUFFIX _user > -#define MMU_USER_IDX 1 > +#define MMU_MODE0_SUFFIX _user > +#define MMU_MODE1_SUFFIX _kernel > +#define MMU_USER_IDX 0 > static inline int cpu_mmu_index (CPUARMState *env) > { > - return arm_current_pl(env) ? 0 : 1; > + return arm_current_pl(env); > } > > #include "exec/cpu-all.h" > diff --git a/target-arm/translate.h b/target-arm/translate.h > index 8737af0..31a0104 100644 > --- a/target-arm/translate.h > +++ b/target-arm/translate.h > @@ -54,11 +54,7 @@ static inline int arm_dc_feature(DisasContext *dc, int feature) > > static inline int get_mem_index(DisasContext *s) > { > -#ifdef CONFIG_USER_ONLY > - return 1; > -#else > - return s->user; > -#endif > + return s->current_pl; > } > > /* target-specific extra values for is_jmp */ > -- > 1.8.3.2 I have a 32-bit test image which fails to boot (kernel gets a Data Abort fairly early in bootup) after this commit is applied. I think we must have missed something... thanks -- PMM