qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 3/3] target-arm: get_phys_addr_lpae: more xn


From: Andrew Jones
Subject: Re: [Qemu-devel] [PATCH v2 3/3] target-arm: get_phys_addr_lpae: more xn control
Date: Wed, 11 Mar 2015 19:10:12 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

On Wed, Mar 11, 2015 at 05:49:39PM +0000, Peter Maydell wrote:
> On 11 March 2015 at 17:42, Andrew Jones <address@hidden> wrote:
> > On Wed, Mar 11, 2015 at 05:02:00PM +0000, Peter Maydell wrote:
> 
> >> > +    if (is_aa64) {
> >> > +        switch (regime_el(env, mmu_idx)) {
> >> > +        case 1:
> >> > +            if (is_user && !user_rw) {
> >> > +                wxn = 0;
> >>
> >> I don't understand this. We ignore the WXN bit if this is
> >> a user access and the page is not readable ?
> >
> > Yup. If the page is not readable or writeable, AP[1]=0. I almost
> > submitted an errata to the ARM ARM when I saw this on the 2nd line
> > of table D4-32. I thought it must be a typo. However I tested it
> > on hardware, and it works this way. So at least the weirdness has
> > been implemented consistently...
> 
> Still confused. If the page isn't readable or writable
> then WXN isn't going to kick in anyway because WXN only
> affects writable pages. I don't see what the case is
> where this bit of code will make a difference.
>

Ah, that is true. Too bad I didn't read this before sending v3,
as I could have removed it, if you prefer. I had it here to
be explicit about the ignoring of wxn - matching the spec, but
you're right, it's useless code. Should I send a v4?

drew



reply via email to

[Prev in Thread] Current Thread [Next in Thread]