• Linus Torvalds's avatar
    Merge tag 'cpu-to-thread_info-v5.16-rc1' of... · 01463374
    Linus Torvalds authored
    Merge tag 'cpu-to-thread_info-v5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux
    
    Pull thread_info update to move 'cpu' back from task_struct from Kees Cook:
     "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()'"
    
    * tag 'cpu-to-thread_info-v5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
      riscv: rely on core code to keep thread_info::cpu updated
      powerpc: smp: remove hack to obtain offset of task_struct::cpu
      sched: move CPU field back into thread_info if THREAD_INFO_IN_TASK=y
      powerpc: add CPU field to struct thread_info
      s390: add CPU field to struct thread_info
      x86: add CPU field to struct thread_info
      arm64: add CPU field to struct thread_info
    01463374
smp.c 42 KB