[PATCH v3 1/3] net/zxdh: optimize queue structure to improve performance
Stephen Hemminger
stephen at networkplumber.org
Mon May 18 04:20:20 CEST 2026
On Sat, 9 May 2026 14:29:27 +0800
Junlong Wang <wang.junlong1 at zte.com.cn> wrote:
> Reorganize structure fields for better cache locality.
> Remove RX software ring (sw_ring) to reduce memory allocation and
> copy.
>
> Signed-off-by: Junlong Wang <wang.junlong1 at zte.com.cn>
> ---
Looks good.
Some AI comments:
[PATCH v3 1/3] net/zxdh: optimize queue structure to improve performance
Warning: silent bug fix
This patch quietly fixes a real bug in zxdh_queue_enable_intr(). Upstream has:
static inline void
zxdh_queue_enable_intr(struct zxdh_virtqueue *vq)
{
if (vq->vq_packed.event_flags_shadow == ZXDH_RING_EVENT_FLAGS_DISABLE) {
vq->vq_packed.event_flags_shadow = ZXDH_RING_EVENT_FLAGS_DISABLE;
vq->vq_packed.ring.driver->desc_event_flags = vq->vq_packed.event_flags_shadow;
}
}
The function checks for DISABLE and then sets to DISABLE — interrupts are never enabled. The patch corrects both occurrences to ENABLE. That fix is not mentioned in the commit message, and it has no Fixes: tag or Cc: stable at dpdk.org. Please split it into its own patch ahead of the structure reorganization so it can be backported.
The commit message also omits other non-trivial changes: removal of zxdh_mb(), and the inlining of zxdh_queue_notify() so it no longer dispatches through ZXDH_VTPCI_OPS()->notify_queue. Worth a sentence each.
More information about the dev
mailing list