diff options
author | Kees Cook <keescook@chromium.org> | 2021-09-30 10:36:44 -0700 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2021-09-30 10:36:44 -0700 |
commit | d9f2a53f64a6fcae994457e64a7124d2a3efd323 (patch) | |
tree | 858e12d8312831e089a2babc077ced917c27f47d /arch/x86 | |
parent | e4e737bb5c170df6135a127739a9e6148ee3da82 (diff) | |
parent | 8aa0fb0fbb82a4d2395be7eaeb994653b2d869fc (diff) |
Merge tag 'pr-move-task-cpu-to-ti' of git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git
Cross-architecture update to move task_struct::cpu back into thread_info
on arm64, x86, s390, powerpc, and riscv. All Acked by arch maintainers.
Quoting Ard Biesheuvel:
"Move task_struct::cpu back into thread_info
Keeping CPU in task_struct is problematic for architectures that define
raw_smp_processor_id() in terms of this field, as it requires
linux/sched.h to be included, which causes a lot of pain in terms of
circular dependencies (aka 'header soup')
This series moves it back into thread_info (where it came from) for all
architectures that enable THREAD_INFO_IN_TASK, addressing the header
soup issue as well as some pointless differences in the implementations
of task_cpu() and set_task_cpu()."
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/include/asm/thread_info.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h index cf132663c219..ebec69c35e95 100644 --- a/arch/x86/include/asm/thread_info.h +++ b/arch/x86/include/asm/thread_info.h @@ -57,6 +57,9 @@ struct thread_info { unsigned long flags; /* low level flags */ unsigned long syscall_work; /* SYSCALL_WORK_ flags */ u32 status; /* thread synchronous flags */ +#ifdef CONFIG_SMP + u32 cpu; /* current CPU */ +#endif }; #define INIT_THREAD_INFO(tsk) \ |