Ralph Campbell wrote:
Ralph> When ib_modify_qp() is called with the IB_QP_ACCESS_FLAGS
Ralph> set in the mask, what values should be used in struct
Ralph> ib_qp_attr.qp_access_flags? The IB spec. seems to indicate
Ralph> that RDMA and atomic operations are all enabled or disabled
Ralph> as a group but all I see in ib_verbs.h is the enum
Ralph> ib_access_flags which is used for memory region access.
Ralph> These are more fine grained than the IB spec. implies for
Ralph> QPs. So I can see qp_access_flags being either a boolean
Ralph> or perhaps a new enum defined for the values for
Ralph> qp_access_flags.
Roland> I think the IB spec is at best ambiguous as to whether RDMA
Roland> and atomics are enabled as a group or not.
Roland> The values are IB_ACCESS_REMOTE_ATOMIC, IB_ACCESS_REMOTE_WRITE,
Roland> and IB_ACCESS_REMOTE_READ or-ed together I think.
Roland's response is correct. Atomics and RDMA reads are enabled separately.
(See page 573 of release 1.2 of the spec. I interpreted the separate bullets to
mean that they are set separately.) I think it makes sense to keep this
distinction, since atomics are also an optional feature of an HCA.
If you look in cm.c for init_qp_attr, you can see how the IB CM sets the mask
and QP attributes.
- Sean
_______________________________________________
openib-general mailing list
openib-general@openib.org
http://openib.org/mailman/listinfo/openib-general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general