lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-Id: <20230328205623.142075-11-saeed@kernel.org> Date: Tue, 28 Mar 2023 13:56:18 -0700 From: Saeed Mahameed <saeed@...nel.org> To: "David S. Miller" <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, Eric Dumazet <edumazet@...gle.com> Cc: Saeed Mahameed <saeedm@...dia.com>, netdev@...r.kernel.org, Tariq Toukan <tariqt@...dia.com>, Jesper Dangaard Brouer <brouer@...hat.com>, Matthew Wilcox <willy@...radead.org>, Toke Høiland-Jørgensen <toke@...hat.com>, Ilias Apalodimas <ilias.apalodimas@...aro.org>, Dragos Tatulea <dtatulea@...dia.com> Subject: [net-next 10/15] net/mlx5e: RX, Change wqe last_in_page field from bool to bit flags From: Dragos Tatulea <dtatulea@...dia.com> Change the bool flag to a bitfield as we'll use it in a downstream patch in the series to add signaling about skipping a fragment release. Signed-off-by: Dragos Tatulea <dtatulea@...dia.com> Reviewed-by: Tariq Toukan <tariqt@...dia.com> Signed-off-by: Saeed Mahameed <saeedm@...dia.com> --- drivers/net/ethernet/mellanox/mlx5/core/en.h | 6 +++++- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 4 ++-- drivers/net/ethernet/mellanox/mlx5/core/en_rx.c | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h index 566ddf7a7aa9..9ef4b7163e5a 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h @@ -605,13 +605,17 @@ struct mlx5e_frag_page { u16 frags; }; +enum mlx5e_wqe_frag_flag { + MLX5E_WQE_FRAG_LAST_IN_PAGE, +}; + struct mlx5e_wqe_frag_info { union { struct mlx5e_frag_page *frag_page; struct xdp_buff **xskp; }; u32 offset; - bool last_in_page; + u8 flags; }; union mlx5e_alloc_units { diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c index 53eef689f225..bb1cbf008876 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c @@ -532,7 +532,7 @@ static void mlx5e_init_frags_partition(struct mlx5e_rq *rq) next_frag.frag_page++; next_frag.offset = 0; if (prev) - prev->last_in_page = true; + prev->flags |= BIT(MLX5E_WQE_FRAG_LAST_IN_PAGE); } *frag = next_frag; @@ -543,7 +543,7 @@ static void mlx5e_init_frags_partition(struct mlx5e_rq *rq) } if (prev) - prev->last_in_page = true; + prev->flags |= BIT(MLX5E_WQE_FRAG_LAST_IN_PAGE); } static void mlx5e_init_xsk_buffs(struct mlx5e_rq *rq) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c index 73bc373bf27d..f98212596c1e 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c @@ -323,7 +323,7 @@ static inline void mlx5e_put_rx_frag(struct mlx5e_rq *rq, struct mlx5e_wqe_frag_info *frag, bool recycle) { - if (frag->last_in_page) + if (frag->flags & BIT(MLX5E_WQE_FRAG_LAST_IN_PAGE)) mlx5e_page_release_fragmented(rq, frag->frag_page, recycle); } -- 2.39.2
Powered by blists - more mailing lists