linux/net/smc
Karsten Graul 6889b36da7 net/smc: don't wait for send buffer space when data was already sent
When there is no more send buffer space and at least 1 byte was already
sent then return to user space. The wait is only done when no data was
sent by the sendmsg() call.
This fixes smc_tx_sendmsg() which tried to always send all user data and
started to wait for free send buffer space when needed. During this wait
the user space program was blocked in the sendmsg() call and hence not
able to receive incoming data. When both sides were in such a situation
then the connection stalled forever.

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>
2019-02-01 14:45:44 -08:00
..
af_smc.c smc: move unhash as early as possible in smc_release() 2019-01-07 14:40:27 -05:00
Kconfig net/smc: remove Kconfig warning 2017-07-29 11:22:58 -07:00
Makefile net/smc: add base infrastructure for SMC-D and ISM 2018-06-30 20:42:25 +09:00
smc_cdc.c net/smc: atomic SMCD cursor handling 2018-11-21 16:14:56 -08:00
smc_cdc.h net/smc: atomic SMCD cursor handling 2018-11-21 16:14:56 -08:00
smc_clc.c net/smc: fix another sizeof to int comparison 2019-02-01 14:45:44 -08:00
smc_clc.h net/smc: short wait for late smc_clc_wait_msg 2018-11-23 17:20:32 -08:00
smc_close.c net/smc: enable fallback for connection abort in state INIT 2018-09-18 20:11:43 -07:00
smc_close.h net/smc: replace sock_put worker by socket refcounting 2018-01-26 10:41:56 -05:00
smc_core.c net/smc: prevent races between smc_lgr_terminate() and smc_conn_free() 2019-02-01 14:45:44 -08:00
smc_core.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-11-24 17:01:43 -08:00
smc_diag.c net/smc: provide fallback reason code 2018-07-25 22:25:53 -07:00
smc_ib.c RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr 2018-08-17 16:45:51 -06:00
smc_ib.h net/smc: use correct vlan gid of RoCE device 2018-07-25 22:25:53 -07:00
smc_ism.c net/smc: add SMC-D shutdown signal 2018-11-21 16:14:56 -08:00
smc_ism.h net/smc: add SMC-D shutdown signal 2018-11-21 16:14:56 -08:00
smc_llc.c net/smc: add infrastructure to send delete rkey messages 2018-11-23 17:20:32 -08:00
smc_llc.h net/smc: add infrastructure to send delete rkey messages 2018-11-23 17:20:32 -08:00
smc_pnet.c net/smc: allow 16 byte pnetids in netlink policy 2019-02-01 14:45:44 -08:00
smc_pnet.h net/smc: use correct vlan gid of RoCE device 2018-07-25 22:25:53 -07:00
smc_rx.c net/smc: remove local variable page in smc_rx_splice() 2018-07-23 10:57:14 -07:00
smc_rx.h smc: add support for splice() 2018-05-04 11:45:06 -04:00
smc_tx.c net/smc: don't wait for send buffer space when data was already sent 2019-02-01 14:45:44 -08:00
smc_tx.h net/smc: eliminate cursor read and write calls 2018-07-23 10:57:14 -07:00
smc_wr.c net/smc: use after free fix in smc_wr_tx_put_slot() 2018-11-21 16:14:56 -08:00
smc_wr.h net/smc: Simplify ib_post_(send|recv|srq_recv)() calls 2018-07-24 16:06:37 -06:00
smc.h net/smc: fix TCP fallback socket release 2018-12-18 22:02:51 -08:00