On Sat, 9 May 2026 14:29:27 +0800 Junlong Wang <[email protected]> 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 <[email protected]> > --- 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: [email protected]. 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.

