arm64: add CPU field to struct thread_info
authorArd Biesheuvel <ardb@kernel.org>
Tue, 14 Sep 2021 12:10:29 +0000 (14:10 +0200)
committerArd Biesheuvel <ardb@kernel.org>
Thu, 30 Sep 2021 12:39:43 +0000 (14:39 +0200)
The CPU field will be moved back into thread_info even when
THREAD_INFO_IN_TASK is enabled, so add it back to arm64's definition of
struct thread_info.

Note that arm64 always has CONFIG_SMP=y so there is no point in guarding
the CPU field with an #ifdef.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
arch/arm64/include/asm/thread_info.h
arch/arm64/kernel/asm-offsets.c

index 6623c99..c02bc8c 100644 (file)
@@ -42,6 +42,7 @@ struct thread_info {
        void                    *scs_base;
        void                    *scs_sp;
 #endif
+       u32                     cpu;
 };
 
 #define thread_saved_pc(tsk)   \
index 551427a..cee9f3e 100644 (file)
@@ -29,6 +29,7 @@ int main(void)
   DEFINE(TSK_ACTIVE_MM,                offsetof(struct task_struct, active_mm));
   DEFINE(TSK_CPU,              offsetof(struct task_struct, cpu));
   BLANK();
+  DEFINE(TSK_TI_CPU,           offsetof(struct task_struct, thread_info.cpu));
   DEFINE(TSK_TI_FLAGS,         offsetof(struct task_struct, thread_info.flags));
   DEFINE(TSK_TI_PREEMPT,       offsetof(struct task_struct, thread_info.preempt_count));
 #ifdef CONFIG_ARM64_SW_TTBR0_PAN