mirror of
https://github.com/containers/podman.git
synced 2025-12-12 17:57:31 +08:00
The OCI Runtime's KillContainer interface can modify container state (if the signal fails to send, as it would if the container failed immediately after starting, we will update state to pick up the fact that the container exited). As such, it can edit the DB, and needs to be run locked. There are fortunately only a few places where this function is used, and most of them are already safe. The only exception is StartAndAttach(), which does a SIGWINCH in an unlocked portion of the function. Fortunately it's a goroutine, so just add a lock and defer unlock and it should be fixed. [NO NEW TESTS NEEDED] I have no idea how to induce a scenario that would cause this consistently. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
31 KiB
31 KiB