moby--moby/daemon/logger/journald
Cory Snider c3a6de9ec8 logger/journald: unlock OS threads
Managed containerd processes are executed with SysProcAttr.Pdeathsig set
to syscall.SIGKILL so that the managed containerd is automatically
killed along with the daemon. At least, that is the intention. In
practice, the signal is sent to the process when the creating _OS
thread_ dies! If a goroutine exits while locked to an OS thread, the Go
runtime will terminate the thread. If that thread happens to be the
same thread which the subprocess was started from, the subprocess will
be signaled. Prevent the journald driver from sometimes unintentionally
killing child processes by ensuring that all runtime.LockOSThread()
calls are paired with runtime.UnlockOSThread().

Signed-off-by: Cory Snider <csnider@mirantis.com>
2022-09-28 11:46:59 -04:00
..
internal golangci-lint: update to v1.49.0 2022-09-23 23:31:27 +02:00
doc.go logger/journald: simplify build constraints 2022-07-25 16:37:59 -04:00
journald.go golangci-lint: update to v1.49.0 2022-09-23 23:31:27 +02:00
journald_test.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
read.go logger/journald: unlock OS threads 2022-09-28 11:46:59 -04:00
read_test.go logger/journald: implement --follow correctly 2022-07-25 16:41:38 -04:00