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 <cainiao666...@gmail.com>
---
 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).
 
 In addition to the per thread stacks, there are specialized stacks
 associated with each CPU.  These stacks are only used while the kernel
-- 
1.8.3.1

Reply via email to