On Wed, Nov 04, 2020 at 12:40:11PM +0200, Edward Srouji wrote: > > On 11/4/2020 2:00 AM, Jason Gunthorpe wrote: > > On Tue, Nov 03, 2020 at 05:54:58PM -0600, Bob Pearson wrote: > > > Since 5.10 some of the pyverbs tests are skipping with the warning > > > "Device rxe_0 doesn't have net interface" > > > > > > These occur in tests/test_rdmacm.py. As far as I can tell the error occurs in > > > > > > RDMATestCase _add_gids_per_port after the following > > > > > > if not os.path.exists('/sys/class/infiniband/{}/device/net/'.format(dev)): > > > self.args.append([dev, port, idx, None]) > > > continue > > > > > > In fact there is no such path which means it never finds an ip_addr for the device. > > That isn't an acceptable way to find netdevs for a RDMA device.. > > > > This test is really buggy, that is not an acceptable way to find the > > netdev for a RDMA device. Looks like it is some hacky way to read the > > gid table? It should just read the gid table.. Edward? > > GID table is not the reason. We need the netdev in order to get the IP > address of the interface. The GID table has a list of all the IP addresses of the IB device, and all the netdevs that provide it > > > Did something change here? Do other RDMA devices have /sys/class/infiniband/XXX/device/net? > > Yes, some will > > Nothing really changed in this area lately (in pyverbs / rdma-core tests). > > RXE can also have a netdev here if it's linked to one. E.g. by doing "rdma > link add <rxe_devname> type rxe netdev <net_devname>" No it can't, this is the "parent" device and ib_device can never be a parent of a netdev. rxe should have no parent. Jason