drivers/net/ethernet/microsoft/mana/gdma_main.c | 2 ++ drivers/net/ethernet/microsoft/mana/mana_en.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-)
Two error-path fixes in MANA queue setup, both surfaced during Sashiko AI review of a recently upstreamed patch series. Patch 1 initializes queue->id to INVALID_QUEUE_ID in mana_gd_create_mana_wq_cq() so that a CQ creation failure before the firmware id is assigned does not NULL gc->cq_table[0] and silently break whichever real CQ owns that slot. This mirrors the existing pattern in mana_gd_create_eq(). Patch 2 guards mana_destroy_txq()'s call to mana_destroy_wq_obj() with an INVALID_MANA_HANDLE check, mirroring mana_destroy_rxq(). Without it, TX setup failures lead to a firmware-rejected destroy of (u64)-1 and a spurious error in dmesg. Aditya Garg (2): net: mana: initialize gdma queue id to INVALID_QUEUE_ID net: mana: guard TX wq object destroy with INVALID_MANA_HANDLE check drivers/net/ethernet/microsoft/mana/gdma_main.c | 2 ++ drivers/net/ethernet/microsoft/mana/mana_en.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) -- 2.43.0
On Thu, 4 Jun 2026 01:01:24 -0700 Aditya Garg wrote: > Two error-path fixes in MANA queue setup, both surfaced during Sashiko > AI review of a recently upstreamed patch series. > > Patch 1 initializes queue->id to INVALID_QUEUE_ID in > mana_gd_create_mana_wq_cq() so that a CQ creation failure before the > firmware id is assigned does not NULL gc->cq_table[0] and silently > break whichever real CQ owns that slot. This mirrors the existing > pattern in mana_gd_create_eq(). > > Patch 2 guards mana_destroy_txq()'s call to mana_destroy_wq_obj() with > an INVALID_MANA_HANDLE check, mirroring mana_destroy_rxq(). Without > it, TX setup failures lead to a firmware-rejected destroy of (u64)-1 > and a spurious error in dmesg. Looks like these patches were generated against net-next, please rebase: Applying: net: mana: initialize gdma queue id to INVALID_QUEUE_ID Applying: net: mana: guard TX wq object destroy with INVALID_MANA_HANDLE check error: patch failed: drivers/net/ethernet/microsoft/mana/mana_en.c:2351 error: drivers/net/ethernet/microsoft/mana/mana_en.c: patch does not apply Patch failed at 0002 net: mana: guard TX wq object destroy with INVALID_MANA_HANDLE check
On 06-06-2026 06:57, Jakub Kicinski wrote: > On Thu, 4 Jun 2026 01:01:24 -0700 Aditya Garg wrote: >> Two error-path fixes in MANA queue setup, both surfaced during Sashiko >> AI review of a recently upstreamed patch series. >> >> Patch 1 initializes queue->id to INVALID_QUEUE_ID in >> mana_gd_create_mana_wq_cq() so that a CQ creation failure before the >> firmware id is assigned does not NULL gc->cq_table[0] and silently >> break whichever real CQ owns that slot. This mirrors the existing >> pattern in mana_gd_create_eq(). >> >> Patch 2 guards mana_destroy_txq()'s call to mana_destroy_wq_obj() with >> an INVALID_MANA_HANDLE check, mirroring mana_destroy_rxq(). Without >> it, TX setup failures lead to a firmware-rejected destroy of (u64)-1 >> and a spurious error in dmesg. > > Looks like these patches were generated against net-next, please rebase: > > Applying: net: mana: initialize gdma queue id to INVALID_QUEUE_ID > Applying: net: mana: guard TX wq object destroy with INVALID_MANA_HANDLE check > error: patch failed: drivers/net/ethernet/microsoft/mana/mana_en.c:2351 > error: drivers/net/ethernet/microsoft/mana/mana_en.c: patch does not apply > Patch failed at 0002 net: mana: guard TX wq object destroy with INVALID_MANA_HANDLE check Thanks Jakub for pointing it out. I'll rebase against net and post a v2 Regards, Aditya
© 2016 - 2026 Red Hat, Inc.