[openib-general] makiing ibverb.h transport neutral -- 2nd draft

Sean Hefty mshefty at ichips.intel.com
Wed Jul 13 11:24:02 PDT 2005


Caitlin Bestler wrote:
> The impact of this on the existing code would be quite wide,
> but quite shallow. Many types would be renamed form 'ib_xyz'
> to 'rdma_xyz', if being used in transport neutral code. Or
> when staying infiniband specific fields that now qualified
> as transport neutral would require "common." to be inserted
> before the field name. Some constants are shifted from IB_XXX
> to RDMA_XXX.

Embedding a struct rdma_object inside a struct ib_object essentially removes 
type checking from the API.  For example, a user calling rdma_poll_cq() must 
know that they are using IB and reference the correct data structure, such as:

struct ib_wc wc;

rdma_poll_cq(cq, 1, &wc.common);

Similarly for posting RDMA requests through rdma_post_send().

- Sean



More information about the general mailing list