lkml.org 
[lkml]   [2015]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 01/28] IB/Verbs: Implement new callback query_transport()
On Wed, Apr 15, 2015 at 01:29:31PM -0600, Hefty, Sean wrote:
> > libibverbs also exposes transport at the device level. Isn't a change to
> > make transport per port rather than per device needed there as well to
> > be consistent with these proposed kernel changes ? If so, would the
> > additional IBoE transport be exposed ? We also need to worry about
> > backward compatibility for existing applications.
>
> Libibverbs probably can't change without bumping the major version number. If the kernel attribute structures change, this is probably something that the user_verbs module would need to handle to avoid breaking the ABI.
>

Transport is not directly sent thought the kernel ABI. It is fabricated when
the HCA provider driver is loaded.

static struct ibv_device *try_driver(struct ibv_driver *driver,
struct ibv_sysfs_dev *sysfs_dev)
{
...
switch (dev->node_type) {
case IBV_NODE_CA:
case IBV_NODE_SWITCH:
case IBV_NODE_ROUTER:
dev->transport_type = IBV_TRANSPORT_IB;
break;
case IBV_NODE_RNIC:
dev->transport_type = IBV_TRANSPORT_IWARP;
break;
case IBV_NODE_USNIC:
dev->transport_type = IBV_TRANSPORT_USNIC;
break;
case IBV_NODE_USNIC_UDP:
dev->transport_type = IBV_TRANSPORT_USNIC_UDP;
break;
default:
dev->transport_type = IBV_TRANSPORT_UNKNOWN;
break;
}
...
}

I'm not sure how to fix this once we get to the user space problem. But I
don't think it affects this set of patches.

Ira



\
 
 \ /
  Last update: 2015-04-15 23:01    [W:0.110 / U:2.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site