From 9d871a83dcd8d7334c249f6c3ba01d69ac1d3fba Mon Sep 17 00:00:00 2001 From: "Niranjan M.R" Date: Wed, 1 Oct 2025 15:39:16 +0530 Subject: [PATCH 1/2] E2E: skip SMT disabled test when L3 cache spans entire NUMA node Signed-off-by: Niranjan M.R --- test/e2e/performanceprofile/functests/13_llc/llc.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/e2e/performanceprofile/functests/13_llc/llc.go b/test/e2e/performanceprofile/functests/13_llc/llc.go index 2dd0d71fe..610ff8797 100644 --- a/test/e2e/performanceprofile/functests/13_llc/llc.go +++ b/test/e2e/performanceprofile/functests/13_llc/llc.go @@ -782,6 +782,13 @@ var _ = Describe("[rfe_id:77446] LLC-aware cpu pinning", Label(string(label.Open Expect(err).ToNot(HaveOccurred(), "Unable to fetch numa nodes") coresiblings, err := nodes.GetCoreSiblings(ctx, &cnfnode) Expect(err).ToNot(HaveOccurred(), "Unable to get numa information from the node") + getCCX = nodes.GetL3SharedCPUs(&cnfnode) + ccx, err := getCCX(0) + Expect(err).ToNot(HaveOccurred()) + L3CacheGroupSize = ccx.Size() + if len(numaInfo[0]) == L3CacheGroupSize { + Skip("This test requires systems where L3 cache is shared amount subset of cpus") + } nosmt = transformToNoSMT(coresiblings) if len(numaInfo) < 2 { Skip(fmt.Sprintf("This test need 2 Numa nodes. The number of numa nodes on node %s < 2", cnfnode.Name)) From 22beba9c842fc1cfaf342b763906dc7e1dafded1 Mon Sep 17 00:00:00 2001 From: "Niranjan M.R" Date: Thu, 2 Oct 2025 15:40:20 +0530 Subject: [PATCH 2/2] compare with actual CPU ID's in cpusets Signed-off-by: Niranjan M.R --- test/e2e/performanceprofile/functests/13_llc/llc.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/e2e/performanceprofile/functests/13_llc/llc.go b/test/e2e/performanceprofile/functests/13_llc/llc.go index 610ff8797..eaf6394c6 100644 --- a/test/e2e/performanceprofile/functests/13_llc/llc.go +++ b/test/e2e/performanceprofile/functests/13_llc/llc.go @@ -786,9 +786,14 @@ var _ = Describe("[rfe_id:77446] LLC-aware cpu pinning", Label(string(label.Open ccx, err := getCCX(0) Expect(err).ToNot(HaveOccurred()) L3CacheGroupSize = ccx.Size() - if len(numaInfo[0]) == L3CacheGroupSize { + // Get actual CPU ID's from Numa Node 0 + numaNode0Cpus := cpuset.New(numaInfo[0]...) + + // Compare if L3 cache group CPUs match NUMA Node 0 CPUs + if ccx.Equals(numaNode0Cpus) { Skip("This test requires systems where L3 cache is shared amount subset of cpus") } + nosmt = transformToNoSMT(coresiblings) if len(numaInfo) < 2 { Skip(fmt.Sprintf("This test need 2 Numa nodes. The number of numa nodes on node %s < 2", cnfnode.Name))