Re: [patch 55/60] x86/mm: Use INVPCID for __native_flush_tlb_single()
From: Peter Zijlstra
Date: Mon Dec 04 2017 - 17:52:34 EST
On Mon, Dec 04, 2017 at 02:25:43PM -0800, Andy Lutomirski wrote:
> On Mon, Dec 4, 2017 at 6:08 AM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
> > From: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
> >
> > This uses INVPCID to shoot down individual lines of the user mapping
> > instead of marking the entire user map as invalid. This
> > could/might/possibly be faster.
> >
> > This for sure needs tlb_single_page_flush_ceiling to be redetermined;
> > esp. since INVPCID is _slow_.
>
> I'm wondering if INVPCID is *so* slow that this patch is entirely
> counterproductive.
We should find some of the benchmarks that were used to determine
tlb_single_page_flush_ceiling and measure. I've not gotten around to
doing either.
Someone called Dave Hansen did that patch and might still have something
lying around to help with that:
a5102476a24b ("x86/mm: Set TLB flush tunable to sane value (33)")