On Wed, 2017-06-28 at 10:23 +0000, Elior, Ariel wrote: > > From: Leon Romanovsky [mailto:leon@xxxxxxxxxx] > > Sent: Wednesday, June 28, 2017 1:11 PM > > To: Amrani, Ram <Ram.Amrani@xxxxxxxxxx> > > Cc: dledford@xxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx; Elior, Ariel > > <Ariel.Elior@xxxxxxxxxx> > > Subject: Re: [PATCH rdma v1 1/1] IB/core: Fix input len in multiple > > user verbs > > > > On Wed, Jun 28, 2017 at 10:02:45AM +0000, Amrani, Ram wrote: > > > > > Most user verbs pass user data to the kernel with the > > > > > inclusion of the > > > > > ib_uverbs_cmd_hdr structure. This is problematic because the > > > > > vendor has > > > > > no ideas if the verb was called by a legacy verb or an > > > > > extended verb. > > > > > > > > Why vendor should know about it? It has midlayer (ib/core) > > > > between him > > > > and user to handle it. > > > > > > > > > > Knowing the inlen can be used to determine if the library is > > > newer than > > > the kernel and what features it supports or not. > > > > It is not interesting case, because we are not breaking UAPI, only > > extending. It ensures that kernel will fill as much as possible and > > will > > always have success in it. After that it is library responsibility > > to > > understand if everything was filled. > > > > Thanks > > In our case, kernel driver needs to know whether library supports a > certain > feature (doorbell overflow recovery). It doesn't care if it was an > extended > verb or not, but it cares whether the lib is sufficiently new to have > provided > the required information. If the library is sufficiently new > (supports) then > kernel will register the library's doorbell address with the overflow > recovery > mechanism, and perform recovery if required, otherwise it would not > (as the > library is not supplying the necessary information for recovery to > take place). > This is not something the library needs to know, but the kernel > driver. Having > correct input len is required for successfully avoiding breaking the > UAPI. Leon, does this explanation resolve your objections? Also, have you checked the mlx5/mthca portions of this patch? -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: B826A3330E572FDD Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD -- 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