]>
Commit | Line | Data |
---|---|---|
2cb7cef9 BS |
1 | From: Coly Li <coly.li@suse.de> |
2 | Author: David Teigland <teigland@redhat.com> | |
3 | References: bnc#457213 | |
4 | Subject: dlm: fix shutdown cleanup | |
5 | ||
6 | Fixes a regression from commit 0f8e0d9a317406612700426fad3efab0b7bbc467, | |
7 | "dlm: allow multiple lockspace creates". | |
8 | ||
9 | An extraneous 'else' slipped into a code fragment being moved from | |
10 | release_lockspace() to dlm_release_lockspace(). The result of the | |
11 | unwanted 'else' is that dlm threads and structures are not stopped | |
12 | and cleaned up when the final dlm lockspace is removed. Trying to | |
13 | create a new lockspace again afterward will fail with | |
14 | "kmem_cache_create: duplicate cache dlm_conn" because the cache | |
15 | was not previously destroyed. | |
16 | ||
17 | Signed-off-by: David Teigland <teigland@redhat.com> | |
18 | Signed-off-by: Coly Li <coly.li@suse.de> | |
19 | --- | |
20 | --- | |
21 | fs/dlm/lockspace.c | 2 +- | |
22 | 1 file changed, 1 insertion(+), 1 deletion(-) | |
23 | ||
24 | --- a/fs/dlm/lockspace.c | |
25 | +++ b/fs/dlm/lockspace.c | |
26 | @@ -784,7 +784,7 @@ int dlm_release_lockspace(void *lockspac | |
27 | error = release_lockspace(ls, force); | |
28 | if (!error) | |
29 | ls_count--; | |
30 | - else if (!ls_count) | |
31 | + if (!ls_count) | |
32 | threads_stop(); | |
33 | mutex_unlock(&ls_lock); | |
34 |