Hi Jason, > -----Original Message----- > From: Jason Gunthorpe [mailto:jgunthorpe@xxxxxxxxxxxxxxxxxxxx] > Sent: Wednesday, February 8, 2017 11:41 AM > To: Matan Barak <matanb@xxxxxxxxxxxxxxxxxx> > Cc: Parav Pandit <parav@xxxxxxxxxxxx>; Roland Dreier > <roland@xxxxxxxxxxxxxxx>; linux-rdma@xxxxxxxxxxxxxxx; Matan Barak > <matanb@xxxxxxxxxxxx> > Subject: Re: Need to set if_index in ib_init_ah_from_wc() ? > > On Wed, Feb 08, 2017 at 06:02:44PM +0200, Matan Barak wrote: > > > Actually, I think one of the problems here is that we insert GIDs > > which aren't supported by the hardware. > > That certainly sounds like a problem, yes. > > > So, assuming we only insert a combination of netdevices which could be > > actually described by the hardware, we could try to match these > > attributes in the gid cache table. Once we have such a match, we > > could verify that with the ingress route (actually, we could use > > ingress route starting from get_netdev() as well). > > Yes, that is the proper thing to do. > > Presumably the hardware does this, it should not be receiving packets that > do not match the GID table. That would be a huge problem when we talk > about namespaces/etc. > > > Since RoCE is symmetrical (you don't know if an AH is for rx/tx in UD > > and you need to select a single sgid_index for RC connections), we > > need to verify that it matches an egress route bounded to this > > netdevice. > > ?? how is an AH involved in RX? > > > As a quick fix, setting ifindex to get_netdev's ifindex in link local > > addresses and filter out unsupported netdevices in the GID cache, > > seems like a reasonable solution to me. > > That still breaks link local addresses on vlan devices, so it is an ugly hack, not a > solution. In presence of vlan, shouldn't we be passing the ifindex of the vlan netdev? > > Jason -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html