diff options
| author | Alexandre Cassen <acassen@corp.free.fr> | 2026-10-19 15:31:56 +0200 |
|---|---|---|
| committer | Paolo Abeni <pabeni@redhat.com> | 2026-10-21 13:25:22 +0200 |
| commit | 7eed173447fba937a19e2f5f2dc79780793f72e7 (patch) | |
| tree | 5ba34b68bbf92da61bc9169469b3023e26ceb29b /scripts/Makefile.thinlto | |
| parent | 1234707482053f1d1ac7c5756207d2c29057974c (diff) | |
| download | linux-7eed173447fba937a19e2f5f2dc79780793f72e7.tar.gz linux-7eed173447fba937a19e2f5f2dc79780793f72e7.zip | |
net/mlx5: HWS, fix modify header pattern compare on big-endian
mlx5hws_pat_compare_pattern() casts each __be64 action to __be32 to
compare only its control dword. On big-endian this keeps the data dword
instead, which HWS clears from the pattern of set and add actions. Two
such actions writing the same value into different fields then share a
pattern and the second rule modifies the wrong field.
Read the first dword of each action from memory instead. Little-endian
behavior is unchanged.
Discovered by an AI code review agent [1] and confirmed by code
inspection. Not reproduced for lack of big-endian hardware running HWS.
Tested for regressions on ConnectX-7 with firmware 28.48.1000 on a
little-endian host.
Fixes: aefc15a0fa1c ("net/mlx5: HWS, added modify header pattern and args handling")
Link: https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20261010120147.135825-1-acassen%40corp.free.fr [1]
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Alexandre Cassen <acassen@corp.free.fr>
Reviewed-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Link: https://patch.msgid.link/20261019133159.1742411-2-acassen@corp.free.fr
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'scripts/Makefile.thinlto')
0 files changed, 0 insertions, 0 deletions
