net/mlx5e: xsk: Discard unaligned XSK frames on striding RQ
authorMaxim Mikityanskiy <maximmi@nvidia.com>
Fri, 29 Jul 2022 12:13:56 +0000 (15:13 +0300)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 2 Aug 2022 13:07:09 +0000 (15:07 +0200)
commit8eaa1d110800fac050bab44001732747a1c39894
treefe66eedeb474ba7847bf051bb604c47d4c909f54
parentc67cc4315a8e605ec875bd3a1210a549e3562ddc
net/mlx5e: xsk: Discard unaligned XSK frames on striding RQ

Striding RQ uses MTT page mapping, where each page corresponds to an XSK
frame. MTT pages have alignment requirements, and XSK frames don't have
any alignment guarantees in the unaligned mode. Frames with improper
alignment must be discarded, otherwise the packet data will be written
at a wrong address.

Fixes: 282c0c798f8e ("net/mlx5e: Allow XSK frames smaller than a page")
Signed-off-by: Maxim Mikityanskiy <maximmi@nvidia.com>
Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Reviewed-by: Saeed Mahameed <saeedm@nvidia.com>
Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Link: https://lore.kernel.org/r/20220729121356.3990867-1-maximmi@nvidia.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.h
include/net/xdp_sock_drv.h