On Wed, 2015-06-10 at 06:30 +0000, Liran Liss wrote:
> > From: Ira Weiny <ira.we...@intel.com>
> 
> Hi Ira,
> 
> OPA cannot impersonate IB; OPA node and link types have to be designated as 
> such.
> In terms of MAD processing flows, both explicit (as in the handle_opa_smi() 
> call below) and implicit code paths (which share IB flows - there are several 
> cases) must make this distinction.

As far as in the kernel is concerned, the individual capability bits are
much more important.  I would actually like to do away with the
node_type variable from struct ib_device eventually.  As for user space,
where we have to maintain ABI, node_type can be IB_CA (after all, the
OPA devices are just like RoCE devices in that they implement IB VERBS
as their user visible transport, and only addressing/management is
different from link layer IB devices), link layer needs to be OPA.

> > +static enum smi_action
> > +handle_opa_smi(struct ib_mad_port_private *port_priv,
> > +          struct ib_mad_qp_info *qp_info,
> > +          struct ib_wc *wc,
> > +          int port_num,
> > +          struct ib_mad_private *recv,
> > +          struct ib_mad_private *response)
> > +{
> ...
> > +   } else if (port_priv->device->node_type == RDMA_NODE_IB_SWITCH)  <----
> 
> --Liran


-- 
Doug Ledford <dledf...@redhat.com>
              GPG KeyID: 0E572FDD

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to