On Tue, Jun 30, 2020 at 09:06:30AM -0300, Jason Gunthorpe wrote: > On Tue, Jun 30, 2020 at 02:52:24PM +0300, Leon Romanovsky wrote: > > On Tue, Jun 30, 2020 at 08:37:29AM -0300, Jason Gunthorpe wrote: > > > On Tue, Jun 30, 2020 at 10:21:37AM +0300, Leon Romanovsky wrote: > > > > On Mon, Jun 29, 2020 at 12:39:07PM -0300, Jason Gunthorpe wrote: > > > > > On Wed, Jun 24, 2020 at 01:54:22PM +0300, Leon Romanovsky wrote: > > > > > > @@ -4018,8 +4028,7 @@ const struct uapi_definition uverbs_def_write_intf[] = { > > > > > > IB_USER_VERBS_EX_CMD_DESTROY_RWQ_IND_TBL, > > > > > > ib_uverbs_ex_destroy_rwq_ind_table, > > > > > > UAPI_DEF_WRITE_I( > > > > > > - struct ib_uverbs_ex_destroy_rwq_ind_table), > > > > > > - UAPI_DEF_METHOD_NEEDS_FN(destroy_rwq_ind_table))), > > > > > > + struct ib_uverbs_ex_destroy_rwq_ind_table))), > > > > > > > > > > Removing these is kind of troublesome.. This misses the one for ioctl: > > > > > > > > > > UAPI_DEF_CHAIN_OBJ_TREE_NAMED( > > > > > UVERBS_OBJECT_RWQ_IND_TBL, > > > > > UAPI_DEF_OBJ_NEEDS_FN(destroy_rwq_ind_table)), > > > > > > > > I will remove, but it seems that we have some gap here, I would expect > > > > any sort of compilation error for mlx4. > > > > > > Why would there be a compilation error? > > > > I would expect BUILD_BUG_ON_ZERO() is thrown if ibdev_fn == NULL > > ?? > > > > And it should not be removed, it needs to be reworked to point to some > > > other function I suppose. > > > > Why? > > The destroy function should not be registered at all if rwq_ind is not > supported by the driver - this is the methodlogy. And here comes mlx4 case that needs create() call but doesn't need destroy(), because it will be empty after this refactoring. Thanks > > Jason