RE: iwarp kernel mode applications are broken with commit f35faa4ba

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Raju,

> -----Original Message-----
> From: Raju Rangoju [mailto:rajur@xxxxxxxxxxx]
> Sent: Friday, April 27, 2018 4:08 AM
> To: Parav Pandit <parav@xxxxxxxxxxxx>
> Cc: Shiraz Saleem <shiraz.saleem@xxxxxxxxx>; linux-rdma@xxxxxxxxxxxxxxx;
> SWise OGC <swise@xxxxxxxxxxxxxxxxxxxxx>; sean.hefty@xxxxxxxxx
> Subject: Re: iwarp kernel mode applications are broken with commit f35faa4ba
> 
> On Friday, April 04/27/18, 2018 at 03:36:18 +0000, Parav Pandit wrote:
> 
> Parav,
> 
> > Hi Shiraz, Raju,
> >
> > > -----Original Message-----
> > > My validation team reported the same issue on i40iw with 4.17-rc kernels.
> > >
> > > Some more data. Looks like the failure is because we can't find the
> > > cached gid due to the gid idx being wrong in query_gid.
> > >
> > > rdma_connect
> > >    cma_connect_iw
> > > 	cma_modify_qp_rtr
> > > 	    ib_query_gid
> > > 		ib_get_cached_gid
> > > 		    __ib_cache_gid_get (EINVAL)
> > >
> > This call trace is helpful.
> > Can you please run ibv_devinfo -v | grep GID and see that you are getting the
> expected GID.
> > For iWarp we have only one entry GID table. So want to make sure that GID
> table is build correctly.
> >
> > From the above call trace, is appears that,
> > cma_modify_qp_rtr() contains,
> > struct ib_qp_attr qp_attr;
> >
> > ah_attr from above qp_attr remains uninitialized by iw_cm_init_qp_attr() and
> iwcm_init_qp_init_attr().
> > Before my fix, gid_index was always ignored by the query_gid() callback such
> as i40iw_query_gid() and c4iw_query_gid().
> > So it used to work.
> > Now my fix expects all values to be correct; due to uninitialized ib_qp_attr it is
> likely failing.
> >
> > So can you please try below hunk and see if ib_query_gid() progresses for you?
> > If it works, I will send the proper patch shortly.
> >
> 
> Its working. Issue is not seen with the below patch.

Thanks a lot for the quick test.
I will send the patch through Leon's queue for for-rc with your Tested-by tag.

> 
> 
> > diff --git a/drivers/infiniband/core/cma.c
> > b/drivers/infiniband/core/cma.c index 8512f63..e119cff 100644
> > --- a/drivers/infiniband/core/cma.c
> > +++ b/drivers/infiniband/core/cma.c
> > @@ -863,7 +863,7 @@ void rdma_destroy_qp(struct rdma_cm_id *id)
> > static int cma_modify_qp_rtr(struct rdma_id_private *id_priv,
> >                              struct rdma_conn_param *conn_param)  {
> > -       struct ib_qp_attr qp_attr;
> > +       struct ib_qp_attr qp_attr = {};
> >         int qp_attr_mask, ret;
> >         union ib_gid sgid;
> >
--
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




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux