On Fri, Apr 24, 2015 at 02:44:29PM +0000, Liran Liss wrote:
> > From: Michael Wang [mailto:yun.w...@profitbricks.com]
> 
> 
> > [snip]
> > >
> > > Depends on who is "we".
> > > For ULPs, you are probably right.
> > >
> > > However, core services (e.g., mad management, CM, SA) do care about
> > various details.
> > > In some cases, where it doesn't matter, this code will use management
> > helpers.
> > > In other cases, this code will inspect link, transport, and node 
> > > attributes of
> > rdma devices.
> > >
> > > For example, the CM code has specific code paths for IB, RoCE, and iWARP.
> > > There is no other CM code; there is no reason to abstract 'CM'. This
> > > code will have code paths that depend on various specific details.
> > 
> > That's exactly what we want to stop, we have classified the CM to IB and
> > IWARP now :-)
> >
> 
> We don't want to stop code branches that are not abstractions but rather 
> depend
> on the specific technology!
> There is no generic "iWARP CM" - only one.
> There is no generic "ROCE CM" - only one.
> There is no generic "IB CM" - only one.

How can you say this?  Or perhaps I don't understand what you mean.

While conceptually one could say that each technology has its own "CM" we are
trying to have the same module (and code) implement them all (ie a generic CM
for a node).  Therefore, the CM code _is_ generic.  As is the MAD code.  This
is the reason we have this problem.  We are trying to reuse those modules for
multiple technologies.

> 
> At the CM high-level (i.e., whether an ib_dev port registers an IB client), 
> you could consider
> an rdma_has_cm() call, but this the only place in the code that this check 
> will be called!
> Hence, no need for a generic check.
> 
> You want to stop abstract code that uses IB core infrastructure.

Not sure what you mean here?

Ira

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to