From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org,
Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>,
David Teigland <teigland@redhat.com>
Subject: [PATCH 4.4 23/25] dlm: free workqueues after the connections
Date: Fri, 21 Oct 2016 11:16:14 +0200 [thread overview]
Message-ID: <20161021091414.425690335@linuxfoundation.org> (raw)
In-Reply-To: <20161021091413.053290730@linuxfoundation.org>
4.4-stable review patch. If anyone has any objections, please let me know.
------------------
From: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
commit 3a8db79889ce16930aff19b818f5b09651bb7644 upstream.
After backporting commit ee44b4bc054a ("dlm: use sctp 1-to-1 API")
series to a kernel with an older workqueue which didn't use RCU yet, it
was noticed that we are freeing the workqueues in dlm_lowcomms_stop()
too early as free_conn() will try to access that memory for canceling
the queued works if any.
This issue was introduced by commit 0d737a8cfd83 as before it such
attempt to cancel the queued works wasn't performed, so the issue was
not present.
This patch fixes it by simply inverting the free order.
Fixes: 0d737a8cfd83 ("dlm: fix race while closing connections")
Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
fs/dlm/lowcomms.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
--- a/fs/dlm/lowcomms.c
+++ b/fs/dlm/lowcomms.c
@@ -1607,16 +1607,12 @@ void dlm_lowcomms_stop(void)
mutex_lock(&connections_lock);
dlm_allow_conn = 0;
foreach_conn(stop_conn);
+ clean_writequeues();
+ foreach_conn(free_conn);
mutex_unlock(&connections_lock);
work_stop();
- mutex_lock(&connections_lock);
- clean_writequeues();
-
- foreach_conn(free_conn);
-
- mutex_unlock(&connections_lock);
kmem_cache_destroy(con_cache);
}
next prev parent reply other threads:[~2016-10-21 9:17 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20161021091628uscas1p21e03f35d4481162f8066d9056c8aeb3c@uscas1p2.samsung.com>
2016-10-21 9:15 ` [PATCH 4.4 00/25] 4.4.27-stable review Greg Kroah-Hartman
2016-10-21 9:15 ` [PATCH 4.4 01/25] serial: 8250_dw: Check the data->pclk when get apb_pclk Greg Kroah-Hartman
2016-10-21 9:15 ` [PATCH 4.4 02/25] btrfs: assign error values to the correct bio structs Greg Kroah-Hartman
2016-10-21 9:15 ` [PATCH 4.4 03/25] drivers: base: dma-mapping: page align the size when unmap_kernel_range Greg Kroah-Hartman
2016-10-21 9:15 ` [PATCH 4.4 04/25] fuse: listxattr: verify xattr list Greg Kroah-Hartman
2016-10-21 9:15 ` [PATCH 4.4 06/25] fuse: fix killing s[ug]id in setattr Greg Kroah-Hartman
2016-10-21 9:15 ` [PATCH 4.4 07/25] i40e: avoid NULL pointer dereference and recursive errors on early PCI error Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 09/25] ASoC: Intel: Atom: add a missing star in a memcpy call Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 10/25] reiserfs: Unlock superblock before calling reiserfs_quota_on_mount() Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 11/25] reiserfs: switch to generic_{get,set,remove}xattr() Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 12/25] async_pq_val: fix DMA memory leak Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 13/25] scsi: arcmsr: Buffer overflow in arcmsr_iop_message_xfer() Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 14/25] scsi: arcmsr: Simplify user_len checking Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 15/25] scsi: ibmvfc: Fix I/O hang when port is not mapped Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 16/25] ext4: enforce online defrag restriction for encrypted files Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 17/25] ext4: reinforce check of i_dtime when clearing high fields of uid and gid Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 18/25] ext4: fix memory leak in ext4_insert_range() Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 19/25] ext4: allow DAX writeback for hole punch Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 20/25] ext4: release bh in make_indexed_dir Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 21/25] crypto: ghash-generic - move common definitions to a new header file Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 22/25] crypto: vmx - Fix memory corruption caused by p8_ghash Greg Kroah-Hartman
2016-10-21 9:16 ` Greg Kroah-Hartman [this message]
2016-10-21 9:16 ` [PATCH 4.4 24/25] vfs: move permission checking into notify_change() for utimes(NULL) Greg Kroah-Hartman
2016-10-21 9:16 ` [PATCH 4.4 25/25] cfq: fix starvation of asynchronous writes Greg Kroah-Hartman
2016-10-21 15:44 ` [PATCH 4.4 00/25] 4.4.27-stable review Shuah Khan
2016-10-21 19:16 ` Guenter Roeck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161021091414.425690335@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.leitner@gmail.com \
--cc=stable@vger.kernel.org \
--cc=teigland@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).