runtime: unpause the container before killing it

the new version of runc has the same check in place and it
automatically resume the container if it is paused.  So when Podman
tries to resume it again, it fails since the container is not in the
paused state.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2100740

[NO NEW TESTS NEEDED] the CI doesn't use a new runc on cgroup v1 systems.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
Giuseppe Scrivano
2022-06-28 22:42:53 +02:00
committed by Ed Santiago
parent 1602793c62
commit e9cf473549

View File

@ -624,9 +624,6 @@ func (r *Runtime) removeContainer(ctx context.Context, c *Container, force, remo
}
if c.state.State == define.ContainerStatePaused {
if err := c.ociRuntime.KillContainer(c, 9, false); err != nil {
return err
}
isV2, err := cgroups.IsCgroup2UnifiedMode()
if err != nil {
return err
@ -637,6 +634,9 @@ func (r *Runtime) removeContainer(ctx context.Context, c *Container, force, remo
return err
}
}
if err := c.ociRuntime.KillContainer(c, 9, false); err != nil {
return err
}
// Need to update container state to make sure we know it's stopped
if err := c.waitForExitFileAndSync(); err != nil {
return err