On Fri, Oct 29, 2021 at 01:27:02PM -0300, Jason Gunthorpe wrote: > On Thu, Oct 28, 2021 at 08:55:22AM +0300, Leon Romanovsky wrote: > > From: Aharon Landau <aharonl@xxxxxxxxxx> > > > > The vendors set the IOVA of newly created MRs in rereg_user_mr, so don't > > overwrite it. That ensures that this field is set only if IB_MR_REREG_TRANS > > flag is provided. > > > > Fixes: 6e0954b11c05 ("RDMA/uverbs: Allow drivers to create a new HW object during rereg_mr") > > This isn't really a fixes type patch.. Why? We see that without this patch MR IOVA is not as expected. > > > Signed-off-by: Aharon Landau <aharonl@xxxxxxxxxx> > > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxx> > > drivers/infiniband/core/uverbs_cmd.c | 3 --- > > 1 file changed, 3 deletions(-) > > > > diff --git a/drivers/infiniband/core/uverbs_cmd.c b/drivers/infiniband/core/uverbs_cmd.c > > index 740e6b2efe0e..d1345d76d9b1 100644 > > +++ b/drivers/infiniband/core/uverbs_cmd.c > > @@ -837,11 +837,8 @@ static int ib_uverbs_rereg_mr(struct uverbs_attr_bundle *attrs) > > new_mr->device = new_pd->device; > > new_mr->pd = new_pd; > > new_mr->type = IB_MR_TYPE_USER; > > - new_mr->dm = NULL; > > - new_mr->sig_attrs = NULL; > > new_mr->uobject = uobj; > > atomic_inc(&new_pd->usecnt); > > - new_mr->iova = cmd.hca_va; > > new_uobj->object = new_mr; > > It is like this because the reg_mr path does it this way, if you want > to change it here then change reg_mr as well, but that needs auditing > all the drivers.. > > And I'd also suggest removing the other set a few lines below I decided to be safe than sorry and removed only 100% correct attributes that does require minimal audit. Thanks > > Jason