On Tue, Oct 27, 2020 at 01:55:08PM -0300, Jason Gunthorpe wrote: > On Mon, Oct 12, 2020 at 07:55:58AM +0300, Leon Romanovsky wrote: > > @@ -543,17 +537,9 @@ static int __must_check destroy_hw_idr_uobject(struct ib_uobject *uobj, > > struct uverbs_obj_idr_type, type); > > int ret = idr_type->destroy_object(uobj, why, attrs); > > > > - /* > > - * We can only fail gracefully if the user requested to destroy the > > - * object or when a retry may be called upon an error. > > - * In the rest of the cases, just remove whatever you can. > > - */ > > - if (ib_is_destroy_retryable(ret, why, uobj)) > > + if (ret) > > return ret; > > > > - if (why == RDMA_REMOVE_ABORT) > > - return 0; > > This shouldn't be deleted.. Yes, this is what we noticed too. I'll add your version for a couple of days to our regression. Thanks