On Fri, May 29, 2020 at 08:31:21PM -0300, Jason Gunthorpe wrote: > On Wed, May 27, 2020 at 04:54:08PM +0300, Leon Romanovsky wrote: > > From: Maor Gottlieb <maorg@xxxxxxxxxxxx> > > > > Add support to get MR (mkey) resource dump in RAW format. > > > > Signed-off-by: Maor Gottlieb <maorg@xxxxxxxxxxxx> > > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxxxx> > > drivers/infiniband/hw/mlx5/restrack.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/infiniband/hw/mlx5/restrack.c b/drivers/infiniband/hw/mlx5/restrack.c > > index 9e1389b8dd9f..834886536127 100644 > > +++ b/drivers/infiniband/hw/mlx5/restrack.c > > @@ -116,7 +116,8 @@ int mlx5_ib_fill_res_mr_entry(struct sk_buff *msg, > > struct nlattr *table_attr; > > > > if (raw) > > - return -EOPNOTSUPP; > > + return fill_res_raw(msg, mr->dev, MLX5_SGMT_TYPE_PRM_QUERY_MKEY, > > + mlx5_mkey_to_idx(mr->mmkey.key)); > > None of the raw functions actually share any code with the non raw > part, why are the in the same function? In fact all the implemenations > just call some other function for raw. > > To me this looks like they should should all be a new op > 'fill_raw_res_mr_entry' and drop the 'bool' I don't think that this is right approach, we already created ops per-objects o remove API multiplexing. Extra de-duplication will create too much ops without any real benefit. I can agree with you that "bool" is better to be named as "flags", but not sure that it should be done now. Thanks > > Jason