summary refs log tree commit diff
path: root/net/rds/ib.c
diff options
context:
space:
mode:
authorAndy Grover <andy.grover@oracle.com>2009-08-21 12:28:34 +0000
committerDavid S. Miller <davem@davemloft.net>2009-08-23 19:13:12 -0700
commit335776bd696a6bf95134baf8ad95847371e4d5f6 (patch)
tree76393aa4683e02b87209981ae96ed44f9689a080 /net/rds/ib.c
parent40d866095df3bb70ded1813f4852cab445ef678b (diff)
downloadlinux-335776bd696a6bf95134baf8ad95847371e4d5f6.tar.gz
RDS: Track transports via an array, not a list
Now that transports can be loaded in arbitrary order,
it is important for rds_trans_get_preferred() to look
for them in a particular order, instead of walking the list
until it finds a transport that works for a given address.
Now, each transport registers for a specific transport slot,
and these are ordered so that preferred transports come first,
and then if they are not loaded, other transports are queried.

Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/ib.c')
-rw-r--r--net/rds/ib.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/rds/ib.c b/net/rds/ib.c
index 868559ac42d7..536ebe5d3f6b 100644
--- a/net/rds/ib.c
+++ b/net/rds/ib.c
@@ -282,6 +282,7 @@ struct rds_transport rds_ib_transport = {
 	.flush_mrs		= rds_ib_flush_mrs,
 	.t_owner		= THIS_MODULE,
 	.t_name			= "infiniband",
+	.t_type			= RDS_TRANS_IB
 };
 
 int __init rds_ib_init(void)