Re: [RFC PATCH 5/8] sched: move CPU field back into thread_info if THREAD_INFO_IN_TASK=y

From: Linus Torvalds
Date: Tue Sep 14 2021 - 11:59:21 EST


On Tue, Sep 14, 2021 at 8:53 AM Ard Biesheuvel <ardb@xxxxxxxxxx> wrote:
>
> task_cpu() takes a 'const struct task_struct *', whereas
> task_thread_info() takes a 'struct task_struct *'.

Oh, annoying, but that's easily fixed. Just make that

static inline struct thread_info *task_thread_info(struct
task_struct *task) ..

be a simple

#define task_thread_info(tsk) (&(tsk)->thread_info)

instead. That actually then matches the !THREAD_INFO_IN_TASK case anyway.

Make the commit comment be about how that fixes the type problem.

Because while in many cases inline functions are superior to macros,
it clearly isn't the case in this case.

Linus