[PATCH] IB/mthca: assign ACK timeout field correctly
The hardware reads the ACK timeout field from the most significant 5 bits of struct mthca_qp_path's ackto field, not the least significant bits. This fix has the driver put the timeout in the right place. Without this, we get a timeout that is 2^8 times too small. Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
51574e0398
commit
bb4a7f0da7
|
@ -687,7 +687,7 @@ int mthca_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, int attr_mask)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (attr_mask & IB_QP_TIMEOUT) {
|
if (attr_mask & IB_QP_TIMEOUT) {
|
||||||
qp_context->pri_path.ackto = attr->timeout;
|
qp_context->pri_path.ackto = attr->timeout << 3;
|
||||||
qp_param->opt_param_mask |= cpu_to_be32(MTHCA_QP_OPTPAR_ACK_TIMEOUT);
|
qp_param->opt_param_mask |= cpu_to_be32(MTHCA_QP_OPTPAR_ACK_TIMEOUT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue