On Fri, Sep 14, 2018 at 04:37:21PM -0500, Steve Wise wrote: > > > On 9/14/2018 2:35 PM, Jason Gunthorpe wrote: > > On Fri, Sep 14, 2018 at 01:45:05PM -0500, Steve Wise wrote: > > > >>>> Since the rdma core currently assigned device name strings, I'm thinking > >>>> to just follow that scheme. This leads to slightly different command > >>>> syntax: > >>>> > >>>> rdma link add TYPE dev DEV > >>>> > >>>> EG: rdma link add rxe dev eth0 > >>>> > >>>> Then the kernel would return the resulting ib_device name and index. > >>> > >>> I would rather we specify the ib_device name from userspace from the > >>> start.. > >>> > >> > >> Why? This is not current practice for rdma devices: the core names them. > > > > That is a bad practice.. Leon has been working on device renaming like > > netdev has, so it would make no sense to have no name here and have > > renaming down the road. > > > > Jason > > > > This causes a slit kink in arbitrarily naming rxe rdma devices. From > providers/rxe/rxe.c: > > static const struct verbs_match_ent hca_table[] = { > /* FIXME: rxe needs a more reliable way to detect the rxe device */ > VERBS_NAME_MATCH("rxe", NULL), > {}, > }; > > > So when I add a new rxe device named "foo0", it gets added fine in the > kernel, but the user space side skips it. It doesn't show up in > ibv_devices or ibv_devinfo for example. But the sysfs entries are there... Yes, this needs fixing too :( I was hoping we'd get to netlink discovery before this became an issue.. The right solution is to use the new driver id number, I think. Jason