This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to ensure the safety of SP_EL0

Hi experts,

In ARMv8, EL1/2/3 can use either their own stack pointer, SP_ELx or SP_EL0.

SP_EL0 can be used in EL0.

why it is safe to use SP_EL0 in EL1/2/3?  I think the applications in EL0 may get the data of kernel in EL1 through SP_EL0.   

Can anybody explain why? Thank you! 

Parents
  • The kernel uses SP_EL0 but it doesn't use the EL0 stack.

    As part of the transition between states SP_EL0 is changed to point at the kernel stack (and changed back to point at the thread's stack on return to EL0.)

Reply
  • The kernel uses SP_EL0 but it doesn't use the EL0 stack.

    As part of the transition between states SP_EL0 is changed to point at the kernel stack (and changed back to point at the thread's stack on return to EL0.)

Children