On Wed, 8 Nov 2023 14:56:52 -0800 longli@xxxxxxxxxxxxxxxxx wrote: > From: Long Li <longli@xxxxxxxxxxxxx> > > When a VF is being exposed form the kernel, it should be marked as "slave" > before exposing to the user-mode. The VF is not usable without netvsc running > as master. The user-mode should never see a VF without the "slave" flag. > > An example of a user-mode program depending on this flag is cloud-init > (https://github.com/canonical/cloud-init/blob/19.3/cloudinit/net/__init__.py) Quick grep for "flags", "priv" and "slave" doesn't show anything. Can you point me to the line of code? > When scanning interfaces, it checks on if this interface has a master to > decide if it should be configured. There are other user-mode programs perform > similar checks. > > This commit moves the code of setting the slave flag to the time before VF is > exposed to user-mode. > Change since v3: > Change target to net-next. You don't consider this a fix? It seems like a race condition. > - if (ether_addr_equal(vf_netdev->perm_addr, ndev->perm_addr)) { > - netdev_notice(vf_netdev, > - "falling back to mac addr based matching\n"); > + if (ether_addr_equal(vf_netdev->perm_addr, ndev->perm_addr) || > + ether_addr_equal(vf_netdev->dev_addr, ndev->perm_addr)) This change doesn't seem to be described in the commit message. Please note that we have a rule against reposting patches within 24h: https://www.kernel.org/doc/html/next/process/maintainer-netdev.html#resending-after-review