diff options
author | Matthew Heon <matthew.heon@pm.me> | 2019-02-18 16:20:02 -0500 |
---|---|---|
committer | Matthew Heon <matthew.heon@pm.me> | 2019-02-21 10:51:42 -0500 |
commit | d2b77f8b3397b3ffbbade6e04e37b291105028aa (patch) | |
tree | 40d0e6423be80a66e5ea848a89fe23d4fda90d5e /libpod/options.go | |
parent | e0a6873d78be969a50a1939f52c81264b9547ac0 (diff) | |
download | podman-d2b77f8b3397b3ffbbade6e04e37b291105028aa.tar.gz podman-d2b77f8b3397b3ffbbade6e04e37b291105028aa.tar.bz2 podman-d2b77f8b3397b3ffbbade6e04e37b291105028aa.zip |
Do not make renumber shut down the runtime
The original intent behind the requirement was to ensure that, if
two SHM lock structs were open at the same time, we should not
make such a runtime available to the user, and should clean it up
instead.
It turns out that we don't even need to open a second SHM lock
struct - if we get an error mapping the first one due to a lock
count mismatch, we can just delete it, and it cleans itself up
when it errors. So there's no reason not to return a valid
runtime.
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
Diffstat (limited to 'libpod/options.go')
-rw-r--r-- | libpod/options.go | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/libpod/options.go b/libpod/options.go index 4a3dd582d..7c37fd65b 100644 --- a/libpod/options.go +++ b/libpod/options.go @@ -394,14 +394,10 @@ func WithDefaultInfraCommand(cmd string) RuntimeOption { } } -// WithRenumber instructs libpod to perform a lock renumbering instead of a -// normal init. -// When this is specified, no valid runtime will be returned by NewRuntime. -// Instead, libpod will reinitialize lock numbers on all pods and containers, -// shut down the runtime, and return. -// Renumber is intended to be used from a dedicated entrypoint, where it will -// handle a changed maximum number of locks and return, with the program -// exiting after that. +// WithRenumber instructs libpod to perform a lock renumbering while +// initializing. This will handle migrations from early versions of libpod with +// file locks to newer versions with SHM locking, as well as changes in the +// number of configured locks. func WithRenumber() RuntimeOption { return func(rt *Runtime) error { if rt.valid { |