[PATCH nf-next v3 1/3] net/mlx5e: Ignore FLOW_ACTION_PRIORITY on flowtable offload

Jianbo Liu jianbol at nvidia.com
Tue Oct 13 20:17:29 PDT 2026



On 10/5/2026 1:16 AM, Julius Bairaktaris wrote:
> The next patch makes the flowtable emit FLOW_ACTION_PRIORITY for flows
> with a non-zero skb->priority, which on IPv4 includes the priority
> ip_forward() derives from the TOS by default. mlx5 would reject these
> rules and stop offloading flows it offloads today.
> 
[...]
> +	/* The eswitch does not apply skb->priority to flowtable flows. */
> +	if (mlx5e_is_ft_flow(parse_state->flow))
> +		return 0;

The handler is only in tc_acts_fdb[] and only accepts flowtable flows,
so NIC mode and tc flower rules are rejected as before. Looks good.

The comment says what the code does, but the consequence is worth a line
in the commit message. Because the action is ignored, the priority only
reaches packets still on the software fast path, where
nf_flow_offload_forward() sets skb->priority. Once the flow is offloaded
to the FDB, mlx5 forwards it without touching skb->priority, so the
offloaded packets do not carry it. Refusing the flow to honor the
priority would keep it in software, so ignoring the action and keeping
the offload is the better tradeoff, it is just not obvious from the code.

I checked this on ConnectX-7: with the series the priority-carrying 
flows stay offloaded to the FDB like plain flows, and without patch 1/3 
they fallback to software.

Nit: "prio" already means flow table priority in mlx5; skbedit_prio
would be clearer. Not a blocker.

Reviewed-by: Jianbo Liu <jianbol at nvidia.com>



More information about the linux-arm-kernel mailing list