On Thu, Jun 04, 2015 at 04:17:35PM +0000, Hefty, Sean wrote: > > No, if they followed (I didn't check yes) the extension scheme then the > > poll call is > > > > struct ibv_wc_ex wcs[num_wcs] > > ibv_poll_wc_ex(&wcs,num_wcs,sizeof(wcs[0])); > > > > And the drivers decide what to do based on the 3rd argument, which is > > essentially the ABI version. > > As a couple of options: > > You could add a 'completion format' field to the cq attribute > structure, which would allow poll to cast to a specific structure. Subtle, and tricky to use.. But sure.. > If we wanted to go with Doug's earlier idea, you could add a > 'provider context' field to the wc. This would allow calling back > into the provider to retrieve more data. Though, this concept would > be racy if other completions can overwrite whatever data was trying > to be retrieved. Right, in the model we have where poll advances the HW completion queue, that is not straightforward at all. Can you share what the libfabric change would look like to add a timestamp field to the completion? That might be informative, libfabric is also consuming the kernel UAPI. Jason -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html