RDS: Modularize RDMA and TCP transports

Enable the building of transports as modules.

Also, improve consistency of Kconfig messages in relation to other
protocols, and move build dependency on IB from the RDS core code
to the rds_rdma module.

Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Andy Grover
2009-08-21 12:28:33 +00:00
committed by David S. Miller
parent 616b757ae1
commit 40d866095d
4 changed files with 35 additions and 16 deletions

View File

@ -39,7 +39,6 @@
#include "rds.h"
#include "rdma.h"
#include "rdma_transport.h"
/* this is just used for stats gathering :/ */
static DEFINE_SPINLOCK(rds_sock_lock);
@ -509,7 +508,6 @@ out:
static void __exit rds_exit(void)
{
rds_rdma_exit();
sock_unregister(rds_family_ops.family);
proto_unregister(&rds_proto);
rds_conn_exit();
@ -549,14 +547,8 @@ static int __init rds_init(void)
rds_info_register_func(RDS_INFO_SOCKETS, rds_sock_info);
rds_info_register_func(RDS_INFO_RECV_MESSAGES, rds_sock_inc_info);
/* ib/iwarp transports currently compiled-in */
ret = rds_rdma_init();
if (ret)
goto out_sock;
goto out;
out_sock:
sock_unregister(rds_family_ops.family);
out_proto:
proto_unregister(&rds_proto);
out_stats: