diff options
author | Karsten Graul <kgraul@linux.ibm.com> | 2019-01-30 18:51:02 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-12-05 15:37:57 +0100 |
commit | bbd45bd490f0a71a59c364d6fc664c1086771721 (patch) | |
tree | eec8f9a27ea2cd390318921f8f9008560fc1dfc8 /include | |
parent | b89c62555ab774d816c7b3d341cfb9f3b27c7a59 (diff) |
net/smc: prevent races between smc_lgr_terminate() and smc_conn_free()
[ Upstream commit 77f838ace755d2f466536c44dac6c856f62cd901 ]
To prevent races between smc_lgr_terminate() and smc_conn_free() add an
extra check of the lgr field before accessing it, and cancel a delayed
free_work when a new smc connection is created.
This fixes the problem that free_work cleared the lgr variable but
smc_lgr_terminate() or smc_conn_free() still access it in parallel.
Signed-off-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>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions