Re: [PATCH V1 libibverbs 1/8] Add ibv_poll_cq_ex verb

Yishai Hadas
2016-02-25T08:01:11Z

On 2/24/2016 9:02 PM, Jason Gunthorpe wrote:
> On Wed, Feb 24, 2016 at 11:41:57AM +0200, Yishai Hadas wrote:
>
>> +enum {
>> + IBV_WC_EX_WITH_8BIT_FIELDS = IBV_WC_EX_WITH_SL |
>> + IBV_WC_EX_WITH_DLID_PATH_BITS
>> +};
>> +
>> +struct ibv_wc_ex {
>> + uint64_t wr_id;
>> + /* wc_flags is a combination of ibv_wc_flags_ex flags. The IBV_WC_EX_WITH_XXX
>> + * flags dynamically define the valid fields in buffer[0].
>> + */
>> + uint64_t wc_flags;
>> + uint32_t status;
>> + uint32_t opcode;
>> + uint32_t vendor_err;
>> + uint32_t reserved;
>> + uint8_t buffer[0];
>> +};
>
> Um, maybe you should give an example of how on earth anyone is
> supposed to use this, all of this looks like a *really bad idea* to
> me.
>

The last patch is this series is a clear example of a typical usage of.
It was added as part of rc_pingpong, please look at.

In addition, there are detailed man pages that describe the idea/usage
of the new verbs around, see patch #7.