aboutsummaryrefslogtreecommitdiffhomepage
path: root/container/init.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-08-23 11:06:19 +0900
committerOphestra <cat@gensokyo.uk>2025-08-23 11:07:16 +0900
commit1b3902df7814e0f5e19d88acdc4588f6da1c895f (patch)
tree8bcdf48a8620543116c12793ead576d0e20a3abf /container/init.go
parentea1e3ebae993a3d89302940dc1649b627c420aa1 (diff)
container/dispatcher: instrument each goroutine individually
Scheduler nondeterminism cannot be accounted for, so do this instead. There should not be any performance penalty as these calls are optimised out for direct. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'container/init.go')
-rw-r--r--container/init.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/container/init.go b/container/init.go
index 813b4ac5..39adefbc 100644
--- a/container/init.go
+++ b/container/init.go
@@ -333,7 +333,7 @@ func initEntrypoint(k syscallDispatcher, prepareLogger func(prefix string), setV
info := make(chan winfo, 1)
done := make(chan struct{})
- go func() {
+ go func(k syscallDispatcher) {
var (
err error
wpid = -2
@@ -360,7 +360,7 @@ func initEntrypoint(k syscallDispatcher, prepareLogger func(prefix string), setV
}
close(done)
- }()
+ }(k.new())
// handle signals to dump withheld messages
sig := make(chan os.Signal, 2)