On Sat, 5 Dec 2020 13:01:36 +0800 Mingzhe Yang <cainiao666999@xxxxxxxxx> wrote: > Prior to kernel 4.9 the thread_info structure was at the bottom of > the kernel stack. kernel 4.9 moved it into the task_struct. > > See commits c65eacb ("sched/core: Allow putting thread_info into > task_struct"), 15f4eae ("x86: Move thread_info into task_struct") > and 883d50f ("scripts/gdb: fix get_thread_info"). > > Signed-off-by: Mingzhe Yang <cainiao666999@xxxxxxxxx> > --- > Documentation/x86/kernel-stacks.rst | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/Documentation/x86/kernel-stacks.rst b/Documentation/x86/kernel-stacks.rst > index 6b0bcf0..e9097f3 100644 > --- a/Documentation/x86/kernel-stacks.rst > +++ b/Documentation/x86/kernel-stacks.rst > @@ -15,7 +15,8 @@ Like all other architectures, x86_64 has a kernel stack for every > active thread. These thread stacks are THREAD_SIZE (2*PAGE_SIZE) big. > These stacks contain useful data as long as a thread is alive or a > zombie. While the thread is in user space the kernel stack is empty > -except for the thread_info structure at the bottom. > +except for the thread_info structure at the bottom (since kernel 4.9, > +the thread_info structure has been moved into task_struct). So this has been sitting in my inbox for a bit, sorry. This seems worth fixing, but is this the correct fix? The documentation should reflect the current kernel, rather than what once was with a "(it's not actually that way anymore)" note. Is the kernel stack truly empty now? If so we should just say that; otherwise say what's lurking there in current kernels. Thanks, jon