diff options
| author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2025-11-19 18:09:18 +0200 |
|---|---|---|
| committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2025-12-10 12:15:58 +0000 |
| commit | 84c4ceebcb442ff8fe5fe695008b2cf9be65da57 (patch) | |
| tree | 0446dce24e88dce4b884327d30c2b01dfdf0c515 /src/conf_mode/vpp.py | |
| parent | 45e17ed4af6d14aa8d708053da936ecd6d7c0c50 (diff) | |
| download | vyos-1x-84c4ceebcb442ff8fe5fe695008b2cf9be65da57.tar.gz vyos-1x-84c4ceebcb442ff8fe5fe695008b2cf9be65da57.zip | |
T7819: VPP do not override driver if it is already done
The upstream VPP code already writes the ena device ID to new_id
So we can remove `ena` from `override_driver()`
The kernel does not provide a reliable way to check whether an ID has already been
registered, so we simply attempt the write and ignore the FileExistsError.
Any other failure is treated as a warning.
Fixes this case:
Traceback (most recent call last):
File "/usr/libexec/vyos/services/vyos-configd", line 156, in run_script
script.apply(c)
File "/usr/libexec/vyos/conf_mode/vpp.py", line 613, in apply
control_host.override_driver(
File "/usr/lib/python3/dist-packages/vyos/vpp/control_host.py", line 138, in override_driver
Path('/sys/module/vfio_pci/drivers/pci:vfio-pci/new_id').write_text(
File "/usr/lib/python3.11/pathlib.py", line 1079, in write_text
with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:
FileExistsError: [Errno 17] File exists
Diffstat (limited to 'src/conf_mode/vpp.py')
| -rwxr-xr-x | src/conf_mode/vpp.py | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/conf_mode/vpp.py b/src/conf_mode/vpp.py index 63000110a..b5aac3f2e 100755 --- a/src/conf_mode/vpp.py +++ b/src/conf_mode/vpp.py @@ -90,7 +90,6 @@ dependency_interface_type_map = { # dict of drivers that needs to be overrided override_drivers: dict[str, str] = { 'hv_netvsc': 'uio_hv_generic', - 'ena': 'vfio-pci', } # drivers that does not use PCIe addresses |
