This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 12/07/2017 08:12 PM, H.J. Lu wrote:
Sorry, what exactly is stored on the shadow stack? I assumed it was for verification of the targets of ret instructions. In this case, don't need to unwind the shadow stack (or preserve its contents) because there are no returns from existing stack frames once cancellation has started.Shadow stack is the similar to normal call stack without local variables. SHSTK checks the return address of EACH "RET" instruction against shadow stack.
Then the shadow stack contents at the time of cancellation does not matter because all future RET instructions on this thread will match CALLs which happened *after* cancellation. (In other words, I still think I'm right about this.)
Thanks, Florian
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |