[ofw] changes to ib_wc committed to svn
Sean Hefty
sean.hefty at intel.com
Thu Jul 31 09:55:46 PDT 2008
Please do not change the layout of struct ib_wc from what's in SVN. The
structure format aligns with both the winverbs and libibverbs work completion
structures. This allows applications that are already coded to use libibverbs
to more easily port to windows without suffering any performance penalty for
fast path operations. See below for details:
The structure ib_ca_attr_t alread contains the field ipoib_csum (according to
your request).
The structure ib_wc_t will look as:
typedef struct _ib_wc
{
TO_LONG_PTR(struct _ib_wc* , p_next) ;
uint64_t wr_id;
ib_wc_type_t wc_type;
uint32_t length;
ib_wc_status_t status;
uint64_t vendor_specific;
Please keep this as wc_type, length, vendor_specific, then status to avoid
compiler padding because of a misaligned 64-bit value.
union _wc_recv
{
struct _wc_conn
{
ib_recv_opt_t recv_opt;
ib_net32_t immediate_data;
} conn;
struct _wc_ud
{
ib_recv_opt_t recv_opt;
ib_net32_t immediate_data;
ib_net32_t remote_qp;
uint16_t pkey_index;
ib_net16_t remote_lid;
uint8_t remote_sl;
uint8_t path_bits;
uint8_t csum_ok;
} ud;
struct _wc_raw_ipv6
{
ib_net16_t remote_lid;
uint8_t remote_sl;
uint8_t path_bits;
} raw_ipv6;
struct _wc_raw_ether
{
ib_net16_t remote_lid;
uint8_t remote_sl;
uint8_t path_bits;
ib_net16_t ether_type;
} raw_ether;
} recv;
} ib_wc_t;
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20080731/a4904455/attachment.html>
More information about the ofw
mailing list