[ofw] change layout of ib_send_wr for winof 2.0

Sean Hefty sean.hefty at intel.com
Fri May 23 11:55:32 PDT 2008


Since we're bumping the ABI/API, does anyone see any issues with changing the
layout of ib_send_wr?  It would end up being terribly convenient if you could
cast between the OFED ib_send_wr and WinOF ib_send_wr, especially since the HW
drivers and libraries are derived from the OFED stack.  This avoids translating
structures in the speed path.

For example, change from:

typedef struct _ib_send_wr
{
	TO_LONG_PTR(struct _ib_send_wr* ,	p_next) ;
	uint64_t					wr_id;
	ib_wr_type_t				wr_type;
	ib_send_opt_t				send_opt;
	uint32_t					num_ds;
	TO_LONG_PTR(ib_local_ds_t* ,		ds_array) ;
	ib_net32_t					immediate_data;
	...

to

typedef struct _ib_send_wr
{
	uint64_t					wr_id;
	struct _ib_send_wr*			*p_next;
	ib_local_ds_t				*ds_array;
	uint32_t					num_ds;
	ib_wr_type_t				wr_type;
	ib_send_opt_t				send_opt;
	ib_net32_t					immediate_data;
	...

The field names remain the same.  ULPs only need to recompile.  If no one
disagrees, I will do this after the latest set of patches hit the trunk.

- Sean




More information about the ofw mailing list