On Wed, 15 Jul 2026 14:13:39 +0530 <[email protected]> wrote: > From: Satheesh Paul <[email protected]> > > Support for flow aggregator enqueue profiles. > > Signed-off-by: Satheesh Paul <[email protected]> > --- This was merged to main without sufficient review.
AI review sees: 16f07d871f "common/cnxk: support aggregator enqueue profiles" — two real bugs: 1. roc_nix.c:533 — the new goto tm_conf_fini is the first error path placed after nix->dev.drv_inited = true (line 526). It tears the device fully down but never clears the flag, so a later roc_nix_dev_init on the same nix hits the early if (nix->dev.drv_inited) return 0; at line 463 and reports success on a dead device. Fix: move the cn20k call above the assignment, or clear the flag in the error path. (The nix_list TAILQ entry is also leaked, but that's pre-existing on every failure path — not this patch's regression.) 2. roc_nix.c:605 — struct nix_af_rx_flow_vec_ctrl_write_rsp is used but defined nowhere in the tree. It compiles only because it's a pointer to an incomplete type that's never dereferenced. The M() entry at roc_mbox.h:362 declares the response as msg_rsp; the variable should be struct msg_rsp *. Plus: if (rc) goto exit; immediately before exit: is a no-op; static (non-const) arrays defined in roc_nix_flow_vec.h; 2021 copyright on a new file; one-line commit message for a new mbox message and HW config path. I checked and cleared the things that looked suspicious here: mbox ID 0x8034 is unused, both bitfield unions total exactly 64 bits, every constant fits its field, and memcpy sizes match the request array dimensions.

