On 8 June 2014 14:53, Ian Campbell <i...@hellion.org.uk> wrote:
> In v8 page tables bit 54 in the PTE is UXN in the EL0/EL1 translation regimes
> and XN elsewhere. In v7 the bit is always XN. Since we only emulate EL0/EL1 we
> can just treat this bit as UXN whenever we are in v8 mode.
>
> Also correctly extract the upper attributes from the PTE entry, the v8 version
> tried to avoid extracting the CONTIG bit and ended up with the upper bits 
> being
> off-by-one. Instead behave the same as v7 and extract (but ignore) the CONTIG
> bit.
>
> This fixes "Bad mode in Synchronous Abort handler detected, code 0x8400000f"
> seen when modprobing modules under Linux.
>
> Signed-off-by: Ian Campbell <i...@hellion.org.uk>
> Cc: Peter Maydell <peter.mayd...@linaro.org>
> Cc: Claudio Fontana <claudio.font...@huawei.com>
> Cc: Rob Herring <robherri...@gmail.com>

Thanks, applied to target-arm.next.
To those interested in EL2/EL3 support: what's the
plan for telling the get_phys_addr() functions which
translation regime they should be operating in?

(since that is what indicates whether this bit is UXN or XN,
as well as having various other effects).

thanks
-- PMM

Reply via email to