Re: [patch 53/60] x86/mm: Use/Fix PCID to optimize user/kernel switches

From: Dave Hansen
Date: Tue Dec 05 2017 - 17:11:47 EST


On 12/05/2017 02:05 PM, Peter Zijlstra wrote:
>> I haven't checked that hard which patch introduces this bug, but it
>> seems that, with this applied, nothing propagates
>> non-mm-switch-related flushes to usermode. Shouldn't
>> flush_tlb_func_common() contain a call to invalidate_user_asid() near
>> the bottom? Alternatively, it could be in local_flush_tlb() and
>> __flush_tlb_single() (or whatever the hell the flush-one-usermode-TLB
>> function ends up being called).
> __native_flush_tlb_single() has the invalidate_user_asid()
> __native_flush_tlb() has the invalidate_user_asid().
>
> Which should be exactly that last option you mention.

I can also see INVPCIDs in profiles, so it's definitely getting used.