Skip to content

Commit 0ec1f85

Browse files
tedyuyutedz
authored andcommitted
Break out of inner loop when newQuantity is negative
1 parent 22b6c69 commit 0ec1f85

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

pkg/kubelet/preemption/preemption.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -189,10 +189,9 @@ func (a admissionRequirementList) distance(pod *v1.Pod) float64 {
189189
dist := float64(0)
190190
for _, req := range a {
191191
remainingRequest := float64(req.quantity - resource.GetResourceRequest(pod, req.resourceName))
192-
if remainingRequest < 0 {
193-
remainingRequest = 0
192+
if remainingRequest > 0 {
193+
dist += math.Pow(remainingRequest/float64(req.quantity), 2)
194194
}
195-
dist += math.Pow(remainingRequest/float64(req.quantity), 2)
196195
}
197196
return dist
198197
}
@@ -205,6 +204,9 @@ func (a admissionRequirementList) subtract(pods ...*v1.Pod) admissionRequirement
205204
newQuantity := req.quantity
206205
for _, pod := range pods {
207206
newQuantity -= resource.GetResourceRequest(pod, req.resourceName)
207+
if newQuantity <= 0 {
208+
break
209+
}
208210
}
209211
if newQuantity > 0 {
210212
newList = append(newList, &admissionRequirement{

0 commit comments

Comments
 (0)