arm64: Enable interrupts in the EL0 undef handler
[firefly-linux-kernel-4.4.55.git] / arch / arm64 / kernel / entry.S
index 1d1314280a03a678c4ef63092712d49079386cdd..57640df9d70cb36d41990915731f80f807045dc0 100644 (file)
 
        .macro  get_thread_info, rd
        mov     \rd, sp
-       and     \rd, \rd, #~((1 << 13) - 1)     // top of 8K stack
+       and     \rd, \rd, #~(THREAD_SIZE - 1)   // top of stack
        .endm
 
 /*
@@ -476,6 +476,8 @@ el0_undef:
         * Undefined instruction
         */
        mov     x0, sp
+       // enable interrupts before calling the main handler
+       enable_irq
        b       do_undefinstr
 el0_dbg:
        /*