[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210607164934.d453adcc42473e84beb25db3@linux-foundation.org>
Date: Mon, 7 Jun 2021 16:49:34 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Nicholas Piggin <npiggin@...il.com>
Cc: Randy Dunlap <rdunlap@...radead.org>, linux-kernel@...r.kernel.org,
linux-arch@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
linux-mm@...ck.org, Anton Blanchard <anton@...abs.org>,
Andy Lutomirski <luto@...nel.org>
Subject: Re: [PATCH v4 1/4] lazy tlb: introduce lazy mm refcount helper
functions
On Sat, 5 Jun 2021 11:42:13 +1000 Nicholas Piggin <npiggin@...il.com> wrote:
> Add explicit _lazy_tlb annotated functions for lazy mm refcounting.
> This makes lazy mm references more obvious, and allows explicit
> refcounting to be removed if it is not used.
>
> ...
>
> --- a/kernel/kthread.c
> +++ b/kernel/kthread.c
> @@ -1314,14 +1314,14 @@ void kthread_use_mm(struct mm_struct *mm)
> WARN_ON_ONCE(!(tsk->flags & PF_KTHREAD));
> WARN_ON_ONCE(tsk->mm);
>
> + mmgrab(mm);
> +
> task_lock(tsk);
> /* Hold off tlb flush IPIs while switching mm's */
> local_irq_disable();
> active_mm = tsk->active_mm;
> - if (active_mm != mm) {
> - mmgrab(mm);
> + if (active_mm != mm)
> tsk->active_mm = mm;
> - }
Looks like a functional change. What's happening here?
Powered by blists - more mailing lists