On Fri, Jul 03, 2020 at 09:25:12AM +0300, Leon Romanovsky wrote: > > Why is this an improvement? Whatever this internal driver thing is, it > > is not a visible XRCD.. > > > > In fact why use an ib_xrcd here at all when this only needs the > > xrcdn? Just call the mlx_cmd_xrcd_* directly. > > This is proper IB object and IMHO it should be created with standard primitives, > so we will be able account them properly and see full HW objects picture without > need to go and combine pieces from driver and ib_core. I'm not sure it is a proper IB object, it is some weird driver internal thing, and I couldn't guess what it is being used for. Why are user QPs being associated with a driver internal XRCD? The key thing here is that it is never actaully used with any other core API expecting an xrcd, only the driver specific xrcdn is extracted and used in a few places. Further it doesn't even act like an core xrcd, QPs being attached to it are not recorded in the lists, the refcounts are not incrd, etc. So even if you did expose it over rdmatool the whole thing would be an inconsistent mess that doesn't reflect the expected configuration of a real xrcd. Jason