On 08/05/2017 01:14 PM, Laine Stump wrote: > On 08/03/2017 02:33 AM, Moshe Levi wrote: >> Hi Laine, >> >> I have a few question before I can give my opinion. >> I the Mellanox Card Dual Port that support one PCI with 2 PF is ConnectX-3 and ConnectX-3 Pro. (maybe others cards I will check this) >> The ConnectX-4 Dual Port and above is implemented with 2 PCI devices per 2 PF. > So is the "multiple netdevs for a single PCI device" hardware model > completely deprecated, and will never show up again in new products? > > If that's the case, maybe I shouldn't burden libvirt's config with all > this new config that will only be used for legacy hardware. Perhaps a > better approach would be to stick with the current config, and make it > work properly for VFIO device assignment when a ConnectX-3 card is > configured in single port mode - even that doesn't work correctly now[*] > but it's a more easily solved problem, and can be done with no config > changes. > > Opinions about this? If it's a deadend and the existing legacy hardware > can be used in a reasonable manner by setting it to single port mode, I > don't want to add externally-visible knobs to libvirt. > > > [*]If a VF is configured to be "port 2 only", libvirt would still try to > get/set the MAC and vlan tag with a netlink message to the *port 1* > netdev of the PF, so it would be saving/setting the wrong (nonexistent?) > VF netdev. I just tried this and find I was partially mistaken. For example, lets say that I have a PF with netdevs p2p1 (port 1) and p2p2 (port 2), and I set it up to have the first 4 VFs on port 1 and the 2nd 4 on port 2. It turns out that I can set the MAC/vlan tag using either p2p1 *or* p2p2 and it will be set in the correct place. However, if I try to *get* the current MAC/vlan tag for a VF that uses port 2 via the PF netdev for port 1, then I will just get back 0. This might seem confusing/misleading, but it actually makes the job of fixing device assignment for single port mode a bit simpler! > > I did send patches yesterday (any reviews/testing appreciated!) that > make everything work properly when saving/setting/restoring the VF > netdev MAC/vlan tags on dual port cards used for macvtap passthrough: > > https://www.redhat.com/archives/libvir-list/2017-August/msg00170.html > > Those don't fix the situation when doing VFIO device assignment, but > they do at least make macvtap passthrough work correctly (for all VF > netdevs, even when the netdevs are dual port!), and are the first step > in getting it right for VFIO. > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list