Re: [PATCH v2 11/11] mm,sched: conditionally skip lazy TLB mm refcounting

From: Andy Lutomirski
Date: Tue Jul 31 2018 - 10:29:32 EST




> On Jul 31, 2018, at 2:12 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
>> On Mon, Jul 30, 2018 at 09:05:55PM -0400, Rik van Riel wrote:
>>> On Mon, 2018-07-30 at 18:26 +0200, Peter Zijlstra wrote:
>>>
>>> So for ARCH_NO_ACTIVE_MM we never touch ->active_mm and therefore
>>> ->active_mm == ->mm.
>>
>> Close, but not true for kernel threads, which have a
>> NULL ->mm, but a non-null ->active_mm that gets passed
>> to enter_lazy_tlb().
>
> I'm confused on the need for this. We mark the CPU lazy, why do we still
> care about this?

I have considered renaming enter_lazy_tlb() to something like lazy_switch_to_kernel_mm() (or an irqs_off variant) and making it take no parameters or maybe just task pointer parameters. M