summaryrefslogtreecommitdiffstats
path: root/net/rds/rdma.c
diff options
context:
space:
mode:
authorAndy Grover <andy.grover@oracle.com>2010-01-12 19:50:48 +0100
committerAndy Grover <andy.grover@oracle.com>2010-09-09 03:11:42 +0200
commit40589e74f7ba855f3a887c9d4abe9d100c5b039c (patch)
treef32b0414ae3cfe8868fbdb130f9b24ac19794ae3 /net/rds/rdma.c
parentRDS: Implement atomic operations (diff)
downloadlinux-40589e74f7ba855f3a887c9d4abe9d100c5b039c.tar.xz
linux-40589e74f7ba855f3a887c9d4abe9d100c5b039c.zip
RDS: Base init_depth and responder_resources on hw values
Instead of using a constant for initiator_depth and responder_resources, read the per-QP values when the device is enumerated, and then use these values when creating the connection. Signed-off-by: Andy Grover <andy.grover@oracle.com>
Diffstat (limited to 'net/rds/rdma.c')
-rw-r--r--net/rds/rdma.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/net/rds/rdma.c b/net/rds/rdma.c
index a7019df38c70..abbc2979e7e5 100644
--- a/net/rds/rdma.c
+++ b/net/rds/rdma.c
@@ -745,7 +745,6 @@ int rds_cmsg_atomic(struct rds_sock *rs, struct rds_message *rm,
rm->atomic.op_swap_add = args->fadd.add;
}
- rm->m_rdma_cookie = args->cookie;
rm->atomic.op_notify = !!(args->flags & RDS_RDMA_NOTIFY_ME);
rm->atomic.op_recverr = rs->rs_recverr;
rm->atomic.op_sg = rds_message_alloc_sgs(rm, 1);
@@ -779,7 +778,7 @@ int rds_cmsg_atomic(struct rds_sock *rs, struct rds_message *rm,
rm->atomic.op_notifier->n_status = RDS_RDMA_SUCCESS;
}
- rm->atomic.op_rkey = rds_rdma_cookie_key(rm->m_rdma_cookie);
+ rm->atomic.op_rkey = rds_rdma_cookie_key(args->cookie);
rm->atomic.op_remote_addr = args->remote_addr + rds_rdma_cookie_offset(args->cookie);
rm->atomic.op_active = 1;