[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d8d4dc93-78ab-47e5-8daf-36fd9468ed97@lucifer.local>
Date: Tue, 27 Jan 2026 09:25:26 +0000
From: Lorenzo Stoakes <lorenzo.stoakes@...cle.com>
To: Minu Jin <s9430939@...er.com>
Cc: mingo@...hat.com, peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, akpm@...ux-foundation.org,
david@...nel.org, kees@...nel.org, dietmar.eggemann@....com,
rostedt@...dmis.org, bsegall@...gle.com, mgorman@...e.de,
vschneid@...hat.com, Liam.Howlett@...cle.com, vbabka@...e.cz,
rppt@...nel.org, surenb@...gle.com, mhocko@...e.com,
linux-kernel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: [PATCH] fork: clarify copy_mm() comment for kernel thread
On Tue, Jan 27, 2026 at 02:53:21PM +0900, Minu Jin wrote:
> The existing comment is misleading:
>
> 1. "steal a active VM" suggests this code performs the active_mm
> borrowing, but the actual borrowing happens in context_switch()
> where 'next->active_mm = prev->active_mm' is assigned.
> This code simply returns 0 to skip mm copying for kernel threads.
Yeah but the comment as it stands implies that you are doing that elsewhere
so I don't think this is a problem.
Referring to a specific other function in a comment unnecessarily makes
bitrot easier.
>
> 2. "active VM" is outdated terminology, the kernel uses "active_mm".
Well VM refers to the virtual address space so it's perfectly fine
terminology.
>
> Update the comment to accurately describe what this code does.
I hate to say it but this sort of enumerated list is very AI-like so if you
are sending a patch that is AI-generated please do indicate that this is so
(and put e.g. Co-Developed-by: <whatever>) if so.
>
> Signed-off-by: Minu Jin <s9430939@...er.com>
Thanks for the patch but I honestly don't think this is all that
misleading. This original comment is from 2005 and I don't think anybody's
been all that confused by it in the meantime.
So I don't think we should take this.
Cheers, Lorenzo
> ---
> kernel/fork.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/fork.c b/kernel/fork.c
> index b1f3915d5f8e..4bfd606004db 100644
> --- a/kernel/fork.c
> +++ b/kernel/fork.c
> @@ -1566,9 +1566,10 @@ static int copy_mm(u64 clone_flags, struct task_struct *tsk)
> tsk->active_mm = NULL;
>
> /*
> - * Are we cloning a kernel thread?
> + * Kernel threads have no 'mm' of their own as they borrow the
> + * 'active_mm' from the previous process at context_switch().
> *
> - * We need to steal a active VM for that..
> + * Return 0 directly to skip the copy_mm process.
> */
> oldmm = current->mm;
> if (!oldmm)
> --
> 2.43.0
>
Powered by blists - more mailing lists