Lines Matching refs:sq_peer
441 struct mlx5e_rep_sq_peer *sq_peer;
451 xa_for_each(&rep_sq->sq_peer, i, sq_peer) {
452 if (sq_peer->rule)
453 mlx5_eswitch_del_send_to_vport_rule(sq_peer->rule);
455 xa_erase(&rep_sq->sq_peer, i);
456 kfree(sq_peer);
459 xa_destroy(&rep_sq->sq_peer);
474 struct mlx5e_rep_sq_peer *sq_peer;
477 sq_peer = kzalloc(sizeof(*sq_peer), GFP_KERNEL);
478 if (!sq_peer)
484 kfree(sq_peer);
488 sq_peer->rule = flow_rule;
489 sq_peer->peer = peer_esw;
490 err = xa_insert(&rep_sq->sq_peer, peer_rule_idx, sq_peer, GFP_KERNEL);
492 kfree(sq_peer);
539 xa_init(&rep_sq->sq_peer);
544 xa_destroy(&rep_sq->sq_peer);
1647 struct mlx5e_rep_sq_peer *sq_peer = xa_load(&rep_sq->sq_peer, i);
1649 if (!sq_peer || sq_peer->peer != peer_esw)
1652 mlx5_eswitch_del_send_to_vport_rule(sq_peer->rule);
1653 xa_erase(&rep_sq->sq_peer, i);
1654 kfree(sq_peer);
1664 struct mlx5e_rep_sq_peer *sq_peer;
1671 sq_peer = xa_load(&rep_sq->sq_peer, i);
1673 if (sq_peer && sq_peer->peer)
1683 if (sq_peer) {
1684 sq_peer->rule = flow_rule;
1685 sq_peer->peer = peer_esw;
1688 sq_peer = kzalloc(sizeof(*sq_peer), GFP_KERNEL);
1689 if (!sq_peer) {
1693 err = xa_insert(&rep_sq->sq_peer, i, sq_peer, GFP_KERNEL);
1696 sq_peer->rule = flow_rule;
1697 sq_peer->peer = peer_esw;
1702 kfree(sq_peer);