]> git.baikalelectronics.ru Git - kernel.git/commit
fs: dlm: fix race setting stop tx flag
authorAlexander Aring <aahringo@redhat.com>
Thu, 12 Jan 2023 22:10:34 +0000 (17:10 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Mar 2023 07:50:19 +0000 (08:50 +0100)
commitc8b7b4c567d9fc3dfa69f7f19c8c24ec31acabc4
tree268586ebfded537368eb8e2a186df06fc34cac1a
parent771d8f27940b5e8131a05afcca98c5de3445f4ed
fs: dlm: fix race setting stop tx flag

[ Upstream commit bce6bc07619627064c3b997e13298de4882dddd4 ]

This patch sets the stop tx flag before we commit the dlm message.
This flag will report about unexpected transmissions after we
send the DLM_FIN message out, which should be the last message sent.
When we commit the dlm fin message, it could be that we already
got an ack back and the CLOSED state change already happened.
We should not set this flag when we are in CLOSED state. To avoid this
race we simply set the tx flag before the state change can be in
progress by moving it before dlm_midcomms_commit_mhandle().

Cc: stable@vger.kernel.org
Fixes: 9c99c76781ff ("fs: dlm: add reliable connection if reconnect")
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/dlm/midcomms.c