Page MenuHomeVyOS Platform

VPP: Bonding interface fails when changing VPP configuration
Closed, ResolvedPublicBUG

Description

vyos@VyOS-for-Smoke-Tests# commit
[ vpp ]
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 724, in apply
    call_dependents()
  File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 172, in call_dependents
    f()
  File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 141, in func_impl
    run_conditionally(target, tag_value, config)
  File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 132, in run_conditionally
    run_config_mode_script(target, config)
  File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 111, in run_config_mode_script
    mod.apply(c)
  File "/usr/libexec/vyos/conf_mode/vpp_interfaces_bonding.py", line 199, in apply
    i.kernel_delete()
  File "/usr/lib/python3/dist-packages/vyos/vpp/interface/bond.py", line 118, in kernel_delete
    self.vpp.lcp_pair_del(self.ifname, self.kernel_interface)
  File "/usr/lib/python3/dist-packages/vyos/vpp/control_vpp.py", line 80, in check_retval_wrapper
    if not return_value.retval == 0:
           ^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'retval'

[[vpp]] failed
Commit failed
Traceback (most recent call last):
  File "/usr/libexec/vyos/reset_section.py", line 116, in <module>
    session.commit()
  File "/usr/lib/python3/dist-packages/vyos/configsession.py", line 315, in commit
    out = self.__run_command([COMMIT])
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/vyos/configsession.py", line 242, in __run_command
    raise ConfigSessionError(output)
vyos.configsession.ConfigSessionError: [ vpp ]
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 600, in apply
    initialize_interface(
  File "/usr/libexec/vyos/conf_mode/vpp.py", line 534, in initialize_interface
    iface_new_name: str = control_host.get_eth_name(iface_config['dev_id'])
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/vyos/vpp/control_host.py", line 227, in get_eth_name
    raise FileNotFoundError(
FileNotFoundError: A device with ID 0000:00:05.0 not found in ethernet interfaces

delete [ vpp ] failed
Commit failed

After failed commit vpp show command throws an error:

vyos@VyOS-for-Smoke-Tests:~$ show vpp interfaces 
Traceback (most recent call last):
  File "/usr/libexec/vyos/op_mode/show_vpp_interfaces.py", line 234, in <module>
    vpp = VPPControl()
          ^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/vyos/vpp/control_vpp.py", line 109, in __init__
    raise VPPIOError(2, 'Cannot connect to VPP API')
vpp_papi.vpp_papi.VPPIOError: [Errno 2] Cannot connect to VPP API

Steps to reproduce (DPDK):

set vpp settings interface eth1 driver dpdk
commit
set vpp interfaces bonding bond0 kernel-interface vpptun0
set vpp interfaces bonding bond0 member interface eth1
commit
set vpp settings unix poll-sleep-usec 222
commit

Steps to reproduce (XDP):

set vpp settings interface eth1 driver xdp
commit
set vpp interfaces bonding bond0 kernel-interface vpptun0
set vpp interfaces bonding bond0 member interface eth1
commit
set vpp settings lcp ignore-kernel-routes
commit

Google cloud vm: e2-standard-8 (8 vCPUs, 32 GB Memory)

Version:          VyOS 2025.09.01-0023-rolling
Release train:    current
Release flavor:   generic

Built by:         autobuild@vyos.net
Built on:         Mon 01 Sep 2025 00:23 UTC
Build UUID:       a729cf79-bf12-4b5f-8d10-261158e4c5f0
Build commit ID:  242c1a587acac6

Architecture:     x86_64
Boot via:         installed image
System type:      KVM guest
Secure Boot:      disabled

Hardware vendor:  Google
Hardware model:   Google Compute Engine
Hardware S/N:     GoogleCloud-AAD02DEFDD2556E2E95D7FB7D9562375
Hardware UUID:    aad02def-dd25-56e2-e95d-7fb7d9562375

Details

Version
vyos-2025.09.01-0023-rolling-generic-amd64
Is it a breaking change?
Perfectly compatible
Issue type
Bug (incorrect behavior)

Event Timeline

Unknown Object (User) triaged this task as High priority.Sep 9 2025, 9:38 AM
a.kudientsov renamed this task from VPP: DPDK configuration fails in cloud vm to VPP: DPDK/XDP configuration fails in cloud vm.Sep 9 2025, 2:31 PM
a.kudientsov updated the task description. (Show Details)
natali-rs1985 changed the task status from Open to In progress.Oct 6 2025, 4:24 PM
natali-rs1985 claimed this task.
natali-rs1985 changed Is it a breaking change? from Unspecified (possibly destroys the router) to Perfectly compatible.
natali-rs1985 renamed this task from VPP: DPDK/XDP configuration fails in cloud vm to VPP: Bonding interface fails when change vpp configuration.Oct 6 2025, 5:40 PM
dmbaturin renamed this task from VPP: Bonding interface fails when change vpp configuration to VPP: Bonding interface fails when changing VPP configuration.Nov 12 2025, 6:02 PM