Skip to content

Commit ad5d4c4

Browse files
authored
Merge pull request kubernetes#85706 from yutedz/per-node-dev
Remove nodes slice in loop of takeByTopology
2 parents e68d7be + 6415fa7 commit ad5d4c4

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

pkg/kubelet/cm/devicemanager/manager.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -690,21 +690,21 @@ func (m *ManagerImpl) takeByTopology(resource string, available sets.String, aff
690690
// available device does not have any NUMA Nodes associated with it, add it
691691
// to a list of NUMA Nodes for the fake NUMANode -1.
692692
perNodeDevices := make(map[int]sets.String)
693+
nodeWithoutTopology := -1
693694
for d := range available {
694-
var nodes []int
695-
if m.allDevices[resource][d].Topology != nil {
696-
for _, node := range m.allDevices[resource][d].Topology.Nodes {
697-
nodes = append(nodes, int(node.ID))
695+
if m.allDevices[resource][d].Topology == nil || len(m.allDevices[resource][d].Topology.Nodes) == 0 {
696+
if _, ok := perNodeDevices[nodeWithoutTopology]; !ok {
697+
perNodeDevices[nodeWithoutTopology] = sets.NewString()
698698
}
699+
perNodeDevices[nodeWithoutTopology].Insert(d)
700+
continue
699701
}
700-
if len(nodes) == 0 {
701-
nodes = []int{-1}
702-
}
703-
for _, node := range nodes {
704-
if _, ok := perNodeDevices[node]; !ok {
705-
perNodeDevices[node] = sets.NewString()
702+
703+
for _, node := range m.allDevices[resource][d].Topology.Nodes {
704+
if _, ok := perNodeDevices[int(node.ID)]; !ok {
705+
perNodeDevices[int(node.ID)] = sets.NewString()
706706
}
707-
perNodeDevices[node].Insert(d)
707+
perNodeDevices[int(node.ID)].Insert(d)
708708
}
709709
}
710710

@@ -736,7 +736,7 @@ func (m *ManagerImpl) takeByTopology(resource string, available sets.String, aff
736736
// has the device is encountered.
737737
for _, n := range nodes {
738738
if perNodeDevices[n].Has(d) {
739-
if n == -1 {
739+
if n == nodeWithoutTopology {
740740
withoutTopology = append(withoutTopology, d)
741741
} else if affinity.IsSet(n) {
742742
fromAffinity = append(fromAffinity, d)

0 commit comments

Comments
 (0)