Skip to content

[Bug]: Non-RSS packets distributed using RETA bucket 0 on ENA #353

@isliser

Description

@isliser

Preliminary Actions

Driver Type

DPDK PMD for Elastic Network Adapter (ENA)

Driver Tag/Commit

ena_linux_2.15.0

Custom Code

No

OS Platform and Distribution

Linux tk-md 6.16.0-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 21 Aug 2025 06:32:32 +0000 x86_64 GNU/Linux

Bug description

Description:

When using DPDK 24.11.2-1 with the ENA 2.15.0g driver on Arch Linux (6.16 kernel), non-RSS packets such as ARP frames are not delivered to queue 0 (or a default queue).
Instead, they are directed to the queue specified in RETA entry 0.

For example, when RETA[0] → queue 1, ARP replies are received on queue 1 even though mbuf->hash.rss == 0, indicating that no RSS hash was computed.
This results in control-plane packets (ARP, LLDP, ICMP) being mixed with RSS traffic if RETA[0] is mapped away from queue 0.

Reproduction steps

* Enable RSS on an ENA port with multiple RX queues.
* Configure RETA[0] to point to a queue ≠ 0.
* Send an ARP request and observe the queue receiving the reply.
* Note that mbuf->hash.rss == 0, but the packet is steered to the queue mapped by RETA bucket 0.

Expected Behavior

Packets that do not have an RSS hash (e.g., ARP, LLDP, non-IP) should default to queue 0 or a configurable “default queue,” not follow RETA lookup.

Actual Behavior

Non-RSS packets are assigned to the queue corresponding to RETA index 0.
If RETA[0] ≠ 0, ARP and similar packets appear on that queue instead of queue 0.

Additional Data

m7i.4xlarge instance

Contact Details

[email protected]

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugReport errors or unexpected behaviortriageDetermine the priority and severity

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions