Skip to content

Conversation

@mykaul
Copy link
Contributor

@mykaul mykaul commented Jan 1, 2026

From CoPi:
I have fixed the issue by adding support for Azure's netvsc driver in perftune.py.

The changes include:

Added nic_is_netvsc_iface method to NetPerfTuner class to identify interfaces using the hv_netvsc driver.
Updated nic_is_hw_iface to exclude netvsc interfaces, so they are treated as composite interfaces.
Updated nic_is_composite_iface to include netvsc interfaces.
Modified _learn_slaves_one to correctly identify the underlying physical device (VF) for netvsc interfaces by looking for lower* links in sysfs.
Updated the tune method to print the correct interface type when configuring netvsc interfaces.
These changes ensure that perftune.py can correctly identify and tune the underlying physical network device when running in Azure with accelerated networking enabled.

Fixes: #2534

@mykaul mykaul changed the title Fix/azure netvsc followup perftune.py: add support for Azure netvsc driver Jan 1, 2026
@mykaul
Copy link
Contributor Author

mykaul commented Jan 1, 2026

@fruch - please test.

@fruch
Copy link

fruch commented Jan 1, 2026

@fruch - please test.

this looks like the code I've suggested, and already tested

def nic_is_vlan_iface(self, nic):
return self.__nic_is_vlan_iface.get(nic, False)

def nic_has_slaves(self, nic):
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

initial commit has this nice comment here, not sure why it was removed, but OK:

# Azure 'netvsc' interface has a symbolic link 'lower_<parent_interface_name>' under
            # /sys/class/net/<interface name>.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cause now it's not specific to Azure netvsc

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[perftune.py][Azure]: identify dependent physical network device

3 participants