summaryrefslogtreecommitdiff
path: root/libpod/runtime_cstorage.go
diff options
context:
space:
mode:
authorMatthew Heon <mheon@redhat.com>2022-02-22 11:05:26 -0500
committerMatthew Heon <mheon@redhat.com>2022-02-22 11:05:26 -0500
commit4a60319ecb833fd4afd4ef32b3ca49c377a94b5c (patch)
treef132003f65fee6e2178f96c8a289ee97a41dfe5b /libpod/runtime_cstorage.go
parentfab82a7c9ca3821c2b4496f9e9f6bfc8b2aff53d (diff)
downloadpodman-4a60319ecb833fd4afd4ef32b3ca49c377a94b5c.tar.gz
podman-4a60319ecb833fd4afd4ef32b3ca49c377a94b5c.tar.bz2
podman-4a60319ecb833fd4afd4ef32b3ca49c377a94b5c.zip
Remove the runtime lock
This primarily served to protect us against shutting down the Libpod runtime while operations (like creating a container) were happening. However, it was very inconsistently implemented (a lot of our longer-lived functions, like pulling images, just didn't implement it at all...) and I'm not sure how much we really care about this very-specific error case? Removing it also removes a lot of potential deadlocks, which is nice. [NO NEW TESTS NEEDED] Signed-off-by: Matthew Heon <mheon@redhat.com>
Diffstat (limited to 'libpod/runtime_cstorage.go')
-rw-r--r--libpod/runtime_cstorage.go12
1 files changed, 0 insertions, 12 deletions
diff --git a/libpod/runtime_cstorage.go b/libpod/runtime_cstorage.go
index 026cab3c5..1c528e1b8 100644
--- a/libpod/runtime_cstorage.go
+++ b/libpod/runtime_cstorage.go
@@ -21,9 +21,6 @@ type StorageContainer struct {
// ListStorageContainers lists all containers visible to c/storage.
func (r *Runtime) ListStorageContainers() ([]*StorageContainer, error) {
- r.lock.RLock()
- defer r.lock.RUnlock()
-
finalCtrs := []*StorageContainer{}
ctrs, err := r.store.Containers()
@@ -61,15 +58,6 @@ func (r *Runtime) StorageContainer(idOrName string) (*storage.Container, error)
// Accepts ID or full name of container.
// If force is set, the container will be unmounted first to ensure removal.
func (r *Runtime) RemoveStorageContainer(idOrName string, force bool) error {
- r.lock.Lock()
- defer r.lock.Unlock()
-
- return r.removeStorageContainer(idOrName, force)
-}
-
-// Internal function to remove the container storage without
-// locking the runtime.
-func (r *Runtime) removeStorageContainer(idOrName string, force bool) error {
targetID, err := r.store.Lookup(idOrName)
if err != nil {
if errors.Cause(err) == storage.ErrLayerUnknown {