[openib-general] ibv_cmd_create_qp() question
Steve Wise
swise at opengridcomputing.com
Wed Feb 15 13:43:19 PST 2006
Just curious, why don't all the verbs have this support?
Maybe we should align all the verbs to support commands and responses
that allow provider-specific extensions?
Stevo.
On Wed, 2006-02-15 at 13:30 -0800, Roland Dreier wrote:
> Heiko> Hello Steven, we had this problem, too. For
> Heiko> ibv_cmd_create_qp we pass via our cmd struct the address of
> Heiko> the response block to the kernel.The kernel can copies then
> Heiko> all values into the response block (from kernel space to
> Heiko> user space).
>
> Heiko> The provider library can then the provider specific
> Heiko> information which are passed from the kernel.
>
> Oh man, I didn't notice that before. Please don't work around the
> existing code like that -- just fix the interface to do what you need.
> I really don't want low-level drivers using extra userspace pointers
> to stick their extra data into.
>
> Please use the existing ib_copy_to_udata() function to add
> driver-specific after the core response instead. You can look at how
> mthca gives the device-specific CQ number back to userspace for the
> create CQ operation to see the right way to do this.
>
> Making this work for create QP means that ibv_cmd_create_qp() needs to
> handle responses the same what ibv_cmd_create_cq() does, which is a
> driver API change. But given that ehca needs it too, I'm now
> convinced that the change that Steve wants for ibv_cmd_create_qp() is
> necessary in libibverbs 1.0.
>
> - R.
More information about the general
mailing list