On Tue, Apr 14, 2015 at 10:35:34AM +0200, Michael Wang wrote:
>
>
> On 04/13/2015 09:25 PM, Hefty, Sean wrote:
> >> @@ -1037,17 +1033,13 @@ void rdma_destroy_id(struct rdma_cm_id *id)
> >> mutex_unlock(&id_priv->handler_mutex);
> >>
> >> if (id_priv->cma_dev) {
> >> - switch (rdma_node_get_transport(id_priv->id.device-
> >>> node_type)) {
> >> - case RDMA_TRANSPORT_IB:
> >> + if (rdma_ib_or_iboe(id_priv->id.device, id_priv->id.port_num))
> >
> > A listen id can be associated with a device without being associated with a
> > port (see the listen_any_list).
> Some other check is needed to handle this case. I guess the code could check
> the first port on the device
> (replace port_num with hardcoded value 1). Then we wouldn't be any more
> broken than the code already is.
> (The 'break' is conceptual, not practical.)
>
> Agree, seems like this is very similar to the case of cma_listen_on_dev()
> which
> do not associated with any particular port in #24.
>
> If the port 1 is enough to present the whole device's cm capability, maybe we
> can
> get rid of cap_ib_cm_dev() too?
>
> And maybe cap_ib_cm(device, device->node_type == RDMA_NODE_IB_SWITCH ? 0:1)
> would
> be safer?
I don't see support for switch port 0 in cm_add_one() now. Are switches
supposed
to be supported?
Ira
>
> Regards,
> Michael Wang
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/