diff --git a/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/enable-support-for-kubernetes-to-ignore-isolcpus.patch b/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/enable-support-for-kubernetes-to-ignore-isolcpus.patch deleted file mode 100644 index cbab01f6b..000000000 --- a/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/enable-support-for-kubernetes-to-ignore-isolcpus.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 922275232089538f73c96825f8036de9aa9da9a1 Mon Sep 17 00:00:00 2001 -From: Chris Friesen -Date: Fri, 23 Oct 2020 17:46:10 -0600 -Subject: [PATCH] enable support for kubernetes to ignore isolcpus - -The normal mechanisms for allocating isolated CPUs do not allow -a mix of isolated and exclusive CPUs in the same container. In -order to allow this in *very* limited cases where the pod spec -is known in advance we will add the ability to disable the normal -isolcpus behaviour. - -If the file "/etc/kubernetes/ignore_isolcpus" exists, then kubelet -will basically forget everything it knows about isolcpus and just -treat them like regular CPUs. - -The admin user can then rely on the fact that CPU allocation is -deterministic to ensure that the isolcpus they configure end up being -allocated to the correct pods. - -Signed-off-by: Daniel Safta ---- - pkg/kubelet/cm/cpumanager/cpu_manager.go | 8 ++++++++ - pkg/kubelet/cm/cpumanager/policy_static.go | 7 +++++++ - 2 files changed, 15 insertions(+) - -diff --git a/pkg/kubelet/cm/cpumanager/cpu_manager.go b/pkg/kubelet/cm/cpumanager/cpu_manager.go -index ea466dbcd37..0ca3b2666b4 100644 ---- a/pkg/kubelet/cm/cpumanager/cpu_manager.go -+++ b/pkg/kubelet/cm/cpumanager/cpu_manager.go -@@ -20,6 +20,7 @@ import ( - "fmt" - "io/ioutil" - "math" -+ "os" - "strings" - "sync" - "time" -@@ -55,6 +56,13 @@ const cpuManagerStateFileName = "cpu_manager_state" - - // get the system-level isolated CPUs - func getIsolcpus() cpuset.CPUSet { -+ // This is a gross hack to basically turn off awareness of isolcpus to enable -+ // isolated cpus to be allocated to pods the same way as non-isolated CPUs. -+ if _, err := os.Stat("/etc/kubernetes/ignore_isolcpus"); err == nil { -+ klog.Infof("[cpumanager] turning off isolcpus awareness") -+ return cpuset.NewCPUSet() -+ } -+ - dat, err := ioutil.ReadFile("/sys/devices/system/cpu/isolated") - if err != nil { - klog.Errorf("[cpumanager] unable to read sysfs isolcpus subdir") -diff --git a/pkg/kubelet/cm/cpumanager/policy_static.go b/pkg/kubelet/cm/cpumanager/policy_static.go -index d6fe69e7165..ce82250ee5e 100644 ---- a/pkg/kubelet/cm/cpumanager/policy_static.go -+++ b/pkg/kubelet/cm/cpumanager/policy_static.go -@@ -18,6 +18,7 @@ package cpumanager - - import ( - "fmt" -+ "os" - "strconv" - - v1 "k8s.io/api/core/v1" -@@ -680,6 +681,12 @@ func isKubeInfra(pod *v1.Pod) bool { - - // get the isolated CPUs (if any) from the devices associated with a specific container - func (p *staticPolicy) podIsolCPUs(pod *v1.Pod, container *v1.Container) cpuset.CPUSet { -+ // This is a gross hack to basically turn off awareness of isolcpus to enable -+ // isolated cpus to be allocated to pods the same way as non-isolated CPUs. -+ if _, err := os.Stat("/etc/kubernetes/ignore_isolcpus"); err == nil { -+ return cpuset.NewCPUSet() -+ } -+ - // NOTE: This is required for TestStaticPolicyAdd() since makePod() does - // not create UID. We also need a way to properly stub devicemanager. - if len(string(pod.UID)) == 0 { --- -2.25.1 - diff --git a/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/series b/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/series index 0b0e6cd75..221517092 100644 --- a/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/series +++ b/kubernetes/kubernetes-1.24.4/debian/deb_folder/patches/series @@ -11,6 +11,5 @@ kubelet-cpumanager-disable-CFS-quota-throttling.patch kubelet-cpumanager-keep-normal-containers-off-reserv.patch kubelet-cpumanager-infra-pods-use-system-reserved-CP.patch kubelet-cpumanager-introduce-concept-of-isolated-CPU.patch -enable-support-for-kubernetes-to-ignore-isolcpus.patch cpumanager-policy-static-test-refactor.patch kubelet-CFS-quota-throttling-for-non-integer-cpulimit.patch