File tree Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Original file line number Diff line number Diff line change @@ -1455,6 +1455,10 @@ static void bond_compute_features(struct bonding *bond)
14551455static void bond_setup_by_slave (struct net_device * bond_dev ,
14561456 struct net_device * slave_dev )
14571457{
1458+ bool was_up = !!(bond_dev -> flags & IFF_UP );
1459+
1460+ dev_close (bond_dev );
1461+
14581462 bond_dev -> header_ops = slave_dev -> header_ops ;
14591463
14601464 bond_dev -> type = slave_dev -> type ;
@@ -1469,6 +1473,8 @@ static void bond_setup_by_slave(struct net_device *bond_dev,
14691473 bond_dev -> flags &= ~(IFF_BROADCAST | IFF_MULTICAST );
14701474 bond_dev -> flags |= (IFF_POINTOPOINT | IFF_NOARP );
14711475 }
1476+ if (was_up )
1477+ dev_open (bond_dev , NULL );
14721478}
14731479
14741480/* On bonding slaves other than the currently active slave, suppress
You can’t perform that action at this time.
0 commit comments