OpenCloudOS-Kernel/net/rds
Tina Yang 550a8002e4 RDS: Fix locking in rds_send_drop_to()
It seems rds_send_drop_to() called
__rds_rdma_send_complete(rs, rm, RDS_RDMA_CANCELED)
with only rds_sock lock, but not rds_message lock. It raced with
other threads that is attempting to modify the rds_message as well,
such as from within rds_rdma_send_complete().

Signed-off-by: Tina Yang <tina.yang@oracle.com>
Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-03-16 21:16:58 -07:00
..
Kconfig RDS: Modularize RDMA and TCP transports 2009-08-23 19:13:09 -07:00
Makefile RDS: Modularize RDMA and TCP transports 2009-08-23 19:13:09 -07:00
af_rds.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
bind.c RDS: Add a debug message suggesting to load transport modules 2009-08-23 19:13:14 -07:00
cong.c RDS: Fix congestion issues for loopback 2010-03-16 21:16:55 -07:00
connection.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
ib.c RDMA/cm: fix loopback address support 2009-11-19 13:26:06 -08:00
ib.h RDS/IB+IW: Move recv processing to a tasklet 2009-10-30 15:06:39 -07:00
ib_cm.c RDS: Turn down alarming reconnect messages 2010-03-16 21:16:57 -07:00
ib_rdma.c RDS: Workaround for in-use MRs on close causing crash 2010-03-16 21:16:56 -07:00
ib_recv.c RDS: Do not BUG() on error returned from ib_post_send 2010-03-16 21:16:53 -07:00
ib_ring.c RDS/IW+IB: Set recv ring low water mark to 1/2 full. 2009-04-09 17:21:14 -07:00
ib_send.c RDS: Fix congestion issues for loopback 2010-03-16 21:16:55 -07:00
ib_stats.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-09-15 09:39:44 -07:00
ib_sysctl.c sysctl: Drop & in front of every proc_handler. 2009-11-18 08:37:40 -08:00
info.c RDS: Export symbols from core RDS 2009-08-23 19:13:07 -07:00
info.h RDS: Info and stats 2009-02-26 23:39:25 -08:00
iw.c RDMA/cm: fix loopback address support 2009-11-19 13:26:06 -08:00
iw.h RDS/IB+IW: Move recv processing to a tasklet 2009-10-30 15:06:39 -07:00
iw_cm.c RDS: Turn down alarming reconnect messages 2010-03-16 21:16:57 -07:00
iw_rdma.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
iw_recv.c RDS: Do not BUG() on error returned from ib_post_send 2010-03-16 21:16:53 -07:00
iw_ring.c RDS/IW+IB: Set recv ring low water mark to 1/2 full. 2009-04-09 17:21:14 -07:00
iw_send.c RDS: Do not BUG() on error returned from ib_post_send 2010-03-16 21:16:53 -07:00
iw_stats.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-09-15 09:39:44 -07:00
iw_sysctl.c sysctl: Drop & in front of every proc_handler. 2009-11-18 08:37:40 -08:00
loop.c RDS: Fix congestion issues for loopback 2010-03-16 21:16:55 -07:00
loop.h RDS: loopback 2009-02-26 23:39:26 -08:00
message.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
page.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-09-15 09:39:44 -07:00
rdma.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
rdma.h RDS: Add GET_MR_FOR_DEST sockopt 2009-10-30 15:06:37 -07:00
rdma_transport.c RDS: Turn down alarming reconnect messages 2010-03-16 21:16:57 -07:00
rdma_transport.h RDS: Common RDMA transport code 2009-02-26 23:39:33 -08:00
rds.h RDS: Track transports via an array, not a list 2009-08-23 19:13:12 -07:00
recv.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
send.c RDS: Fix locking in rds_send_drop_to() 2010-03-16 21:16:58 -07:00
stats.c RDS: Export symbols from core RDS 2009-08-23 19:13:07 -07:00
sysctl.c sysctl: Drop & in front of every proc_handler. 2009-11-18 08:37:40 -08:00
tcp.c RDS: Track transports via an array, not a list 2009-08-23 19:13:12 -07:00
tcp.h RDS: Add TCP transport to RDS 2009-08-23 19:13:02 -07:00
tcp_connect.c net/rds: remove uses of NIPQUAD, use %pI4 2010-02-03 20:16:48 -08:00
tcp_listen.c net/rds: remove uses of NIPQUAD, use %pI4 2010-02-03 20:16:48 -08:00
tcp_recv.c RDS: update copy_to_user state in tcp transport 2010-03-16 21:16:54 -07:00
tcp_send.c RDS/TCP: Wait to wake thread when write space available 2010-03-16 21:16:55 -07:00
tcp_stats.c RDS: Add TCP transport to RDS 2009-08-23 19:13:02 -07:00
threads.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
transport.c RDS: Track transports via an array, not a list 2009-08-23 19:13:12 -07:00