RDS: Rework path specific indirections
Refactor code to avoid separate indirections for single-path
and multipath transports. All transports (both single and mp-capable)
will get a pointer to the rds_conn_path, and can trivially derive
the rds_connection from the ->cp_conn.
Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/rds/send.c b/net/rds/send.c
index ee43d6b..5a9caf1 100644
--- a/net/rds/send.c
+++ b/net/rds/send.c
@@ -183,12 +183,8 @@
goto out;
}
- if (conn->c_trans->t_mp_capable) {
- if (conn->c_trans->xmit_path_prepare)
- conn->c_trans->xmit_path_prepare(cp);
- } else if (conn->c_trans->xmit_prepare) {
- conn->c_trans->xmit_prepare(conn);
- }
+ if (conn->c_trans->xmit_path_prepare)
+ conn->c_trans->xmit_path_prepare(cp);
/*
* spin trying to push headers and data down the connection until
@@ -403,12 +399,8 @@
}
over_batch:
- if (conn->c_trans->t_mp_capable) {
- if (conn->c_trans->xmit_path_complete)
- conn->c_trans->xmit_path_complete(cp);
- } else if (conn->c_trans->xmit_complete) {
- conn->c_trans->xmit_complete(conn);
- }
+ if (conn->c_trans->xmit_path_complete)
+ conn->c_trans->xmit_path_complete(cp);
release_in_xmit(cp);
/* Nuke any messages we decided not to retransmit. */