]> git.proxmox.com Git - mirror_spl-debian.git/blobdiff - module/splat/splat-kmem.c
Fix kmem:slab_overcommit regression test locking
[mirror_spl-debian.git] / module / splat / splat-kmem.c
index 6957f1f1c29c68cd7dd2bfdf116f5b93c40433e9..c743dd163ddd247a1e94073bfba5282ed6e1c861 100644 (file)
@@ -418,9 +418,10 @@ splat_kmem_cache_test_reclaim(void *priv)
        for (i = 0; i < kcp->kcp_kct_count; i++) {
                spin_lock(&kcp->kcp_lock);
                kct = kcp->kcp_kct[i];
-               spin_unlock(&kcp->kcp_lock);
-               if (!kct)
+               if (!kct) {
+                       spin_unlock(&kcp->kcp_lock);
                        continue;
+               }
 
                spin_lock(&kct->kct_lock);
                count = kct->kct_kcd_count * SPLAT_KMEM_OBJ_RECLAIM / 100;
@@ -435,6 +436,7 @@ splat_kmem_cache_test_reclaim(void *priv)
                        }
                }
                spin_unlock(&kct->kct_lock);
+               spin_unlock(&kcp->kcp_lock);
        }
 
        return;