Re: [RFC][PATCH] arm64: tlb: call kvm_call_hyp once during kvm_tlb_flush_vmid_range

From: Marc Zyngier

Date: Mon Feb 09 2026 - 09:36:45 EST


On Mon, 09 Feb 2026 13:14:07 +0000,
"yezhenyu (A)" <yezhenyu2@xxxxxxxxxx> wrote:
>
> From 9982be89f55bd99b3683337223284f0011ed248e Mon Sep 17 00:00:00 2001
> From: eillon <yezhenyu2@xxxxxxxxxx>
> Date: Mon, 9 Feb 2026 19:48:46 +0800
> Subject: [RFC][PATCH v1] arm64: tlb: call kvm_call_hyp once during
> kvm_tlb_flush_vmid_range
>
> The kvm_tlb_flush_vmid_range() function is performance-critical
> during live migration, but there is a while loop when the system
> support flush tlb by range when the size is larger than MAX_TLBI_RANGE_PAGES.
>
> This results in frequent entry to kvm_call_hyp() and then a large

What is the cost of kvm_call_hyp()?

> amount of time is spent in kvm_clear_dirty_log_protect() during
> migration(more than 50%).

50% of what time? The guest's run-time? The time spent doing TLBIs
compared to the time spent in kvm_clear_dirty_log_protect()?

> So, when the address range is large than
> MAX_TLBI_RANGE_PAGES, directly call __kvm_tlb_flush_vmid to
> optimize performance.

Multiple things here:

- there is no SoB, which means that patch cannot be considered for
merging

- there is no data showing how this change improves the situation for
a large enough set of workloads

- there is no description of a test that could be run on multiple
implementations to check whether this change has a positive or
negative impact

If you want to progress this sort of things, you will need to address
these points.

Thanks,

M.

--
Without deviation from the norm, progress is not possible.