From 540125ef6258be732eba6917b33034572d1f5f4e Mon Sep 17 00:00:00 2001 From: Antti Kervinen Date: Fri, 10 Jul 2026 09:56:33 +0300 Subject: [PATCH] e2e: enforce virtual machine cache topology levels On some host platforms, Qemu reports every virtual machine CPU hyperthread having its own L1d, L1i and L2 caches. Force virtual CPU cache topology where these caches are shared between thread siblings. Signed-off-by: Antti Kervinen --- test/e2e/lib/topology2qemuopts.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/e2e/lib/topology2qemuopts.py b/test/e2e/lib/topology2qemuopts.py index d40a218d9..053089a40 100755 --- a/test/e2e/lib/topology2qemuopts.py +++ b/test/e2e/lib/topology2qemuopts.py @@ -362,7 +362,11 @@ def cxlswitchopts(device, bus_id): def qemuopts(numalist): machineparam = "-machine q35,kernel-irqchip=split" - cpuparam = "-cpu host,x2apic=on" + machineparam += ",smp-cache.0.cache=l1d,smp-cache.0.topology=core" + machineparam += ",smp-cache.1.cache=l1i,smp-cache.1.topology=core" + machineparam += ",smp-cache.2.cache=l2,smp-cache.2.topology=core" + machineparam += ",smp-cache.3.cache=l3,smp-cache.3.topology=socket" + cpuparam = "-cpu host,x2apic=on,host-cache-info=off" numaparams = [] objectparams = [] deviceparams = []