linux-stable/net/smc
Guangguan Wang dc25553cc6 net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending
[ Upstream commit f3c46e41b3 ]

Non blocking sendmsg will return -EAGAIN when any signal pending
and no send space left, while non blocking recvmsg return -EINTR
when signal pending and no data received. This may makes confused.
As TCP returns -EAGAIN in the conditions described above. Align the
behavior of smc with TCP.

Fixes: 846e344eb7 ("net/smc: add receive timeout check")
Signed-off-by: Guangguan Wang <guangguan.wang@linux.alibaba.com>
Reviewed-by: Tony Lu <tonylu@linux.alibaba.com>
Acked-by: Karsten Graul <kgraul@linux.ibm.com>
Link: https://lore.kernel.org/r/20220512030820.73848-1-guangguan.wang@linux.alibaba.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-05-18 09:18:06 +02:00
..
af_smc.c net/smc: Don't call clcsock shutdown twice when smc shutdown 2021-12-08 08:46:49 +01:00
Kconfig
Makefile
smc.h net/smc: fix TCP fallback socket release 2019-01-09 17:14:46 +01:00
smc_cdc.c
smc_cdc.h
smc_clc.c
smc_clc.h
smc_close.c net/smc: Keep smc_close_final rc during active close 2021-12-08 08:46:55 +01:00
smc_close.h
smc_core.c net/smc: correct settings of RMB window update limit 2022-04-20 09:08:27 +02:00
smc_core.h
smc_diag.c net/smc: fix leak of kernel memory to user space 2020-02-28 16:36:09 +01:00
smc_ib.c net/smc: check for valid ib_client_data 2020-03-20 10:54:20 +01:00
smc_ib.h
smc_llc.c net/smc: use link_id of server in confirm link reply 2018-05-30 07:52:07 +02:00
smc_llc.h
smc_pnet.c
smc_pnet.h
smc_rx.c net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending 2022-05-18 09:18:06 +02:00
smc_rx.h
smc_tx.c net/smc: make sure EPOLLOUT is raised 2019-09-06 10:20:50 +02:00
smc_tx.h
smc_wr.c net/smc: use after free fix in smc_wr_tx_put_slot() 2019-12-17 20:38:01 +01:00
smc_wr.h net/smc: pay attention to MAX_ORDER for CQ entries 2018-05-30 07:52:32 +02:00