On Tue, Jan 4, 2022 at 12:34 PM Ilya Maximets <[email protected]> wrote:
>
> On 1/3/22 15:15, David Marchand wrote:
> > The DPDK unit test only runs if vfio or igb_uio kernel modules are loaded:
> > on systems with only mlx5, this test is always skipped.
> >
> > Besides, the test tries to grab the first device listed by dpdk-devbind.py,
> > regardless of the PCI device status regarding kmod binding.
> >
> > Remove dependency on this DPDK script and use a minimal script that
> > reads PCI sysfs.
> >
> > This script is not perfect, as one can imagine PCI devices bound to
> > vfio-pci for virtual machines.
> > Add a new environment variable DPDK_PCI_ADDR for testers to select the
> > PCI device of their liking.
> > For consistency and grep, the temporary file PCI_ADDR is renamed
> > to DPDK_PCI_ADDR.
> >
> > Note: with mlx5 devices, there is now more OVS/DPDK warnings to waive.
> >
> > Signed-off-by: David Marchand <[email protected]>
> > Reviewed-by: Maxime Coquelin <[email protected]>
> > Acked-by: Eelco Chaudron <[email protected]>

[snip]

> While it's relatively safe to assume that vfio-pci/uio managed
> device is not your primary network connection, I think it's not
> the case for the normal mlx5 device.  IIUC, this script will
> take over the first found mlx5 device and that might lead to
> loosing the network connection to the test system.

The netdev associated to this mlx5 pci device can xmit, but it loses
its rx path when the mlx5 pmd initialises a port in dpdk: iirc, the
reason is that the mlx5 pmd will configure packets steering and catch
packets based on the same mac address.
So indeed, it could lead to losing connectivity.

> Maybe it's better to use mlx5 devices only if specifically asked to?

Just an idea..
We could skip mlx5 pci devices for which a netdev is in use.
The problem is to define what a netdev in use is.

The dpdk script looks at ipv4 routes per iface to warn users.
For ipv6, this is more difficult.. a link local address is almost
always present and you can imagine connecting ssh over this address.


But in the end, we are not that many to run those tests..
I agree the simpler is to let users pass a DPDK_PCI_ADDR if they want
to test with mlx5 devices.
(I should also add a note in the documentation for this env variable).


-- 
David Marchand

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to