kubernetes/pkg/kubelet/cm/devicemanager
Kevin Klues 00df26a985 Fix a bug whereby reusable CPUs and devices were not being honored
Previously, it was possible for reusable CPUs and reusable devices (i.e.
those previously consumed by init containers) to not be reused by
subsequent init containers or app containers if the TopologyManager was
enabled. This would happen because hint generation for the
TopologyManager was not considering the reusable devices when it made
its hint calculation.

As such, it would sometimes:
1) Generate a hint for a differnent NUMA node, causing the CPUs and
devices to be allocated from that node instead of the one where the
reusable devices live; or
2) End up thinking there were not enough CPUs or devices to allocate and
throw a TopologyAffinity admission error

This patch fixes this by ensuring that reusable CPUs and devices are
considered as part of TopologyHint generation. This frunctionality is
difficult to unit test since it spans multiple components, but an e2e
test will be added in a subsequent patch to test this functionality.
2020-07-20 11:41:13 +00:00
..
checkpoint Fix golint failures 2019-01-24 00:14:25 +01:00
BUILD Run hack/update-vendor.sh 2020-05-16 07:54:33 -04:00
device_plugin_stub.go Update device plugin stub with new GetPreferredAllocation() call 2020-07-02 15:15:48 +00:00
endpoint_test.go Add a simple endpoint test for GetPreferredAllocation() 2020-07-03 13:01:32 +00:00
endpoint.go Add GetPreferredAllocation() as a supported device plugin endpoint 2020-07-02 15:15:50 +00:00
manager_stub.go rename framework pkg with schedulerframework for all instances under pkg/kubelet 2020-04-14 14:24:07 -04:00
manager_test.go Update existing tests in support of GetPreferredallocation() 2020-07-03 13:01:32 +00:00
manager.go Remove unnecessary union after call to GetPreferredAllocation() 2020-07-07 06:35:57 +00:00
OWNERS Add klueska as reviewer for CPUManager and devicemanager 2019-10-03 13:01:41 -07:00
pod_devices.go switch over k/k to use klog v2 2020-05-16 07:54:27 -04:00
topology_hints_test.go Add tests to check paramaters passed to GetPreferredAllocation() 2020-07-07 06:35:57 +00:00
topology_hints.go Fix a bug whereby reusable CPUs and devices were not being honored 2020-07-20 11:41:13 +00:00
types.go rename framework pkg with schedulerframework for all instances under pkg/kubelet 2020-04-14 14:24:07 -04:00