|WARNING| [v2] ipc: fix multi-process disabling
dpdklab at iol.unh.edu
dpdklab at iol.unh.edu
Wed Nov 4 19:51:34 CET 2026
Test-Label: ai-code-review
Test-Status: WARNING
https://dpdk.org/patch/172642
_AI Code Review_
=== Patch Review: series.patch (via Claude) ===
Review date: 2026-11-04
# DPDK Patch Review
## ERRORS
### 1. Missing release notes update
The patch changes public API behavior (multi-process detection logic) and fixes IPC functionality, but does not update the release notes in `doc/guides/rel_notes/`.
**Fix:** Add a "Fixed Issues" entry in `doc/guides/rel_notes/release_26_11.rst` documenting the IPC and hotplug fixes.
---
## WARNINGS
### 1. Inconsistent return value type for eal_mp_is_disabled()
**File:** `lib/eal/common/eal_common_proc.c`, line 1420-1425
The function `eal_mp_is_disabled()` returns a `bool` but uses a direct comparison against an enum value without an explicit comparison operator. While this works because the enum value is non-zero when disabled, it would be clearer to use an explicit comparison.
```c
/* Current code */
return rte_atomic_load_explicit(&mcfg->mp_status,
rte_memory_order_relaxed) == MP_STATUS_DISABLED;
```
This is actually correct as written. The comparison is explicit. No change needed - removing this item.
### 2. Windows stub missing RTE_EXPORT_INTERNAL_SYMBOL
**File:** `lib/eal/windows/eal.c`, line 84-88
The `eal_mp_is_disabled()` function is an internal EAL function but the Windows implementation does not have the `RTE_EXPORT_INTERNAL_SYMBOL` macro that should accompany internal functions shared between DPDK components.
**Fix:** Add the export macro:
```c
RTE_EXPORT_INTERNAL_SYMBOL(eal_mp_is_disabled)
bool
eal_mp_is_disabled(void)
{
return true;
}
```
However, checking `lib/eal/common/eal_common_proc.c`, the non-Windows implementation at line 1420 also lacks `RTE_EXPORT_INTERNAL_SYMBOL`. If the function is declared in `eal_private.h` and used across compilation units, it should have the export macro. Verify that the Linux/FreeBSD implementation also needs this macro added.
---
## INFO
### 1. Pre-existing: Function documentation missing
The new `eal_mp_is_disabled()` function has only a brief one-line comment in `eal_private.h`. While this is acceptable for internal functions, more detailed documentation would be helpful given that this function encapsulates the multi-process status check that was previously scattered across the codebase.
Consider adding:
- Return value semantics (true means disabled, false means enabled or unknown)
- Thread-safety guarantees
- When the status becomes determinate
This is a minor suggestion for future improvement.
---
Review-Result: WARNING
More information about the test-report
mailing list