]> git.baikalelectronics.ru Git - kernel.git/commit
IB/core: Support for CMA multicast join flags
authorAlex Vesker <valex@mellanox.com>
Wed, 6 Jul 2016 13:36:35 +0000 (16:36 +0300)
committerDoug Ledford <dledford@redhat.com>
Thu, 4 Aug 2016 01:06:46 +0000 (21:06 -0400)
commit46109b96b699494bd12efc6aaed959564e562d9f
tree980ba25528b581526fe924f80516038d7697bd2b
parent4673adfcdacf090765a91fa64eba8a43b0d102e7
IB/core: Support for CMA multicast join flags

Added UCMA and CMA support for multicast join flags. Flags are
passed using UCMA CM join command previously reserved fields.
Currently supporting two join flags indicating two different
multicast JoinStates:

1. Full Member:
   The initiator creates the Multicast group(MCG) if it wasn't
   previously created, can send Multicast messages to the group
   and receive messages from the MCG.

2. Send Only Full Member:
   The initiator creates the Multicast group(MCG) if it wasn't
   previously created, can send Multicast messages to the group
   but doesn't receive any messages from the MCG.

   IB: Send Only Full Member requires a query of ClassPortInfo
       to determine if SM/SA supports this option. If SM/SA
       doesn't support Send-Only there will be no join request
       sent and an error will be returned.

   ETH: When Send Only Full Member is requested no IGMP join
will be sent.

Signed-off-by: Alex Vesker <valex@mellanox.com>
Reviewed by: Hal Rosenstock <hal@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/core/cma.c
drivers/infiniband/core/multicast.c
drivers/infiniband/core/ucma.c
include/rdma/ib_sa.h
include/rdma/rdma_cm.h
include/uapi/rdma/rdma_user_cm.h