[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1edea8a714fd1df0734f7fe15bb690e4c3a556dc.camel@surriel.com>
Date: Fri, 07 Feb 2025 15:22:59 -0500
From: Rik van Riel <riel@...riel.com>
To: Brendan Jackman <jackmanb@...gle.com>
Cc: x86@...nel.org, linux-kernel@...r.kernel.org, bp@...en8.de,
peterz@...radead.org, dave.hansen@...ux.intel.com,
zhengqi.arch@...edance.com, nadav.amit@...il.com, thomas.lendacky@....com,
kernel-team@...a.com, linux-mm@...ck.org, akpm@...ux-foundation.org,
jannh@...gle.com, mhklinux@...look.com, andrew.cooper3@...rix.com, Dave
Hansen <dave.hansen@...el.com>
Subject: Re: [PATCH v9 03/12] x86/mm: consolidate full flush threshold
decision
On Fri, 2025-02-07 at 15:50 +0100, Brendan Jackman wrote:
> On Thu, 6 Feb 2025 at 05:45, Rik van Riel <riel@...riel.com> wrote:
> > @@ -1276,7 +1282,7 @@ void arch_tlbbatch_flush(struct
> > arch_tlbflush_unmap_batch *batch)
> >
> > int cpu = get_cpu();
> >
> > - info = get_flush_tlb_info(NULL, 0, TLB_FLUSH_ALL, 0, false,
> > + info = get_flush_tlb_info(NULL, 0, TLB_FLUSH_ALL,
> > PAGE_SHIFT, false,
> > TLB_GENERATION_INVALID);
>
> [Why] do we need this change? If it's necessary here, why isn't it
> needed everywhere else that does TLB_FLUSH_ALL too, like
> flush_tlb_mm()?
>
flush_tlb_mm() calls flush_tlb_mm_range(), which
does also use get_flush_tlb_info().
We pass in PAGE_SHIFT here to ensure that the
stride shift is specified correctly to the
INVLPGB instruction later on.
--
All Rights Reversed.
Powered by blists - more mailing lists