linux/drivers/infiniband
Eran Ben Elisha 7b59f0f951 IB/mlx4: Add counter based implementation for QP multicast loopback block
Current implementation for MLX4_IB_QP_BLOCK_MULTICAST_LOOPBACK is not
supported when link layer is Ethernet.

This patch will add counter based implementation for multicast loopback
prevention. HW can drop multicast loopback packets if sender QP counter
index is equal to receiver QP counter index. If qp flag
MLX4_IB_QP_BLOCK_MULTICAST_LOOPBACK is set and link layer is Ethernet,
create a new counter and attach it to the QP so it will continue
receiving multicast loopback traffic but it's own.

The decision if to create a new counter is being made at the qp
modification to RTR after the QP's port is set. When QP is destroyed or
moved back to reset state, delete the counter.

Signed-off-by: Eran Ben Elisha <eranbe@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2015-10-21 23:16:47 -04:00
..
core IB/core: Allow setting create flags in QP init attribute 2015-10-21 23:16:46 -04:00
hw IB/mlx4: Add counter based implementation for QP multicast loopback block 2015-10-21 23:16:47 -04:00
ulp IB/iser: fix a comment typo 2015-10-21 16:41:54 -04:00
Kconfig IB/ehca: Deprecate driver, move to staging, schedule deletion 2015-09-11 18:13:35 -04:00
Makefile IB: Allow build of hw/ and ulp/ subdirectories independently 2014-06-02 14:51:12 -07:00