Searched refs:mpwqe (Results 1 – 9 of 9) sorted by relevance
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/ |
| H A D | rx.c | 32 if (unlikely(!xsk_buff_can_alloc(rq->xsk_pool, rq->mpwqe.pages_per_wqe))) in mlx5e_xsk_alloc_rx_mpwqe() 38 rq->mpwqe.pages_per_wqe); in mlx5e_xsk_alloc_rx_mpwqe() 46 for (; batch < rq->mpwqe.pages_per_wqe; batch++) { in mlx5e_xsk_alloc_rx_mpwqe() 53 pi = mlx5e_icosq_get_next_pi(icosq, rq->mpwqe.umr_wqebbs); in mlx5e_xsk_alloc_rx_mpwqe() 55 memcpy(umr_wqe, &rq->mpwqe.umr_wqe, sizeof(struct mlx5e_umr_wqe)); in mlx5e_xsk_alloc_rx_mpwqe() 57 if (likely(rq->mpwqe.umr_mode == MLX5E_MPWRQ_UMR_MODE_ALIGNED)) { in mlx5e_xsk_alloc_rx_mpwqe() 67 } else if (unlikely(rq->mpwqe.umr_mode == MLX5E_MPWRQ_UMR_MODE_UNALIGNED)) { in mlx5e_xsk_alloc_rx_mpwqe() 78 } else if (likely(rq->mpwqe.umr_mode == MLX5E_MPWRQ_UMR_MODE_TRIPLE)) { in mlx5e_xsk_alloc_rx_mpwqe() 79 u32 mapping_size = 1 << (rq->mpwqe.page_shift - 2); in mlx5e_xsk_alloc_rx_mpwqe() 104 __be32 pad_size = cpu_to_be32((1 << rq->mpwqe.page_shift) - in mlx5e_xsk_alloc_rx_mpwqe() [all …]
|
| H A D | tx.c | 110 if (sq->mpwqe.wqe) in mlx5e_xsk_tx() 132 if (sq->mpwqe.wqe) in mlx5e_xsk_tx()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | en_rx.c | 305 struct mlx5e_mpw_linear_info *li = rq->mpwqe.linear_info; in mlx5e_mpwqe_linear_page_refill() 320 struct mlx5e_mpw_linear_info *li = rq->mpwqe.linear_info; in mlx5e_mpwqe_get_linear_page_frag() 327 WARN_ON(frag_offset >= BIT(rq->mpwqe.page_shift)); in mlx5e_mpwqe_get_linear_page_frag() 600 if (bitmap_full(wi->skip_release_bitmap, rq->mpwqe.pages_per_wqe)) in mlx5e_free_rx_mpwqe() 603 no_xdp_xmit = bitmap_empty(wi->skip_release_bitmap, rq->mpwqe.pages_per_wqe); in mlx5e_free_rx_mpwqe() 612 for (i = 0; i < rq->mpwqe.pages_per_wqe; i++) in mlx5e_free_rx_mpwqe() 616 for (i = 0; i < rq->mpwqe.pages_per_wqe; i++) { in mlx5e_free_rx_mpwqe() 630 struct mlx5_wq_ll *wq = &rq->mpwqe.wq; in mlx5e_post_rx_mpwqe() 658 pi = mlx5e_icosq_get_next_pi(sq, rq->mpwqe.umr_wqebbs); in mlx5e_alloc_rx_mpwqe() 660 memcpy(umr_wqe, &rq->mpwqe in mlx5e_alloc_rx_mpwqe() [all...] |
| H A D | en_main.c | 329 ds_cnt = DIV_ROUND_UP(mlx5e_mpwrq_umr_wqe_sz(rq->mdev, rq->mpwqe.page_shift, in mlx5e_build_umr_wqe() 330 rq->mpwqe.umr_mode), in mlx5e_build_umr_wqe() 335 cseg->umr_mkey = rq->mpwqe.umr_mkey_be; in mlx5e_build_umr_wqe() 338 octowords = mlx5e_mpwrq_umr_octowords(rq->mpwqe.pages_per_wqe, rq->mpwqe.umr_mode); in mlx5e_build_umr_wqe() 345 int wq_sz = mlx5_wq_ll_get_size(&rq->mpwqe.wq); in mlx5e_rq_alloc_mpwqe_info() 348 alloc_size = array_size(wq_sz, struct_size(rq->mpwqe.info, in mlx5e_rq_alloc_mpwqe_info() 350 rq->mpwqe.pages_per_wqe)); in mlx5e_rq_alloc_mpwqe_info() 352 rq->mpwqe.info = kvzalloc_node(alloc_size, GFP_KERNEL, node); in mlx5e_rq_alloc_mpwqe_info() 353 if (!rq->mpwqe.info) in mlx5e_rq_alloc_mpwqe_info() 362 bitmap_fill(wi->skip_release_bitmap, rq->mpwqe.pages_per_wqe); in mlx5e_rq_alloc_mpwqe_info() [all …]
|
| H A D | en.h | 433 struct mlx5e_tx_mpwqe mpwqe; member 499 struct mlx5e_tx_mpwqe mpwqe; member 701 } mpwqe; member
|
| H A D | en_stats.c | 281 s->tx_xdp_mpwqe += xdpsq_red_stats->mpwqe; in mlx5e_stats_grp_sw_update_stats_xdp_red() 293 s->rx_xdp_tx_mpwqe += xdpsq_stats->mpwqe; in mlx5e_stats_grp_sw_update_stats_xdpsq() 305 s->tx_xsk_mpwqe += xsksq_stats->mpwqe; in mlx5e_stats_grp_sw_update_stats_xsksq() 2319 { MLX5E_DECLARE_RQ_XDPSQ_STAT(struct mlx5e_xdpsq_stats, mpwqe) }, 2329 { MLX5E_DECLARE_XDPSQ_STAT(struct mlx5e_xdpsq_stats, mpwqe) }, 2360 { MLX5E_DECLARE_XSKSQ_STAT(struct mlx5e_xdpsq_stats, mpwqe) },
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | xdp.c | 390 struct mlx5e_tx_mpwqe *session = &sq->mpwqe; in mlx5e_xdp_mpwqe_session_start() 408 stats->mpwqe++; in mlx5e_xdp_mpwqe_complete() 414 struct mlx5e_tx_mpwqe *session = &sq->mpwqe; in mlx5e_xdp_mpwqe_complete() 441 if (unlikely(!sq->mpwqe.wqe)) { in mlx5e_xmit_xdp_frame_check_mpwqe() 464 struct mlx5e_tx_mpwqe *session = &sq->mpwqe; in mlx5e_xmit_xdp_frame_mpwqe() 478 if (unlikely(sq->mpwqe.wqe)) in mlx5e_xmit_xdp_frame_mpwqe() 954 if (sq->mpwqe.wqe) in mlx5e_xdp_xmit() 967 if (xdpsq->mpwqe.wqe) in mlx5e_xdp_rx_poll_complete()
|
| H A D | xdp.h | 199 struct mlx5e_tx_mpwqe *session = &sq->mpwqe; in mlx5e_xdp_mpwqe_add_dseg()
|
| H A D | params.c | 280 bool mpwqe) in mlx5e_rx_get_linear_stride_sz() argument 290 return mpwqe ? in mlx5e_rx_get_linear_stride_sz() 294 no_head_tail_room = params->xdp_prog && mpwqe && in mlx5e_rx_get_linear_stride_sz()
|