aboutsummaryrefslogtreecommitdiff
path: root/docs/briefs.rst
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2026-09-04 18:14:16 +0200
committerFelix Morgner <felix.morgner@ost.ch>2026-09-04 18:19:51 +0200
commitaee4582fb5144e1dd493041a8d1fc0c08146a622 (patch)
tree645aa86673379885a1bf712c21c15024a2eed09a /docs/briefs.rst
parent041ae23d5d952f134533443b508b1287af2357d3 (diff)
downloadkernel-aee4582fb5144e1dd493041a8d1fc0c08146a622.tar.xz
kernel-aee4582fb5144e1dd493041a8d1fc0c08146a622.zip
x86_64/cpu: isolate kernel and IST1 stack
Previously, the kernel stack was allocated inside the .kernel_bss section, along other uninitialized data. While this works, it assumes that the section will always be laid out with the kernel stack at the top. If that is not the case, the allocated guard page before .kernel_bss would not trigger a #PF since out-of-bounds (overflow) access would quietly overwrite other data in the section, thus potentially corrupting global kernel data. At the same time, there was no separate section (and guard page) for the future #DF exception stack (IST1 in our case). Thus we allocate a section, and a guard page, while we are already modifying the linker script.
Diffstat (limited to 'docs/briefs.rst')
0 files changed, 0 insertions, 0 deletions