summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2008-11-13 13:22:34 -0600
committerDavid Teigland <teigland@redhat.com>2008-11-13 13:22:34 -0600
commit278afcbf4fe964230eba67f8fb8235e8b7e63ffb (patch)
tree64bcfe585256f96f468e29af9961ddf4c2dcc71d
parent3edac25f2e8ac8c2a84904c140e1aeb434e73e75 (diff)
downloadlinux-278afcbf4fe964230eba67f8fb8235e8b7e63ffb.tar.gz
linux-278afcbf4fe964230eba67f8fb8235e8b7e63ffb.tar.bz2
linux-278afcbf4fe964230eba67f8fb8235e8b7e63ffb.zip
dlm: fix shutdown cleanup
Fixes a regression from commit 0f8e0d9a317406612700426fad3efab0b7bbc467, "dlm: allow multiple lockspace creates". An extraneous 'else' slipped into a code fragment being moved from release_lockspace() to dlm_release_lockspace(). The result of the unwanted 'else' is that dlm threads and structures are not stopped and cleaned up when the final dlm lockspace is removed. Trying to create a new lockspace again afterward will fail with "kmem_cache_create: duplicate cache dlm_conn" because the cache was not previously destroyed. Signed-off-by: David Teigland <teigland@redhat.com>
-rw-r--r--fs/dlm/lockspace.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/dlm/lockspace.c b/fs/dlm/lockspace.c
index d910501de6d2..8d86b7960f0d 100644
--- a/fs/dlm/lockspace.c
+++ b/fs/dlm/lockspace.c
@@ -812,7 +812,7 @@ int dlm_release_lockspace(void *lockspace, int force)
error = release_lockspace(ls, force);
if (!error)
ls_count--;
- else if (!ls_count)
+ if (!ls_count)
threads_stop();
mutex_unlock(&ls_lock);