kernel-hacking-2024-linux-s.../net/smc
Karsten Graul 63673597cc net/smc: protect smc ib device initialization
Before an smc ib device is used the first time for an smc link it is
lazily initialized. When there are 2 active link groups and a new ib
device is brought online then it might happen that 2 link creations run
in parallel and enter smc_ib_setup_per_ibdev(). Both allocate new send
and receive completion queues on the device, but only one set of them
keeps assigned and the other leaks.
Fix that by protecting the setup and cleanup code using a mutex.

Reviewed-by: Ursula Braun <ubraun@linux.ibm.com>
Fixes: f3c1deddb2 ("net/smc: separate function for link initialization")
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-07-19 15:30:22 -07:00
..
af_smc.c net/smc: fix link lookup for new rdma connections 2020-07-19 15:30:22 -07:00
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
Makefile
smc.h net/smc: handle incoming CDC validation message 2020-05-04 10:54:39 -07:00
smc_cdc.c net/smc: pre-fetch send buffer outside of send_lock 2020-05-30 18:12:25 -07:00
smc_cdc.h net/smc: pre-fetch send buffer outside of send_lock 2020-05-30 18:12:25 -07:00
smc_clc.c net/smc: tolerate future SMCD versions 2020-07-08 12:35:15 -07:00
smc_clc.h net/smc: tolerate future SMCD versions 2020-07-08 12:35:15 -07:00
smc_close.c
smc_close.h
smc_core.c net/smc: clear link during SMC client link down processing 2020-07-19 15:30:22 -07:00
smc_core.h net/smc: separate LLC wait queues for flow and messages 2020-07-08 12:35:15 -07:00
smc_diag.c
smc_ib.c net/smc: protect smc ib device initialization 2020-07-19 15:30:22 -07:00
smc_ib.h net/smc: protect smc ib device initialization 2020-07-19 15:30:22 -07:00
smc_ism.c net/smc: switch smcd_dev_list spinlock to mutex 2020-07-08 12:35:15 -07:00
smc_ism.h net/smc: switch smcd_dev_list spinlock to mutex 2020-07-08 12:35:15 -07:00
smc_llc.c net/smc: handle unexpected response types for confirm link 2020-07-19 15:30:22 -07:00
smc_llc.h net/smc: log important pnetid and state change events 2020-05-05 12:56:52 -07:00
smc_netns.h
smc_pnet.c net/smc: switch smcd_dev_list spinlock to mutex 2020-07-08 12:35:15 -07:00
smc_pnet.h
smc_rx.c fs: make the pipe_buf_operations ->confirm operation optional 2020-05-20 12:11:26 -04:00
smc_rx.h
smc_tx.c net/smc: switch connections to alternate link 2020-05-04 10:54:39 -07:00
smc_tx.h
smc_wr.c net/smc: fix work request handling 2020-07-08 12:35:15 -07:00
smc_wr.h net/smc: wait for departure of an IB message 2020-05-04 10:54:39 -07:00