Page MenuHomePhabricator

Deleting a bond will place member interfaces into A/D state
Closed, ResolvedPublicFEATURE REQUEST

Description

vyos@R1# run show interfaces 
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
eth4             -                                 u/u  
eth5             -                                 u/u  
lo               127.0.0.1/8                       u/u  
                 ::1/128
[edit]
vyos@R1# set interfaces bonding bond1 address '100.64.0.1/24'
[edit]
vyos@R1# set interfaces bonding bond1 member interface 'eth4'
[edit]
vyos@R1# set interfaces bonding bond1 member interface 'eth5'
[edit]
vyos@R1# commit
[edit]
vyos@R1# run show interfaces 
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
bond1            100.64.0.1/24                     u/u  bond1 
eth4             -                                 u/u  
eth5             -                                 u/u  
lo               127.0.0.1/8                       u/u  
                 ::1/128
[edit]
vyos@R1# delete interfaces bonding 
[edit]
vyos@R1# commit
[edit]
vyos@R1# run show interfaces 
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
eth4             -                                 A/D  
eth5             -                                 A/D  
lo               127.0.0.1/8                       u/u  
                 ::1/128

Details

Difficulty level
Easy (less than an hour)
Version
1.2-rolling-20190916xxxx
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible

Event Timeline

c-po created this task.Sep 16 2019, 4:28 PM
c-po claimed this task.Sep 16 2019, 5:55 PM
c-po triaged this task as Normal priority.
c-po changed Version from - to 1.2-rolling-20190916xxxx.
c-po added a comment.EditedSep 18 2019, 5:37 AM

Okay, the old vyatta-bonding.pl executed the following code when a bond member has been removed:

sub if_up {
    my $intf = shift;
    system "sudo ip link set dev $intf up"
      and die "Could not set $intf up ($!)\n";

    my $smp_affinity = get_irq_affinity($intf);
    if ($smp_affinity) {
	system "/opt/vyatta/sbin/irq-affinity.pl $intf $smp_affinity"
	    and warn "Could not set $intf smp-affinity $smp_affinity\n";
    }
}

This code is definately not yet migrated!

Dmitry added a subscriber: Dmitry.Sep 18 2019, 5:47 AM
c-po closed this task as Resolved.Thu, Sep 19, 8:23 PM
c-po changed Difficulty level from Unknown (require assessment) to Easy (less than an hour).
c-po moved this task from Need Triage to Finished on the VyOS 1.3 Equuleus board.Sun, Oct 13, 3:02 PM