Page MenuHomeVyOS Platform

Delete interface from VRF and add it to bonding error
Closed, ResolvedPublicBUG

Description

To reproduce delete interface from vrf and add it to bonding:

set vrf name foo table '1001'
set interfaces ethernet eth1 vrf foo
commit


delete interfaces ethernet eth1 vrf
set interfaces bonding bond0 member interface eth1
commit

Commit:

vyos@r14# commit
[ interfaces bonding bond0 ]
VyOS had an issue completing a command.

Report time:      2022-07-11 17:38:21
Image version:    VyOS 1.4-rolling-202207111030
Release train:    sagitta

Built by:         [email protected]
Built on:         Mon 11 Jul 2022 10:30 UTC
Build UUID:       e01c6354-40c7-48db-a889-09516d7b1d31
Build commit ID:  21bd5b37f6f287

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

Hardware vendor:  QEMU
Hardware model:   Standard PC (Q35 + ICH9, 2009)
Hardware S/N:     
Hardware UUID:    4d6f4d29-1ae8-446f-8d2b-3decd9da64c7

OSError: [Errno 16] Device or resource busy

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/libexec/vyos/conf_mode/interfaces-bonding.py", line 216, in <module>
    apply(c)
  File "/usr/libexec/vyos/conf_mode/interfaces-bonding.py", line 207, in apply
    b.update(bond)
  File "/usr/lib/python3/dist-packages/vyos/ifconfig/bond.py", line 455, in update
    self.add_port(interface)
  File "/usr/lib/python3/dist-packages/vyos/ifconfig/bond.py", line 293, in add_port
    ret = self.set_interface('bond_add_port', f'+{interface}')
  File "/usr/lib/python3/dist-packages/vyos/ifconfig/control.py", line 181, in set_interface
    return self._set_sysfs(self.config, name, value)
  File "/usr/lib/python3/dist-packages/vyos/ifconfig/control.py", line 164, in _set_sysfs
    commited = self._write_sysfs(
  File "/usr/lib/python3/dist-packages/vyos/ifconfig/control.py", line 130, in _write_sysfs
    write_file(filename, str(value))
  File "/usr/lib/python3/dist-packages/vyos/util.py", line 223, in write_file
    raise e
  File "/usr/lib/python3/dist-packages/vyos/util.py", line 216, in write_file
    bytes = f.write(data)
OSError: [Errno 16] Device or resource busy



[[interfaces bonding bond0]] failed
Commit failed
[edit]
vyos@r14#

Details

Difficulty level
Normal (likely a few hours)
Version
VyOS 1.4-rolling-202207111030, VyOS 1.3-stable-202207110427
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible
Issue type
Bug (incorrect behavior)

Event Timeline

Viacheslav changed Version from VyOS 1.4-rolling-202207111030 to VyOS 1.4-rolling-202207111030, VyOS 1.3-stable-202207110427.Jul 11 2022, 2:47 PM
c-po changed the task status from Open to In progress.Jul 12 2022, 6:47 PM
c-po claimed this task.
c-po triaged this task as Normal priority.
c-po changed Difficulty level from Unknown (require assessment) to Normal (likely a few hours).
c-po changed Is it a breaking change? from Unspecified (possibly destroys the router) to Perfectly compatible.