|WARNING| [3/3] test/fib6: reproduce tbl8 leak on failed trie insert

dpdklab at iol.unh.edu dpdklab at iol.unh.edu
Wed Oct 21 00:57:22 CEST 2026


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

_AI Code Review_

=== Patch Review: series.patch (via Claude) ===
Review date: 2026-10-20

# DPDK Patch Review

## Patch 1/3: fib6: fix temporary tbl8 for byte-aligned prefixes

### Errors

None.

### Warnings

None.

### Info

The fix addresses a tbl8 leak by not building temporary levels for byte-aligned prefixes. The logic changes are localized and the explanation in the commit message is clear.

---

## Patch 2/3: fib6: fix tbl8 reservation with RCU defer queue

### Errors

None.

### Warnings

**Missing release notes**

This patch fixes significant bugs in the trie algorithm (resource accounting when RCU defer queue is in use). Bug fixes that affect production behavior should be documented in the release notes. The patch already has `Cc: stable at dpdk.org`, which indicates it's considered important enough for backporting.

Add an entry to `doc/guides/rel_notes/release_26_03.rst` (or the current release) under "Fixed Issues" or "Bugs Fixed" describing the tbl8 reservation fix.

### Info

The patch introduces `cur_tbl8s` to track tbl8s actually in use by the dataplane, distinguishing them from those waiting in the defer queue. The accounting fix looks correct: checking `rsvd_tbl8s + tbl8s_in_defer_queue` against `number_tbl8s` ensures the reservation can be fulfilled even with deferred tbl8s still out.

The patch moves the `dp->rsvd_tbl8s += new_levels;` increment to happen *before* `modify_dp()` is called (line 641 in the new code), and rolls it back on error (line 652). This ensures the reservation is held during the dataplane update, which is when tbl8s are allocated.

---

## Patch 3/3: test/fib6: reproduce tbl8 leak on failed trie insert

### Errors

None.

### Warnings

None.

### Info

The test cases look well-structured and use the `TEST_ASSERT` macros correctly. They exercise the corner cases described in the commit message: byte-aligned prefix handling, defer queue accounting, and modify-while-deferred scenarios.

The test names are descriptive and the assertions include helpful messages. The RCU setup and teardown is correct (register/online, then offline/unregister before free).

---

## Series-Level Comments

The series is well-organized: two fixes followed by tests that reproduce the bugs. The commit messages clearly explain the problems and the solutions.

**Final check completed:**
- No correctness bugs introduced
- No style/process false positives
- All findings have supporting evidence from the patches
- Pre-existing code not flagged as errors

Review-Result: WARNING


More information about the test-report mailing list