On Tue, May 30, 2017 at 10:15:14AM +0200, Jiri Pirko wrote: > Tue, May 30, 2017 at 09:58:45AM CEST, leon@xxxxxxxxxx wrote: > >On Tue, May 30, 2017 at 09:33:52AM +0200, Jiri Pirko wrote: > >> Tue, May 30, 2017 at 09:15:58AM CEST, leon@xxxxxxxxxx wrote: > >> >From: Yishai Hadas <yishaih@xxxxxxxxxxxx> > >> > > >> >Enable QP creation which is associated to underlay QP. This comes as a > >> >pre-patch for downstream patches in this series to enable flow steering > >> >from user space application on the underlay IPoIB QP. > >> > > >> >Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx> > >> >Reviewed-by: Maor Gottlieb <maorg@xxxxxxxxxxxx > >> >Signed-off-by: Leon Romanovsky <leon@xxxxxxxxxx> > >> >--- > >> > >> [...] > >> > >> > >> >diff --git a/include/uapi/rdma/ib_user_verbs.h b/include/uapi/rdma/ib_user_verbs.h > >> >index 477d629f539d..422b20456975 100644 > >> >--- a/include/uapi/rdma/ib_user_verbs.h > >> >+++ b/include/uapi/rdma/ib_user_verbs.h > >> >@@ -578,7 +578,7 @@ struct ib_uverbs_ex_create_qp { > >> > __u32 comp_mask; > >> > __u32 create_flags; > >> > __u32 rwq_ind_tbl_handle; > >> >- __u32 reserved1; > >> >+ __u32 associated_qpn; > >> > >> This breaks uapi... > > > >Not really, we are using comp_mask scheme to signal changes/predecessor > >of these structs. Users of this file and structs check comp_mask and > >access new fields only if they are exposed there. > > > >In this case, there are no users of reserved1 and hence it can be > >replace to the new field with corresponding comp_mask flag (IB_QP_CREATE_ASSOC_QPN) > >without worry of breakage. > > I, as an app could include ib_user_verbs.h and do: > > struct ib_uverbs_ex_create_qp something; > > something.reserved1 = 0; > > Than I won't compile, would I? You are right, the good thing that in IB world, there is no direct usage of these files and they are needed for rdma-core (libibverbs) library. Thanks >
Attachment:
signature.asc
Description: PGP signature