net/smc: move unhash before release of clcsock
authorUrsula Braun <ubraun@linux.ibm.com>
Thu, 11 Apr 2019 09:17:34 +0000 (11:17 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Jul 2019 07:53:44 +0000 (09:53 +0200)
commit3ddc2a10070675fc93cf36d0496ba5bf78ef667a
tree608052f2ec2798ecf5d673e43ed9f5293b9abd05
parentcd54dc4cd37d0b18280c29f2bf25ba08d6895b3c
net/smc: move unhash before release of clcsock

[ Upstream commit f61bca58f6c36e666c2b807697f25e5e98708162 ]

Commit <26d92e951fe0>
("net/smc: move unhash as early as possible in smc_release()")
fixes one occurrence in the smc code, but the same pattern exists
in other places. This patch covers the remaining occurrences and
makes sure, the unhash operation is done before the smc->clcsock is
released. This avoids a potential use-after-free in smc_diag_dump().

Reviewed-by: Karsten Graul <kgraul@linux.ibm.com>
Signed-off-by: Ursula Braun <ubraun@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/smc/af_smc.c