Lines Matching refs:bond
1518 struct mlx4_bond *bond = container_of(work, struct mlx4_bond, work); in mlx4_bond_work() local
1521 if (bond->is_bonded) { in mlx4_bond_work()
1522 if (!mlx4_is_bonded(bond->dev)) { in mlx4_bond_work()
1523 err = mlx4_bond(bond->dev); in mlx4_bond_work()
1525 mlx4_err(bond->dev, "Fail to bond device\n"); in mlx4_bond_work()
1528 err = mlx4_port_map_set(bond->dev, &bond->port_map); in mlx4_bond_work()
1530 mlx4_err(bond->dev, in mlx4_bond_work()
1532 bond->port_map.port1, in mlx4_bond_work()
1533 bond->port_map.port2, err); in mlx4_bond_work()
1535 } else if (mlx4_is_bonded(bond->dev)) { in mlx4_bond_work()
1536 err = mlx4_unbond(bond->dev); in mlx4_bond_work()
1538 mlx4_err(bond->dev, "Fail to unbond device\n"); in mlx4_bond_work()
1540 put_device(&bond->dev->persist->pdev->dev); in mlx4_bond_work()
1541 kfree(bond); in mlx4_bond_work()
1547 struct mlx4_bond *bond; in mlx4_queue_bond_work() local
1549 bond = kzalloc(sizeof(*bond), GFP_ATOMIC); in mlx4_queue_bond_work()
1550 if (!bond) in mlx4_queue_bond_work()
1553 INIT_WORK(&bond->work, mlx4_bond_work); in mlx4_queue_bond_work()
1555 bond->dev = dev; in mlx4_queue_bond_work()
1556 bond->is_bonded = is_bonded; in mlx4_queue_bond_work()
1557 bond->port_map.port1 = v2p_p1; in mlx4_queue_bond_work()
1558 bond->port_map.port2 = v2p_p2; in mlx4_queue_bond_work()
1559 queue_work(mlx4_wq, &bond->work); in mlx4_queue_bond_work()