[ewg] Changing min_rnr_timer and timeout attributes of QP

Sandeep Dhavale Sandeep_Dhavale at symantec.com
Wed Feb 6 18:21:32 PST 2013


Hi,
I am trying to change min_rnr_timer and timeout attribute of QP from the Linux kernel (RHEL6.3). The QP is created using rdma_create_qp() of rdma_cm moduleand not ib_create_qp() as I want a generic code to work over IB as well as ROCEE.

struct ib_qp_attr {
...
         u8                      max_dest_rd_atomic;
         u8                      min_rnr_timer;
         u8                      port_num;
         u8                      timeout;
         u8                      retry_cnt;
         u8                      rnr_retry;
...
 };

>From what I read from source and header files, I can achieve this by using ib_modify_qp() call. However, the call is returning EINVAL. 
I am using rdma_cm module for connection management which takes care of QP's state transitions. 

So my questions are while using RDMA cm for connection management,
1. Is it true that min_rnr_timer and timeout values can be modified only when QP is in RTR state?
 1a) If yes, when RDMA connection is made, QP has already transitioned to RTS state and there is no way back to RTR. In this case, how to modify these attributes?
 1b) If no, then after rdma_create_qp(),  when (from which state) and how to modify these attributes? 

2. Is there any other way to change these attributes of QP? Any pointers to how to achieve this?

Thanks,
Sandeep.



More information about the ewg mailing list