linux-stable/drivers/infiniband/ulp
Erez Shitrit 94232d9ce8 IPoIB: Start multicast join process only on active ports
The driver starts the mcast_join task whenever the netdev interface is
UP without relation to the underlying IB port state.

Until the port state is ACTIVE all the join requests are irrelevant,
and the IB core returns -EINVAL. So the user will see errors such as:
"multicast join failed for ff12:401b:... , status -22".

Instead, have ipoib_mcast_join_task() return when the port is not active.

It will be called again when the port state is changed and the
low-level driver triggers the IB_EVENT_PORT_ACTIVE event or the
IB_EVENT_CLIENT_REREGISTER event.

Signed-off-by: Erez Shitrit <erezsh@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
2013-11-08 14:42:49 -08:00
..
ipoib IPoIB: Start multicast join process only on active ports 2013-11-08 14:42:49 -08:00
iser Main batch of InfiniBand/RDMA changes for 3.12 merge window: 2013-09-05 09:39:27 -07:00
isert iser-target: check device before dereferencing its variable 2013-10-23 21:42:33 -07:00
srp IB/srp: Let srp_abort() return FAST_IO_FAIL if TL offline 2013-07-11 16:43:48 -07:00
srpt ib_srpt: always set response for task management 2013-10-03 04:23:17 -07:00