diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-10-10 16:58:06 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-10-10 16:58:06 -0400 |
commit | 6763afe4b9f39142bda2a92d69e62fe85f67251c (patch) | |
tree | 05e5a6c4bc570ca2aff5b9e4bc518bc106ae7a75 | |
parent | 8dfb790b15e779232d5d4e3f0102af2bea21ca55 (diff) | |
parent | 3a8db79889ce16930aff19b818f5b09651bb7644 (diff) |
Merge tag 'dlm-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm
Pull dlm fix from David Teigland:
"This includes a bug fix for a bad memory access during workqueue
cleanup, which can happen while shutting down the dlm networking
layer"
* tag 'dlm-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
dlm: free workqueues after the connections
-rw-r--r-- | fs/dlm/lowcomms.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c index 963016c8f3d1..609998de533e 100644 --- a/fs/dlm/lowcomms.c +++ b/fs/dlm/lowcomms.c | |||
@@ -1656,16 +1656,12 @@ void dlm_lowcomms_stop(void) | |||
1656 | mutex_lock(&connections_lock); | 1656 | mutex_lock(&connections_lock); |
1657 | dlm_allow_conn = 0; | 1657 | dlm_allow_conn = 0; |
1658 | foreach_conn(stop_conn); | 1658 | foreach_conn(stop_conn); |
1659 | clean_writequeues(); | ||
1660 | foreach_conn(free_conn); | ||
1659 | mutex_unlock(&connections_lock); | 1661 | mutex_unlock(&connections_lock); |
1660 | 1662 | ||
1661 | work_stop(); | 1663 | work_stop(); |
1662 | 1664 | ||
1663 | mutex_lock(&connections_lock); | ||
1664 | clean_writequeues(); | ||
1665 | |||
1666 | foreach_conn(free_conn); | ||
1667 | |||
1668 | mutex_unlock(&connections_lock); | ||
1669 | kmem_cache_destroy(con_cache); | 1665 | kmem_cache_destroy(con_cache); |
1670 | } | 1666 | } |
1671 | 1667 | ||