|WARNING| [v3] net/dpaa: fix Rx queue shutdown before init

dpdklab at iol.unh.edu dpdklab at iol.unh.edu
Mon Aug 31 09:36:38 CEST 2026


Test-Label: ai-code-review
Test-Status: WARNING
https://dpdk.org/patch/168711

_AI Code Review_

=== Patch Review: series.patch (via Claude) ===
Review date: 2026-08-31

# Review of DPDK Patch: net/dpaa: fix Rx queue shutdown before init

## Summary
This patch moves the `qman_shutdown_fq()` call from `dpaa_eth_rx_queue_setup()` to `dpaa_dev_init()` to fix incorrect shutdown timing of frame queues.

---

## Errors

None identified.

---

## Warnings

**Missing error check on `qman_shutdown_fq()` in new location**

The patch adds `qman_shutdown_fq(fqid);` in `dpaa_dev_init()` at line 2358 without checking its return value. While the original code in `dpaa_eth_rx_queue_setup()` also did not check the return value, moving it to init context increases the importance of error handling. If `qman_shutdown_fq()` can fail (returns non-zero), the failure should be handled appropriately during device initialization.

**Suggested fix:**
```c
ret = qman_shutdown_fq(fqid);
if (ret != 0) {
	DPAA_PMD_ERR("Failed to shutdown FQ 0x%x: %d", fqid, ret);
	/* Consider whether to continue or fail init */
}
```

---

## Info

**Comment placement**

The new comment spanning lines 2355-2357:
```c
/* Clean up a frame queue left behind by a previous run
 * before it is initialized.
 */
```

could be more concise. DPDK style prefers comments that add value beyond what the code already shows. Consider:

```c
/* Shutdown stale FQ from previous run before initialization */
```

---

**Verification of variable scope**

The patch uses `fqid` at line 2358, which should be available in the loop context starting around line 2346. Verify that `fqid` is properly initialized before the shutdown call and that this doesn't introduce any ordering issues with the FQ initialization that follows.

---

## Positive Observations

- The fix correctly addresses the timing issue described in the commit message
- The shutdown is now positioned before `dpaa_rx_queue_init()` as intended
- The patch is minimal and focused on the specific bug
- Proper `Fixes:` tag and `Cc: stable at dpdk.org` are present


More information about the test-report mailing list