From 2919a1dbe30d544961629c31d319d1e9a67d1eb0 Mon Sep 17 00:00:00 2001 From: Krisztian Litkey Date: Thu, 20 Nov 2025 10:42:15 +0200 Subject: [PATCH 1/2] pkg/cdi: add version check test for RDT. Signed-off-by: Krisztian Litkey --- pkg/cdi/spec_test.go | 57 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/pkg/cdi/spec_test.go b/pkg/cdi/spec_test.go index 1bc339e..a1a05ed 100644 --- a/pkg/cdi/spec_test.go +++ b/pkg/cdi/spec_test.go @@ -714,6 +714,63 @@ func TestRequiredVersion(t *testing.T) { }, expectedVersion: "0.7.0", }, + { + + description: "global edit RDT schemata requires v1.1.0", + spec: &cdi.Spec{ + ContainerEdits: cdi.ContainerEdits{ + IntelRdt: &cdi.IntelRdt{ + Schemata: []string{"foo"}, + }, + }, + }, + expectedVersion: "1.1.0", + }, + { + + description: "global edit RDT monitoring requires v1.1.0", + spec: &cdi.Spec{ + ContainerEdits: cdi.ContainerEdits{ + IntelRdt: &cdi.IntelRdt{ + EnableMonitoring: true, + }, + }, + }, + expectedVersion: "1.1.0", + }, + { + description: "device edit RDT schemata requires v1.1.0", + spec: &cdi.Spec{ + Devices: []cdi.Device{ + { + Name: "device0", + ContainerEdits: cdi.ContainerEdits{ + IntelRdt: &cdi.IntelRdt{ + Schemata: []string{"foo"}, + }, + }, + }, + }, + }, + expectedVersion: "1.1.0", + }, + { + + description: "device edit RDT monitoring requires v1.1.0", + spec: &cdi.Spec{ + Devices: []cdi.Device{ + { + Name: "device0", + ContainerEdits: cdi.ContainerEdits{ + IntelRdt: &cdi.IntelRdt{ + EnableMonitoring: true, + }, + }, + }, + }, + }, + expectedVersion: "1.1.0", + }, } for _, tc := range testCases { From 09c77681559df70fb9ae0e53faec038f15dce631 Mon Sep 17 00:00:00 2001 From: Krisztian Litkey Date: Thu, 20 Nov 2025 10:23:14 +0200 Subject: [PATCH 2/2] specs-go: fix minimum version check for IntelRdt. Require 1.1.0 if at least one of the global or device specific container edits use IntelRdt. Signed-off-by: Krisztian Litkey --- specs-go/version.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/specs-go/version.go b/specs-go/version.go index b2e90c4..4e5d736 100644 --- a/specs-go/version.go +++ b/specs-go/version.go @@ -149,6 +149,15 @@ func requiresV110(spec *Spec) bool { return true } } + + for _, dev := range spec.Devices { + if i := dev.ContainerEdits.IntelRdt; i != nil { + if i.Schemata != nil || i.EnableMonitoring { + return true + } + } + } + return false }