1853 bond_compute_features(bond);
1854
1855 if (bond->primary_slave == slave) {
1856 bond->primary_slave = NULL;
1857 }
1858
1859 if (oldcurrent == slave) {
1860 bond_change_active_slave(bond, NULL);
1861 }
1862
1863 if ((bond->params.mode == BOND_MODE_TLB) ||
1864 (bond->params.mode == BOND_MODE_ALB)) {
1865
1866
1867
1868
1869
1870 write_unlock_bh(&bond->lock);
1871 bond_alb_deinit_slave(bond, slave);
1872 write_lock_bh(&bond->lock);
1873 }
1874
1875 if (oldcurrent == slave) {
1876
1877
1878
1879
1880
1881 write_unlock_bh(&bond->lock);
1882 read_lock(&bond->lock);
1883 write_lock_bh(&bond->curr_slave_lock);
1884
1885 bond_select_active_slave(bond);
1886
1887 write_unlock_bh(&bond->curr_slave_lock);
1888 read_unlock(&bond->lock);
1889 write_lock_bh(&bond->lock);
1890 }
1891
1892 if (bond->slave_cnt == 0) {
1893 bond_set_carrier(bond);