From 9dd47447409ab10d204049889b0850407803e030 Mon Sep 17 00:00:00 2001 From: huone1 Date: Tue, 11 Jan 2022 19:33:25 +0800 Subject: [PATCH 1/2] supply the process for topology result submit Signed-off-by: huone1 --- pkg/scheduler/cache/cache.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkg/scheduler/cache/cache.go b/pkg/scheduler/cache/cache.go index 808131aaea..b0f8903e97 100644 --- a/pkg/scheduler/cache/cache.go +++ b/pkg/scheduler/cache/cache.go @@ -852,6 +852,12 @@ func (sc *SchedulerCache) AddBindTask(taskInfo *schedulingapi.TaskInfo) error { return err } + err = taskInfo.SetPodResourceDecision() + if err != nil { + return fmt.Errorf("set task %v/%v resource decision failed, err %v", task.Namespace, task.Name, err) + } + task.NumaInfo = taskInfo.NumaInfo.Clone() + // Add task to the node. if err := node.AddTask(task); err != nil { // After failing to update task to a node we need to revert task status from Releasing, From bb0b236de07429b67ab6e8370ac7ad3b996ff83c Mon Sep 17 00:00:00 2001 From: huone1 Date: Wed, 5 Jan 2022 09:52:33 +0800 Subject: [PATCH 2/2] [numa-aware]fix concurrent map read and map write Signed-off-by: huone1 --- pkg/scheduler/plugins/numaaware/numaaware.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkg/scheduler/plugins/numaaware/numaaware.go b/pkg/scheduler/plugins/numaaware/numaaware.go index ec41c845e4..02a4e5c4f3 100644 --- a/pkg/scheduler/plugins/numaaware/numaaware.go +++ b/pkg/scheduler/plugins/numaaware/numaaware.go @@ -45,6 +45,7 @@ const ( ) type numaPlugin struct { + sync.Mutex // Arguments given for the plugin pluginArguments framework.Arguments hintProviders []policy.HintProvider @@ -142,6 +143,8 @@ func (pp *numaPlugin) OnSessionOpen(ssn *framework.Session) { } } + pp.Lock() + defer pp.Unlock() if _, ok := pp.assignRes[task.UID]; !ok { pp.assignRes[task.UID] = make(map[string]api.ResNumaSets) }