podman/libpod
Paul Holzinger c1cf4b0d89
podman rm: handle case where conmon was killed
When conmon was killed podman rm -f currently fails but running it again
then works which doesn't really makes sense. We should properly remove
the contianer even if conmon is dead.

In fact the code already handles ErrConmonDead as stop error when we
remove the container but this error was never thrown anywhere. To fix
this throw ErrConmonDead instead of ErrInternal because that is not an
intenral error if something else killed conmon.

With this we can correctly cleanup and remove the container. The fact
that this works on the first try is important for quadlet units as they
only run the ExecStopPost= command once to remove it.

Fixes: #26640

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-07-15 17:15:19 +02:00
..
define Merge pull request #26232 from 2004joshua/buildxInspect 2025-06-12 08:02:31 +00:00
driver Bump Go module to v5 2024-02-08 09:35:39 -05:00
events libpod: log file doesn't need to be executable 2025-06-11 13:22:14 +02:00
layers
linkmode chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
lock ci: rm allow-unused from nolintlint settings 2025-03-31 12:27:55 -07:00
logs bump go to 1.22 2024-09-03 15:14:15 +02:00
plugin libpod: use fileutils.(Le|E)xists 2024-04-19 09:52:14 +02:00
shutdown Revert "libpod: remove shutdown.Unregister()" 2024-11-27 08:09:50 -05:00
boltdb_state.go libpod: use fileutils.(Le|E)xists 2024-04-19 09:52:14 +02:00
boltdb_state_internal.go Ignore result of EvalSymlinks on ENOENT 2024-07-11 09:39:56 -04:00
common_test.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
container.go Fix `podman inspect` to correctly handle log_size_max 2025-07-03 16:04:48 -04:00
container_api.go Add --env and --unsetenv to podman update. 2025-03-21 13:15:44 +01:00
container_commit.go api: Error checking before NULL dereference 2024-11-28 14:01:45 +03:00
container_config.go Fix `podman inspect` to correctly handle log_size_max 2025-07-03 16:04:48 -04:00
container_copy_common.go libpod: fix a few minor staticcheck warnings 2025-03-31 12:27:55 -07:00
container_copy_freebsd.go Mount volumes before copying into a container 2024-11-27 08:09:50 -05:00
container_copy_linux.go Mount volumes before copying into a container 2024-11-27 08:09:50 -05:00
container_exec.go Fix: Ensure HealthCheck exec session terminates on timeout 2025-05-12 17:01:35 +02:00
container_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
container_graph.go Add syncmap package and use it for graph stop/remove 2025-02-17 14:32:34 -05:00
container_graph_test.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
container_inspect.go Fix `podman inspect` to correctly handle log_size_max 2025-07-03 16:04:48 -04:00
container_inspect_freebsd.go libpod: fix HostConfig.Devices output from 'podman inspect' on FreeBSD 2024-09-02 11:21:35 +01:00
container_inspect_linux.go inspect: Ignore character devices for IO limits 2025-04-30 16:21:38 +02:00
container_internal.go podman rm: handle case where conmon was killed 2025-07-15 17:15:19 +02:00
container_internal_common.go artifact mount: add new name option to specify filename 2025-06-14 12:25:21 +02:00
container_internal_freebsd.go libpod: fix wastedassign warning on freebsd 2025-04-02 13:35:14 -07:00
container_internal_linux.go Fix the fd leaking to aardvark-dns. 2025-04-15 13:24:03 +02:00
container_internal_linux_test.go libpod: --user works with --hostuser entries 2025-04-07 18:11:06 +02:00
container_internal_test.go Switch all calls of assert.Nil to assert.NoError 2025-01-15 07:08:27 -05:00
container_linux.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
container_log.go libpod: log file use Wait() over event API 2024-11-01 18:53:08 +01:00
container_log_linux.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
container_log_unsupported.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
container_path_resolution.go Mount volumes before copying into a container 2024-11-27 08:09:50 -05:00
container_path_resolution_test.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
container_stat_common.go Mount volumes before copying into a container 2024-11-27 08:09:50 -05:00
container_stat_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
container_stat_linux.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
container_top_freebsd.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
container_top_linux.c libpod/container_top_linux.c: fix missing header 2024-06-27 10:50:17 +02:00
container_top_linux.go update golangci-lint to 1.60.1 2024-08-19 11:41:28 +02:00
container_top_unsupported.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
container_validate.go Replace podman pause image with rootfs. 2025-04-17 08:36:27 +02:00
diff.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
doc.go document that using libpod package directly is not supported 2022-03-23 19:05:29 +01:00
events.go Fix HealthCheck log destination, count, and size defaults 2025-03-12 21:27:00 +01:00
healthcheck.go Fix: Ensure HealthCheck exec session terminates on timeout 2025-05-12 17:01:35 +02:00
healthcheck_config.go Configure HealthCheck with `podman update` 2024-11-19 19:44:14 +01:00
healthcheck_linux.go report healthcheck start errors 2025-03-04 16:48:50 +01:00
healthcheck_nosystemd_linux.go libpod: do not leak systemd hc startup unit timer 2024-06-04 18:03:46 +02:00
healthcheck_unsupported.go libpod: do not leak systemd hc startup unit timer 2024-06-04 18:03:46 +02:00
info.go libpod: fix unconvert linter warning 2025-04-02 13:35:14 -07:00
info_freebsd.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
info_linux.go rootless: drop function ReadMappingsProc 2024-04-10 11:55:35 +02:00
info_test.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
kube.go Replace podman pause image with rootfs. 2025-04-17 08:36:27 +02:00
mounts_linux.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
networking_common.go fix network DB desync after failed connect/disconnect 2025-04-04 14:42:20 +02:00
networking_freebsd.go libpod: fix whitespace linter issue on freebsd 2025-04-02 13:35:14 -07:00
networking_linux.go libpod: setupNetNS() correctly mount netns 2024-09-20 15:19:22 +02:00
networking_linux_test.go bump go to 1.22 2024-09-03 15:14:15 +02:00
networking_machine.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
networking_pasta_linux.go libpod: use pasta Setup() over Setup2() 2024-10-30 13:35:56 +01:00
networking_slirp4netns.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
oci.go Remove persist directory when cleaning up Conmon files 2025-02-11 14:51:34 -05:00
oci_conmon.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
oci_conmon_attach_common.go fix race conditions in start/attach logic 2024-07-12 15:11:34 +02:00
oci_conmon_attach_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
oci_conmon_attach_linux.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
oci_conmon_common.go Fix `podman inspect` to correctly handle log_size_max 2025-07-03 16:04:48 -04:00
oci_conmon_exec_common.go Fix: Use SIGKILL instead of SIGTERM when ExecStopContainer timeout is 0 2025-05-12 17:01:42 +02:00
oci_conmon_exec_freebsd.go Cease using deprecated runc userlookup 2024-02-02 11:02:43 -05:00
oci_conmon_exec_linux.go Cease using deprecated runc userlookup 2024-02-02 11:02:43 -05:00
oci_conmon_freebsd.go libpod: intermediate mount if UID not mapped into the userns 2024-06-21 18:01:26 +02:00
oci_conmon_linux.go libpod: move linux-specific code to _linux.go 2025-04-02 13:35:14 -07:00
oci_missing.go Remove persist directory when cleaning up Conmon files 2025-02-11 14:51:34 -05:00
oci_util.go libpod: move linux-specific code to _linux.go 2025-04-02 13:35:14 -07:00
options.go libpod: remove deadcode 2025-06-26 19:37:16 +02:00
pod.go podman pod stats: fix race when ctr process exits 2024-07-22 10:30:42 +02:00
pod_api.go Refactor graph traversal & use for pod stop 2025-02-06 18:28:12 -05:00
pod_internal.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
pod_internal_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
pod_internal_linux.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
pod_status.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
pod_top_freebsd.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
pod_top_linux.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
reset.go bug: Correct Docker compat REST API image delete endpoint 2025-04-27 20:51:11 +10:00
rlimit_int64.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
rlimit_uint64.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
runtime.go libpod: remove deadcode 2025-06-26 19:37:16 +02:00
runtime_cstorage.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
runtime_ctr.go Recreate the Rootfs in mountStorage for infra-container. 2025-05-27 16:31:44 +02:00
runtime_ctr_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
runtime_ctr_linux.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
runtime_freebsd.go Detect unhandled reboots and require user intervention 2024-04-05 10:07:42 -04:00
runtime_img.go libpod: remove deadcode 2025-06-26 19:37:16 +02:00
runtime_linux.go Detect unhandled reboots and require user intervention 2024-04-05 10:07:42 -04:00
runtime_migrate.go libpod: fix a confusing error message from 'podman system reset' on FreeBSD 2025-02-11 15:13:29 +00:00
runtime_migrate_freebsd.go libpod: fix a confusing error message from 'podman system reset' on FreeBSD 2025-02-11 15:13:29 +00:00
runtime_migrate_linux.go libpod: fix a confusing error message from 'podman system reset' on FreeBSD 2025-02-11 15:13:29 +00:00
runtime_migrate_unsupported.go libpod: fix a confusing error message from 'podman system reset' on FreeBSD 2025-02-11 15:13:29 +00:00
runtime_pod.go Replace golang.org/x/exp/slices with slices from std 2024-04-23 11:16:40 +02:00
runtime_pod_common.go fix issues found by nilness 2025-05-13 17:20:10 +02:00
runtime_pod_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
runtime_pod_linux.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
runtime_pre_go1.20.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
runtime_renumber.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
runtime_test.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
runtime_volume.go libpod: remove duplicated HasVolume() check 2024-08-15 11:07:27 +02:00
runtime_volume_common.go Apply De Morgan's law 2025-03-31 12:27:55 -07:00
runtime_worker.go create runtime's worker queue before queuing any job 2024-07-09 11:15:29 +02:00
service.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
sqlite_state.go Fix SQLite volume lookup queries matching too liberally 2025-05-28 13:10:10 -04:00
sqlite_state_internal.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
state.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
state_test.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
stats_common.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
stats_freebsd.go libpod: add a nolint:wastedassign annotation 2025-04-02 13:35:14 -07:00
stats_linux.go libpod: stats catch ErrStatCgroup 2025-04-11 17:19:38 +02:00
storage.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
util.go libpod: remove deadcode 2025-06-26 19:37:16 +02:00
util_freebsd.go libpod: rm some unused freebsd code 2025-04-02 13:35:14 -07:00
util_linux.go replace deprecated selinux/label calls 2025-03-24 17:44:43 +01:00
util_linux_test.go replace deprecated selinux/label calls 2025-03-24 17:44:43 +01:00
util_test.go libpod: fix mount order for "/" volume 2025-05-20 15:52:27 +02:00
volume.go Refactor `volume import` to support the remote client 2025-06-23 13:42:22 -04:00
volume_inspect.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
volume_internal.go Only stop chowning volumes once they're not empty 2024-05-22 17:47:01 -04:00
volume_internal_common.go Bump Go module to v5 2024-02-08 09:35:39 -05:00
volume_internal_freebsd.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00
volume_internal_linux.go chore: delete obsolete // +build lines 2024-01-04 11:53:38 +02:00