[rds-devel] [PATCH net 0/3] RDS: TCP: socket locking RDS packet assembly fixes
Sowmini Varadhan
sowmini.varadhan at oracle.com
Sat Jun 4 13:59:57 PDT 2016
This three part patchset fixes bugs in synchronization between
rds_tcp_accept_one() and the rds-tcp send/recv path.
Patch 1 ensures that the lock_sock() is taken appropriately
and the RDS datagram reassembly state is reset to synchronize
with the receive path.
Patch 2 ensures that partially sent RDS datagrams will get
retransmitted after rds_tcp_accept_one() switches sockets.
Patch 3 fixes a race window which would prematurely re-enable
rds_send_xmit() before the rds_tcp_connection setup has been
completed in rds_tcp_accept_one().
Sowmini Varadhan (3):
RDS: TCP: Add/use rds_tcp_reset_callbacks to reset tcp socket safely
RDS: TCP: Retransmit half-sent datagrams when switching sockets in
rds_tcp_reset_callbacks
RDS: TCP: fix race windows in send-path quiescence by
rds_tcp_accept_one()
net/rds/rds.h | 2 +
net/rds/send.c | 1 +
net/rds/tcp.c | 78 +++++++++++++++++++++++++++++++++++++++++++++++--
net/rds/tcp.h | 1 +
net/rds/tcp_connect.c | 2 +-
net/rds/tcp_listen.c | 20 ++++--------
net/rds/threads.c | 10 +++++-
7 files changed, 95 insertions(+), 19 deletions(-)
More information about the rds-devel
mailing list