On Tue, May 01, 2018 at 06:26:09PM +0000, Parav Pandit wrote: > > On Tue, May 01, 2018 at 02:05:13PM -0400, Doug Ledford wrote: > > > On Mon, 2018-04-30 at 15:56 -0600, Jason Gunthorpe wrote: > > > > On Sun, Apr 29, 2018 at 10:46:46AM +0300, Leon Romanovsky wrote: > > > > > From: Parav Pandit <parav@xxxxxxxxxxxx> > > > > > > > > > > Commit given in fixes tag introduced an accurate check to validate > > > > > device, port, index by referring to the cache layer for querying > > > > > GIDs for all link layers (IB, RoCE and iWarp). > > > > > > > > > > When rdmacm tries to modify the QP to RTR state for kernel > > > > > consumers, qp and ah attributes are uninitialized. Each transport > > > > > layer (IB/iWarp) initializes them depending on transport type. > > > > > However qp ah_attr are not used for iWarp and remained > > > > > uninitialized, which is further used in ib_query_gid() call. This > > > > > results into a failure to query the GID due to an invalid GID > > > > > index coming from the uninitialized stack memory. > > > > > This is reported and discussed in thread [1]. > > > > > > > > What is ib_query_gid supposed to do for iWarp? > > > > > > Return the sole entry in the GID table. But, you pass the index, so > > > you have to know to pass index 0. In this case, because of > > > uninitialized memory in the ah_attr, it's being told to try and return > > > another entry that is invalid. > > > > Ok, but what is in the 0 index of the GID table for iWarp? > It's a GID derived based on mac address of netdev. It is not used for anything right? 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