From 374ba0ca6dcfa0cfe533fac083cbd9ffbb3ed51e Mon Sep 17 00:00:00 2001 From: Vincent Donnefort Date: Thu, 4 Sep 2025 08:57:25 +0100 Subject: [PATCH] ANDROID: KVM: arm64: Fix CPU type when reading trace_pdesc Prevent negative value reading from the trace descriptor. While at it, remove that variable shadowing for more clarity. Bug: 442540376 Bug: 357781595 Change-Id: I102df353b2b57cc44ebb93e97f8c1e4f589a5e84 Signed-off-by: Vincent Donnefort (cherry picked from commit d41d0584fc6f600dbd5f601aba869cc98a486a80) Signed-off-by: Lee Jones --- arch/arm64/kvm/hyp/nvhe/trace.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arm64/kvm/hyp/nvhe/trace.c b/arch/arm64/kvm/hyp/nvhe/trace.c index 4b993c992ea7..65a193c1ebc2 100644 --- a/arch/arm64/kvm/hyp/nvhe/trace.c +++ b/arch/arm64/kvm/hyp/nvhe/trace.c @@ -543,7 +543,7 @@ int __pkvm_load_tracing(unsigned long desc_hva, size_t desc_size) struct hyp_trace_desc *desc = (struct hyp_trace_desc *)kern_hyp_va(desc_hva); struct trace_page_desc *trace_pdesc = &desc->page_desc; struct rb_page_desc *pdesc; - int ret, cpu; + int ret, pdesc_cpu; if (!desc_size || !PAGE_ALIGNED(desc_hva) || !PAGE_ALIGNED(desc_size)) return -EINVAL; @@ -555,9 +555,9 @@ int __pkvm_load_tracing(unsigned long desc_hva, size_t desc_size) hyp_spin_lock(&trace_rb_lock); - for_each_rb_page_desc(pdesc, cpu, trace_pdesc) { + for_each_rb_page_desc(pdesc, pdesc_cpu, trace_pdesc) { struct hyp_rb_per_cpu *cpu_buffer; - int cpu; + unsigned int cpu; ret = -EINVAL; if (!rb_cpu_fits_desc(pdesc, desc_hva + desc_size))