linux/net/rds
Andy Grover 745cbccac3 RDS: Rewrite connection cleanup, fixing oops on rmmod
This fixes a bug where a connection was unexpectedly
not on *any* list while being destroyed. It also
cleans up some code duplication and regularizes some
function names.

* Grab appropriate lock in conn_free() and explain in comment
* Ensure via locking that a conn is never not on either
  a dev's list or the nodev list
* Add rds_xx_remove_conn() to match rds_xx_add_conn()
* Make rds_xx_add_conn() return void
* Rename remove_{,nodev_}conns() to
  destroy_{,nodev_}conns() and unify their implementation
  in a helper function
* Document lock ordering as nodev conn_lock before
  dev_conn_lock

Reported-by: Yosef Etigin <yosefe@voltaire.com>
Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02 00:52:22 -07:00
..
af_rds.c RDS: Socket interface 2009-02-26 23:39:23 -08:00
bind.c RDS: Socket interface 2009-02-26 23:39:23 -08:00
cong.c rds: Fix build on powerpc. 2009-03-02 01:49:28 -08:00
connection.c RDS: Connection handling 2009-02-26 23:39:25 -08:00
ib_cm.c RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
ib_rdma.c RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
ib_recv.c RDS/IB: Receive datagrams via IB 2009-02-26 23:39:32 -08:00
ib_ring.c RDS/IB: Ring-handling code. 2009-02-26 23:39:30 -08:00
ib_send.c RDS/IB: Implement IB-specific datagram send. 2009-02-26 23:39:31 -08:00
ib_stats.c RDS/IB: Stats and sysctls 2009-02-26 23:39:32 -08:00
ib_sysctl.c RDS/IB: Stats and sysctls 2009-02-26 23:39:32 -08:00
ib.c RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
ib.h RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
info.c RDS: Info and stats 2009-02-26 23:39:25 -08:00
info.h RDS: Info and stats 2009-02-26 23:39:25 -08:00
iw_cm.c RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
iw_rdma.c RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
iw_recv.c RDS: Add iWARP support 2009-02-26 23:39:33 -08:00
iw_ring.c RDS: Add iWARP support 2009-02-26 23:39:33 -08:00
iw_send.c RDS: Add iWARP support 2009-02-26 23:39:33 -08:00
iw_stats.c RDS: Add iWARP support 2009-02-26 23:39:33 -08:00
iw_sysctl.c RDS: Add iWARP support 2009-02-26 23:39:33 -08:00
iw.c RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
iw.h RDS: Rewrite connection cleanup, fixing oops on rmmod 2009-04-02 00:52:22 -07:00
Kconfig rds: fix iband RDMA dependencies 2009-03-03 21:39:40 -08:00
loop.c RDS: loopback 2009-02-26 23:39:26 -08:00
loop.h RDS: loopback 2009-02-26 23:39:26 -08:00
Makefile RDS: Kconfig and Makefile 2009-02-26 23:43:35 -08:00
message.c RDS: Message parsing 2009-02-26 23:39:28 -08:00
page.c RDS: Message parsing 2009-02-26 23:39:28 -08:00
rdma_transport.c RDS: Common RDMA transport code 2009-02-26 23:39:33 -08:00
rdma_transport.h RDS: Common RDMA transport code 2009-02-26 23:39:33 -08:00
rdma.c RDS: RDMA support 2009-02-26 23:39:29 -08:00
rdma.h RDS: RDMA support 2009-02-26 23:39:29 -08:00
rds.h RDS: Main header file 2009-02-26 23:39:23 -08:00
recv.c RDS: recv.c 2009-02-26 23:39:29 -08:00
send.c RDS: Fix m_rs_lock deadlock 2009-04-02 00:52:21 -07:00
stats.c RDS: Info and stats 2009-02-26 23:39:25 -08:00
sysctl.c RDS: sysctls 2009-02-26 23:39:26 -08:00
threads.c RDS: Connection handling 2009-02-26 23:39:25 -08:00
transport.c RDS: Transport code 2009-02-26 23:39:24 -08:00