On Wed, Mar 11, 2015 at 06:15:47PM +0000, Peter Maydell wrote: > On 11 March 2015 at 18:10, Andrew Jones <drjo...@redhat.com> wrote: > > On Wed, Mar 11, 2015 at 05:49:39PM +0000, Peter Maydell wrote: > >> 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? > > Yes, please send a v4. > > I don't see what you mean about matching the spec, though. > The spec doesn't say anything about "ignore WXN if the > page isn't readable". It just straightforwardly says "if > the WXN bit is set then writable regions are treated as > XN", which is exactly what the code at the bottom of your > function does. >
My interpretation of SCTLR_EL1.WXN was just wrong. There is talks about "EL1&0", and I assumed it meant that when WXN is on, then both EL1 and EL0 should lose executability. However it can certainly be interpreted as applying to them both, but based on their respective access permissions, which is how I guess I should have interpreted it. v4 coming drew