On Thu, Feb 22, 2018 at 10:34:17PM -0500, Doug Ledford wrote: > On Wed, 2018-02-21 at 18:12 +0200, Leon Romanovsky wrote: > > Changelog v0 -> v1: > > * Added Dennis's ROB > > * Dropped for now "RDMA/verbs: Drop uverbs_ex_mask" patch, I'm waiting > > for mlx5 shared code in order to avoid unnecessary merge conflicts. > > This didn't turn out to be as true as you'd hoped I think. I had to fix > up a few of these. I stopped after this series and pushed it to my wip > for next branch so you can confirm it all merged properly. Assuming > it's right, series applied. Thanks, I made git diff for all three files and everything looks ok. The reason for merge conflict here is that this the series was based on one [1] rdma-rc patch in that area, but uaccess() changes slipped in between. Thanks again > > > * Added patch to convert __u32 to kernel type > > * Simplified more command flags checks > > * Rebased > > > > --------------------------------------------------------------------------- > > > > Hi, > > > > This series comes as an outcome of [1] which was sent to rdma-rc > > and it should be applied on top of that patch. > > > > During review process of that patch, we realized that the > > ib_uverbs_write() has number of flaws and this series > > tries to fix them: > > 1. Localize all processing and verification code in specific functions. > > 2. Fix the command mask insufficient checks. > > 3. Simplify code to allow drop uverbs_ex_mask and in the future we > > will drop uverbs_mask too. > > 4. Fix differences in error codes. > > > > Thanks > > > > [1] https://marc.info/?l=linux-rdma&m=151851719021404&w=2 > > > > Leon Romanovsky (14): > > RDMA/uverbs: Convert command mask validity check function to be bool > > RDMA/uverbs: Update sizeof users > > RDMA/uverbs: Refactor flags checks and update return value > > RDMA/uverbs: Fail as early as possible if not enough header data was > > provided > > RDMA/uverbs: Return not supported error code for unsupported commands > > RDMA/uverbs: Unify return values of not supported command > > RDMA/uverbs: Refactor command header processing > > RDMA/uverbs: Properly check command supported mask > > RDMA/uverbs: Move uncontext check before SRCU read lock > > RDMa/uverbs: Copy ex_hdr outside of SRCU read lock > > RDMA/uverbs: Refactor the header validation logic > > RDMA/uverbs: Replace user's types with kernel's types > > RDMA/uverbs: Reduce number of command header flags checks > > RDMA/verbs: Return proper error code for not supported system call > > > > drivers/infiniband/core/uverbs_main.c | 214 +++++++++++++++------------------- > > drivers/infiniband/core/verbs.c | 46 ++++---- > > include/uapi/rdma/ib_user_verbs.h | 5 +- > > 3 files changed, 121 insertions(+), 144 deletions(-) > > > > -- > > 2.16.1 > > > > -- > Doug Ledford <dledford@xxxxxxxxxx> > GPG KeyID: B826A3330E572FDD > Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD
Attachment:
signature.asc
Description: PGP signature