关于当前宏在 Linux 内核中的工作(我指的是 ARM 架构)
当前宏的代码:
return (struct thread_info *)(sp & ~(THREAD_SIZE - 1));
这意味着struct thread_info
被放置在堆栈的顶部?
这是来自 linux Kernel development 3rd edition :
struct thread_info
位于堆栈底部(对于向下增长的堆栈)和堆栈顶部(对于向上增长的堆栈)。
如何struct thread_info
通过覆盖来防止这种情况?