mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
Merge pull request #85706 from yutedz/per-node-dev
Remove nodes slice in loop of takeByTopology
This commit is contained in:
commit
ad5d4c4705
@ -690,21 +690,21 @@ func (m *ManagerImpl) takeByTopology(resource string, available sets.String, aff
|
||||
// available device does not have any NUMA Nodes associated with it, add it
|
||||
// to a list of NUMA Nodes for the fake NUMANode -1.
|
||||
perNodeDevices := make(map[int]sets.String)
|
||||
nodeWithoutTopology := -1
|
||||
for d := range available {
|
||||
var nodes []int
|
||||
if m.allDevices[resource][d].Topology != nil {
|
||||
for _, node := range m.allDevices[resource][d].Topology.Nodes {
|
||||
nodes = append(nodes, int(node.ID))
|
||||
if m.allDevices[resource][d].Topology == nil || len(m.allDevices[resource][d].Topology.Nodes) == 0 {
|
||||
if _, ok := perNodeDevices[nodeWithoutTopology]; !ok {
|
||||
perNodeDevices[nodeWithoutTopology] = sets.NewString()
|
||||
}
|
||||
perNodeDevices[nodeWithoutTopology].Insert(d)
|
||||
continue
|
||||
}
|
||||
if len(nodes) == 0 {
|
||||
nodes = []int{-1}
|
||||
}
|
||||
for _, node := range nodes {
|
||||
if _, ok := perNodeDevices[node]; !ok {
|
||||
perNodeDevices[node] = sets.NewString()
|
||||
|
||||
for _, node := range m.allDevices[resource][d].Topology.Nodes {
|
||||
if _, ok := perNodeDevices[int(node.ID)]; !ok {
|
||||
perNodeDevices[int(node.ID)] = sets.NewString()
|
||||
}
|
||||
perNodeDevices[node].Insert(d)
|
||||
perNodeDevices[int(node.ID)].Insert(d)
|
||||
}
|
||||
}
|
||||
|
||||
@ -736,7 +736,7 @@ func (m *ManagerImpl) takeByTopology(resource string, available sets.String, aff
|
||||
// has the device is encountered.
|
||||
for _, n := range nodes {
|
||||
if perNodeDevices[n].Has(d) {
|
||||
if n == -1 {
|
||||
if n == nodeWithoutTopology {
|
||||
withoutTopology = append(withoutTopology, d)
|
||||
} else if affinity.IsSet(n) {
|
||||
fromAffinity = append(fromAffinity, d)
|
||||
|
Loading…
Reference in New Issue
Block a user