]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r336369:
authorhselasky <hselasky@FreeBSD.org>
Thu, 2 Aug 2018 08:12:01 +0000 (08:12 +0000)
committerhselasky <hselasky@FreeBSD.org>
Thu, 2 Aug 2018 08:12:01 +0000 (08:12 +0000)
commitb6d173d1e0473431e72efa55ad19d553c1ef39f5
treec1f06c7069cfd18d7f59b73dd0df7d6a88f0e823
parent84684fe137a7f0ba9e2cc449a5acc316fbae8251
MFC r336369:
For multicast functions in ibcore, verify that LIDs are multicast LIDs.

The Infiniband spec defines "A multicast address is defined by a
MGID and a MLID" (section 10.5).

Add check to verify that the MLID value is in the correct address
range.

RoCE Annex (A16.9.10/11) declares that during attach (detach) QP to a
multicast group, if the QP is associated with a RoCE port, the
multicast group MLID is unused and is ignored.

During attach or detach multicast, when the QP is associated with a
port, it is enough to check the port's link layer and validate the
LID only if it is Infiniband. Otherwise, avoid validating the
multicast LID.

Linux commit:
8561eae60ff9417a50fa1fb2b83ae950dc5c1e21
5236333592244557a19694a51337df6ac018f0a7

Sponsored by: Mellanox Technologies
sys/ofed/drivers/infiniband/core/ib_verbs.c