RE: [PATCH for-rc] RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC

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

 



> From: Jason Gunthorpe <jgg@xxxxxxxxxx> 
> Sent: Friday, January 15, 2021 1:24 AM
> On Thu, Jan 14, 2021 at 06:26:48AM -0800, Bryan Tan wrote:
> > The PVRDMA device defines network_hdr_type according to an old
> > definition of the rdma_network_type enum that has since changed,
> > resulting in the wrong rdma_network_type being reported. Fix this by
> > explicitly defining the enum used by the PVRDMA device and adding a
> > function to convert the pvrdma_network_type to rdma_network_type enum.
> 
> How come I can't find anything reading this in rdma-core?
> 
> $ ~/oss/rdma-core#git grep network_hdr_type
> kernel-headers/rdma/vmw_pvrdma-abi.h:  __u8 network_hdr_type;
> 
> ??

network_hdr_type isn't exposed in the userspace WC ibv_wc. Given that the
field is only in the kernel side, it didn't seem like we should add the
new enum to vmw_pvrdma-abi.h either.

> > Fixes: 1c15b4f2a42f ("RDMA/core: Modify enum ib_gid_type and enum rdma_network_type")
> > Signed-off-by: Bryan Tan <bryantan@xxxxxxxxxx>
> 
> Add Cc: stable@xxxxxxxxxxxxxxx # 5.10+

Will do.

> > diff --git a/drivers/infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h b/drivers/infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h
> > index 86a6c054ea26..637d33944f95 100644
> > --- a/drivers/infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h
> > +++ b/drivers/infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h
> > @@ -201,6 +201,13 @@ enum pvrdma_device_mode {
> >     PVRDMA_DEVICE_MODE_IB,     /* InfiniBand. */
> >  };
> >  
> > +enum pvrdma_network_type {
> > +   PVRDMA_NETWORK_IB,
> > +   PVRDMA_NETWORK_ROCE_V1 = PVRDMA_NETWORK_IB,
> > +   PVRDMA_NETWORK_IPV4,
> > +   PVRDMA_NETWORK_IPV6
> > +};
> 
> This is in the wrong place, uapi data needs to be in
> includ/ulp/rdma/vmw_pvrdma-abi.h

Please see above.

Thanks,
Bryan




[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