Walukiewicz, Miroslaw wrote:
> The mckey works on UD_QP type and mcraw works on RAW_QP type. 
> The data payload prepared for UD and RAW_QP are on different layers. 
> The mckey uses rdma_join_multicast() that triggers a state machine for IB 
> multicast joining. 
> The mcraw does not trigger such state machine because for sending the 
> ethernet multicast there is 
> no need for any multicast joining state machine. The multicast destination 
> address on ethernet 
> is determined by multicast group address.

Miroslaw,

I tend not to agree with the entire set of your arguments, to start with, for 
example, the code issues IP_ADD_MEMBERSHIP call on a socket and also computes 
the actual L2 address derived from the L3 multicast address. 

If these ops are required for raw ethernet multicast operation, you can enhance 
the rdmacm to have rdma_join_multicast carry these ops similarly to what it 
does for PS_UDP and PS_IPOIB over IB (determine the L2 address, join through 
the relevant state machine, etc).

Its not that you claim to be able to run raw multicast without any relation to 
the rdma-cm, e.g. you even want this code to be shipped by librdmacm... so lets 
understand the architecture, for example what port space  is needed here, 
looking on the code, it looks like you want it to operate in the same manner as 
PS_IPOIB,so maybe extend this port space or declare an equivalent one for 
ethernet.

Or.

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to