mirror of
https://github.com/torvalds/linux.git
synced 2026-07-02 19:17:03 +02:00
We've been keeping that field in thread_struct for a while, it contains the "limit" of the current stack pointer and is meant to be used for detecting stack overflows. It has a few problems however: - First, it was never actually *used* on 64-bit. Set and updated but not actually exploited - When switching stack to/from irq and softirq stacks, it's update is racy unless we hard disable interrupts, which is costly. This is fine on 32-bit as we don't soft-disable there but not on 64-bit. Thus rather than fixing 2 in order to implement 1 in some hypothetical future, let's remove the code completely from 64-bit. In order to avoid a clutter of ifdef's, we remove the updates from C code completely during interrupt stack switching, and instead maintain it from the asm helper that is used to do the stack switching in the first place. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> |
||
|---|---|---|
| .. | ||
| alloc.c | ||
| checksum_32.S | ||
| checksum_64.S | ||
| checksum_wrappers_64.c | ||
| code-patching.c | ||
| copy_32.S | ||
| copypage_64.S | ||
| copypage_power7.S | ||
| copyuser_64.S | ||
| copyuser_power7.S | ||
| crtsavres.S | ||
| devres.c | ||
| div64.S | ||
| feature-fixups-test.S | ||
| feature-fixups.c | ||
| hweight_64.S | ||
| ldstfp.S | ||
| locks.c | ||
| Makefile | ||
| mem_64.S | ||
| memcpy_64.S | ||
| memcpy_power7.S | ||
| rheap.c | ||
| sstep.c | ||
| string_64.S | ||
| string.S | ||
| usercopy_64.c | ||
| vmx-helper.c | ||