From 591a60bac99b17ba0f345ee93057ea5a148837fd Mon Sep 17 00:00:00 2001 From: Ophestra Date: Fri, 3 Apr 2026 16:48:43 +0900 Subject: internal/pkg: per-cache SCHED_IDLE This is cleaner than setting it globally, and is impossible to race. Signed-off-by: Ophestra --- internal/pkg/exec.go | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'internal/pkg/exec.go') diff --git a/internal/pkg/exec.go b/internal/pkg/exec.go index 6b6964fd..fcbf1245 100644 --- a/internal/pkg/exec.go +++ b/internal/pkg/exec.go @@ -40,9 +40,6 @@ type ExecPath struct { W bool } -// SetSchedIdle is whether to set [ext.SCHED_IDLE] scheduling priority. -var SetSchedIdle bool - // GetArtifactFunc is the function signature of [FContext.GetArtifact]. type GetArtifactFunc func(Artifact) (*check.Absolute, unique.Handle[Checksum]) @@ -427,7 +424,6 @@ func (a *execArtifact) makeContainer( z.ParentPerm = 0700 z.HostNet = hostNet z.Hostname = "cure" - z.SetScheduler = SetSchedIdle z.SchedPolicy = ext.SCHED_IDLE if z.HostNet { z.Hostname = "cure-net" @@ -609,6 +605,7 @@ func (a *execArtifact) cure(f *FContext, hostNet bool) (err error) { ); err != nil { return } + z.SetScheduler = f.cache.flags&CSchedIdle != 0 var status io.Writer if status, err = f.GetStatusWriter(); err != nil { -- cgit v1.3.1