-
Couldn't load subscription status.
- Fork 8
feat: Add devlink commands and RSS queues settings #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
d35d252 to
87223d2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds device management functionality for network adapters, particularly focusing on devlink commands, MSI-X vectors, RSS queue configuration, and SR-IOV driver management capabilities. It also enhances the virtualization feature to support VF ID lookup by PCI address.
- Added new methods to LinuxNetworkInterface for managing MSI-X vectors, RSS queues, and SR-IOV driver autoprobe settings using devlink commands
- Implemented VF ID retrieval by PCI address in the virtualization feature with proper exception handling
- Enhanced test coverage with comprehensive unit tests for all new functionality
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/unit/test_mfd_network_adapter/test_network_interface/test_linux_network_interface.py | Added comprehensive tests for new MSI-X, RSS, and SR-IOV management methods with proper fixtures |
| tests/unit/test_mfd_network_adapter/test_network_interface/test_feature/test_virtualization/test_virtualization_linux.py | Added tests for VF ID retrieval by PCI address with exception handling scenarios |
| mfd_network_adapter/network_interface/linux.py | Implemented core devlink and device management methods for adapter control |
| mfd_network_adapter/network_interface/feature/virtualization/linux.py | Added VF ID lookup functionality with proper error handling |
| mfd_network_adapter/exceptions.py | Added new exception classes for VF and hypervisor-related errors |
| README.md | Updated documentation to reflect new methods and exception classes |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
b631c1f to
56197d7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
tests/unit/test_mfd_network_adapter/test_network_interface/test_linux_network_interface.py:1
- The class name
TestQueueLinuxin the test file fortest_virtualization_linux.pydoes not accurately reflect the test content. It should be renamed toTestVirtualizationLinuxto match the functionality being tested.
# Copyright (C) 2025 Intel Corporation
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
f94b2c0 to
7c70c03
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
tests/unit/test_mfd_network_adapter/test_network_interface/test_linux_network_interface.py
Show resolved
Hide resolved
...adapter/test_network_interface/test_feature/test_virtualization/test_virtualization_linux.py
Show resolved
Hide resolved
7c70c03 to
3209d07
Compare
e9366bf to
879e8c7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated 4 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
b8d6439 to
040ed79
Compare
7b46d17 to
e5659dd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not a fan of API which operates on different interface
f6fe95a to
c36266a
Compare
mfd_network_adapter/network_interface/feature/virtualization/linux.py
Outdated
Show resolved
Hide resolved
9d19069 to
7456d16
Compare
mfd_network_adapter/network_interface/feature/virtualization/linux.py
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
suggestion
3911e05 to
f421177
Compare
162db7c to
8c4e80c
Compare
8c4e80c to
e81e099
Compare
Add functions: reload_adapter_devlink, get_msix_vectors_couint, set_msix_vectors_count, set_rss_queues_count, set_sriov_drivers_autoprobe. Fixes intel#26 Signed-off-by: Kacper Tokarzewski <kacper.tokarzewski@intel.com>
e81e099 to
2b0333c
Compare
This pull request introduces several new functionalities and exceptions for advanced network interface management, particularly focused on Linux systems and virtualization features. The changes add new methods for configuring SR-IOV, RSS queues, and MSI-X vectors, as well as new exceptions for more granular error handling. Documentation and tests have been updated accordingly.
New network interface configuration methods:
set_sriov_drivers_autoprobemethod toLinuxDriver, allowing enable/disable of SR-IOV driver autoprobe via sysfs.set_rss_queues_countandget_rss_queues_countmethods to Linux RSS feature, enabling setting and retrieving RSS queue counts, including support for VFs via PCI address.set_msix_vectors_countandget_msix_vectors_countmethods to Linux virtualization feature, supporting configuration and querying of MSI-X vectors by devlink or sysfs.reload_adapter_devlinkmethod to Linux network interface for reloading adapters via devlink.get_vf_id_by_pcimethod to Linux virtualization feature to map a VF PCI address to its VF ID.New exceptions for error handling:
VirtualFunctionNotFoundException,HypervisorNotSupportedException,NetworkAdapterConfigurationException, andNetworkInterfaceNotSupportedfor more precise error reporting in network interface operations.Documentation updates:
README.mdto document all new methods, exceptions, and usage patterns for Linux network interface management, including SR-IOV, RSS, and MSI-X configuration. [1] [2] [3] [4] [5] [6]Testing improvements:
Supporting data structures and imports:
MethodTypedataclass for selecting method of MSI-X vector configuration (devlink/sysfs).These changes provide more granular control and observability over network interface features, especially in virtualized and high-performance environments.