On Fri, Nov 27, 2020 at 09:55:11AM +0000, liweihang wrote: > On 2020/11/27 3:24, Jason Gunthorpe wrote: > > On Thu, Nov 19, 2020 at 06:15:42AM +0000, liweihang wrote: > >> On 2020/11/19 3:11, Jason Gunthorpe wrote: > >>> On Mon, Nov 16, 2020 at 07:33:28PM +0800, Weihang Li wrote: > >>>> @@ -503,7 +581,23 @@ static inline int set_ud_wqe(struct hns_roce_qp *qp, > >>>> if (ret) > >>>> return ret; > >>>> > >>>> - set_extend_sge(qp, wr, &curr_idx, valid_num_sge); > >>>> + if (wr->send_flags & IB_SEND_INLINE) { > >>>> + ret = set_ud_inl(qp, wr, ud_sq_wqe, &curr_idx); > >>>> + if (ret) > >>>> + return ret; > >>> > >>> Why are you implementing this in the kernel? No kernel ULP sets this > >>> flag? > >> > >> Sorry, I don't understand. Some kernel users may set IB_SEND_INLINE > >> when using UD, some may not, we just check this flag to decide how > >> to fill the data into UD SQ WQE here. > > > > I mean if you 'git grep IB_SEND_INLINE' nothing uses it. > > > > This is all dead code. > > > > How did you test it? > > > > Jason > > > > Hi Jason, > > We have tested it with our own tools. After running 'git grep IB_SEND_INLINE', > I found following drivers refer to this flag: > > bnxt_re/cxgb4/i40iw/mlx5/ocrdma/qedr/rxe/siw > > So I'm still a bit confused. Do you mean that no kernel ULP uses UD inline or > the IB_SEND_INLINE flag? Yes > Should current related codes be removed? Quite possibly, though rxe and siw might be using it as part of the uAPI > I also found a very old discussion about removing this flag, but there was no > futher information: > > https://lists.openfabrics.org/pipermail/general/2007-August/039826.html Right, it has been unused for a very long time, I doubt it will ever get used Jason