Re: [PATCH 0/3] TLB flush multiple pages per IPI v5

From: Kirill A. Shutemov
Date: Sun Jun 21 2015 - 16:23:31 EST


On Tue, Jun 09, 2015 at 08:34:35AM -0700, Dave Hansen wrote:
> On 06/09/2015 05:43 AM, Ingo Molnar wrote:
> > +static char tlb_flush_target[PAGE_SIZE] __aligned(4096);
> > +static void fn_flush_tlb_one(void)
> > +{
> > + unsigned long addr = (unsigned long)&tlb_flush_target;
> > +
> > + tlb_flush_target[0]++;
> > + __flush_tlb_one(addr);
> > +}
>
> So we've got an increment of a variable in kernel memory (which is
> almost surely in the L1), then we flush that memory location, and repeat
> the increment.

BTW, Ingo, have you disabled direct mapping of kernel memory with 2M/1G
pages for the test?

I'm just thinking if there is chance that the test shooting out 1G tlb
entry. In this case we're measure wrong thing.

--
Kirill A. Shutemov
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at http://www.tux.org/lkml/