summaryrefslogtreecommitdiff
path: root/fs/dlm
diff options
context:
space:
mode:
authorAlexander Aring <aahringo@redhat.com>2021-05-21 22:08:38 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-07-14 17:55:58 +0300
commit7425fe57d94fd6fd164db47bda0760354fb289ba (patch)
treea5d700fc4f11f79eab40cc617b9830ea6adc66e8 /fs/dlm
parent747b654e406922b0c892a5c9ffb81bbb497fa648 (diff)
downloadlinux-7425fe57d94fd6fd164db47bda0760354fb289ba.tar.xz
fs: dlm: cancel work sync othercon
[ Upstream commit c6aa00e3d20c2767ba3f57b64eb862572b9744b3 ] These rx tx flags arguments are for signaling close_connection() from which worker they are called. Obviously the receive worker cannot cancel itself and vice versa for swork. For the othercon the receive worker should only be used, however to avoid deadlocks we should pass the same flags as the original close_connection() was called. Signed-off-by: Alexander Aring <aahringo@redhat.com> Signed-off-by: David Teigland <teigland@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'fs/dlm')
-rw-r--r--fs/dlm/lowcomms.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c
index 44e2716ac158..0c78fdfb1f6f 100644
--- a/fs/dlm/lowcomms.c
+++ b/fs/dlm/lowcomms.c
@@ -599,7 +599,7 @@ static void close_connection(struct connection *con, bool and_other,
}
if (con->othercon && and_other) {
/* Will only re-enter once. */
- close_connection(con->othercon, false, true, true);
+ close_connection(con->othercon, false, tx, rx);
}
con->rx_leftover = 0;