On Sun, Feb 23, 2025 at 02:48:54PM -0500, Rik van Riel wrote: > Use broadcast TLB invalidation for kernel addresses when available. > > Remove the need to send IPIs for kernel TLB flushes. > > Signed-off-by: Rik van Riel <riel@xxxxxxxxxxx> > Reviewed-by: Nadav Amit <nadav.amit@xxxxxxxxx> > Tested-by: Manali Shukla <Manali.Shukla@xxxxxxx> > Tested-by: Brendan Jackman <jackmanb@xxxxxxxxxx> > Tested-by: Michael Kelley <mhklinux@xxxxxxxxxxx> What's the point of keeping those Tested-by tags if you still keep changing the patchset? > --- > arch/x86/mm/tlb.c | 34 ++++++++++++++++++++++++++++++++-- > 1 file changed, 32 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/mm/tlb.c b/arch/x86/mm/tlb.c > index dbcb5c968ff9..59396a3c6e9c 100644 > --- a/arch/x86/mm/tlb.c > +++ b/arch/x86/mm/tlb.c > @@ -1077,6 +1077,20 @@ void flush_tlb_all(void) > on_each_cpu(do_flush_tlb_all, NULL, 1); > } > > +static bool invlpgb_kernel_range_flush(struct flush_tlb_info *info) > +{ > + unsigned long addr; > + unsigned long nr; Oh, c'mon: unsigned long addr, nr; > + > + for (addr = info->start; addr < info->end; addr += nr << PAGE_SHIFT) { > + nr = (info->end - addr) >> PAGE_SHIFT; > + nr = clamp_val(nr, 1, invlpgb_count_max); > + invlpgb_flush_addr_nosync(addr, nr); > + } > + __tlbsync(); > + return true; Unused retval - that function looks like it wants to be void. -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette