lkml.org 
[lkml]   [2016]   [Sep]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH -next] openrisc: Define __ro_after_init to avoid crash
    Date
    openrisc qemu tests fail with the following crash.

    Unable to handle kernel access at virtual address 0xc0300c34

    Oops#: 0001
    CPU #: 0
    PC: c016c710 SR: 0000ae67 SP: c1017e04
    GPR00: 00000000 GPR01: c1017e04 GPR02: c0300c34 GPR03: c0300c34
    GPR04: 00000000 GPR05: c0300cb0 GPR06: c0300c34 GPR07: 000000ff
    GPR08: c107f074 GPR09: c0199ef4 GPR10: c1016000 GPR11: 00000000
    GPR12: 00000000 GPR13: c107f044 GPR14: c0473774 GPR15: 07ce0000
    GPR16: 00000000 GPR17: c107ed8a GPR18: 00009600 GPR19: c107f044
    GPR20: c107ee74 GPR21: 00000003 GPR22: c0473770 GPR23: 00000033
    GPR24: 000000bf GPR25: 00000019 GPR26: c046400c GPR27: 00000001
    GPR28: c0464028 GPR29: c1018000 GPR30: 00000006 GPR31: ccf37483
    RES: 00000000 oGPR11: ffffffff
    Process swapper (pid: 1, stackpage=c1001960)

    Stack: Stack dump [0xc1017cf8]:
    sp + 00: 0xc1017e04
    sp + 04: 0xc0300c34
    sp + 08: 0xc0300c34
    sp + 12: 0x00000000
    ...

    Bisect points to commit d2ec3f77de8e ("pty: make ptmx file ops read-only
    after init"). Fix by defining __ro_after_init for the openrisc
    architecture, similar to parisc.

    Fixes: d2ec3f77de8e ("pty: make ptmx file ops read-only after init")
    Cc: Kees Cook <keescook@chromium.org>
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    ---
    arch/openrisc/include/asm/cache.h | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/arch/openrisc/include/asm/cache.h b/arch/openrisc/include/asm/cache.h
    index 4ce7a01a252d..5f55da9cbfd5 100644
    --- a/arch/openrisc/include/asm/cache.h
    +++ b/arch/openrisc/include/asm/cache.h
    @@ -23,6 +23,8 @@
    * they shouldn't be hard-coded!
    */

    +#define __ro_after_init __read_mostly
    +
    #define L1_CACHE_BYTES 16
    #define L1_CACHE_SHIFT 4

    --
    2.5.0
    \
     
     \ /
      Last update: 2016-09-24 16:16    [W:2.959 / U:0.520 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site