diff options
author | David Teigland <teigland@redhat.com> | 2008-11-13 20:22:34 +0100 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2008-11-13 20:22:34 +0100 |
commit | 278afcbf4fe964230eba67f8fb8235e8b7e63ffb (patch) | |
tree | 64bcfe585256f96f468e29af9961ddf4c2dcc71d /fs | |
parent | Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rol... (diff) | |
download | linux-278afcbf4fe964230eba67f8fb8235e8b7e63ffb.tar.xz 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>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/dlm/lockspace.c | 2 |
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); |