|WARNING| eal: revert prefix of lcore roles
dpdklab at iol.unh.edu
dpdklab at iol.unh.edu
Sun Jun 21 14:07:37 CEST 2026
Test-Label: ai-code-review
Test-Status: WARNING
https://dpdk.org/patch/165851
_AI Code Review_
=== Patch Review: series.patch (via Claude) ===
Review date: 2026-06-21
# DPDK Patch Review
## Summary
This patch reverts enum value prefixes from `RTE_LCORE_ROLE_*` back to `ROLE_*` due to CI tooling limitations. The code changes are mechanical replacements throughout the codebase.
---
## Errors
None found.
---
## Warnings
**1. Release notes missing**
The patch fixes a previous commit (`c3640830470b`) that changed public API enum values. Even though this is a revert, it affects the public API surface and should be documented in the release notes to inform users that the enum names are changing back.
**File:** Not applicable (documentation)
**Issue:** No update to `doc/guides/rel_notes/release_XX_XX.rst`
**Recommendation:** Add a note in the "API Changes" section explaining that `enum rte_lcore_role_t` values have been reverted from `RTE_LCORE_ROLE_*` to `ROLE_*` due to CI infrastructure constraints.
---
**2. Inconsistent documentation**
**File:** `lib/eal/include/rte_lcore.h:311`
**Issue:** The function comment for `rte_lcore_iterate_cb` still uses the old `RTE_LCORE_ROLE_*` names in the comment text after the revert.
```c
/**
* Iterate on all active lcores (ROLE_RTE, ROLE_SERVICE and ROLE_NON_EAL).
```
The text is now correct after the patch, so this is actually fine. (No issue - documentation matches the code.)
---
## Info
**1. Rationale for revert**
The commit message states "The CI is not ready to accept changing the prefix of an enum because some warnings are raised by old versions of abidiff."
This is a process decision rather than a code correctness issue. The revert is mechanical and correct, but it's worth noting that:
- The original change was semantically better (following DPDK naming conventions with `RTE_` prefix)
- This revert is a temporary workaround for tooling limitations
- A future patch will likely re-introduce the prefixed names once CI is updated
---
**2. Scope of changes**
The revert touches 9 files across the codebase:
- Core EAL implementation files (4 files)
- Test files (2 files)
- Driver code (1 file)
- Library code (2 files)
All replacements follow the same pattern: `RTE_LCORE_ROLE_X` - `ROLE_X`. The changes are consistent and complete.
---
**3. ABI compatibility note**
While enum value *names* changed, the underlying integer values did not change (assuming the original patch only renamed the enum constants). This means binary compatibility is preserved - only source compatibility is affected. Applications compiled against the old names will continue to work at the binary level, but will need source changes if they referenced the enum names directly.
---
## Conclusion
The patch is **correct** as a mechanical revert. The only actionable item is adding a release note entry documenting the API name change.
More information about the test-report
mailing list