|WARNING| [v2,22/22] doc: add release note about rte_ethdev changes

dpdklab at iol.unh.edu dpdklab at iol.unh.edu
Mon Aug 3 19:25:53 CEST 2026


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

_AI Code Review_

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

# Review of DPDK Patch Series

This patch series removes deprecated flow director API and reduces header dependencies in rte_ethdev.h. Below is my review organized by severity.

---

## Patch 1: drivers/net: remove unused include in dpaa

**No issues found.**

---

## Patch 2: ethdev: use DPDK byte order conversion

**No issues found.**

---

## Patch 3: net/ixgbe: remove experimental FDIR API

**No issues found.** The patch correctly removes experimental API and associated code.

---

## Patch 4: net/i40e: remove experimental FDIR API

**No issues found.** Clean removal of experimental API.

---

## Patch 5: app/testpmd: remove support for flow director

**No issues found.** Correctly removes legacy commands and documentation.

---

## Patch 6: net/gve: include IP, UDP and TCP headers

**No issues found.**

---

## Patch 7: crypto/dpaa_sec: include UDP header

**No issues found.**

---

## Patch 8: net/nfp: break implicit dependency on rte_eth_ctrl.h

**No issues found.** The use of local `NFP_UINT64_BIT` definition instead of the deprecated `UINT64_BIT` macro is appropriate.

---

## Patch 9: net/mana: include used network headers

**No issues found.**

---

## Patch 10: gro: include headers directly

**No issues found.**

---

## Patch 11: app/test: include headers directly

**No issues found.** Good use of `rte_cpu_to_be_16()` instead of `htons()`.

---

## Patch 12: node: get UDP header

**No issues found.**

---

## Patch 13: net/rnp: include network headers

**No issues found.**

---

## Patch 14: net/r8169: get network headers

**No issues found.**

---

## Patch 15: net/ngbe: include network protocol headers

**No issues found.**

---

## Patch 16: examples: include network headers

**No issues found.**

---

## Patch 17: net/mlx5: include rte_flow as needed

**No issues found.**

---

## Patch 18: net/sfc: include rte_flow

**No issues found.**

---

## Patch 19: net/intel/common: include network headers

**No issues found.**

---

## Patch 20: net/enetfec: add missing sys/types.h include

**No issues found.** This fixes a real portability issue on PowerPC.

---

## Patch 21: ethdev, drivers: isolate flow director

**Warning:**

In `lib/ethdev/ethdev_fdir.h`:
- The new header lacks proper include guards documentation or file description comment beyond the brief one-liner.

**Suggested improvement:**
```c
/**
 * @file
 * ethdev_fdir.h
 *
 * Internal definitions for legacy flow director support.
 * This file contains deprecated flow director structures and definitions
 * used by a limited set of legacy drivers. New code should use rte_flow API.
 *
 * Not part of the public API.
 */
```

**Info:**

The patch correctly isolates flow director definitions. The decision to make `ethdev_fdir.h` internal (driver SDK only) is appropriate since flow director is legacy and new code should use rte_flow.

---

## Patch 22: doc: add release note about rte_ethdev changes

**Warning:**

The release notes should explicitly mention the API/ABI impact level. Applications that depend on implicit header inclusion will need to add explicit includes.

**Suggested addition:**
```rst
* **Changed ethdev include files.**

  * Dropped inclusion of ``rte_flow.h`` in ``rte_ethdev.h``.
    Applications using flow API should include it directly.
  * Network headers ``rte_ip.h``, ``rte_udp.h``, ``rte_tcp.h`` and ``rte_sctp.h``
    are no longer indirectly included by ``rte_ethdev.h``.
    Applications should include network headers as needed.
  * Legacy flow director definitions are no longer included by ``rte_ethdev.h``.
    ``rte_eth_ctrl.h`` is removed. Internal driver definitions were moved to ``ethdev_fdir.h``.

  **Application Impact:** Applications may need to add explicit includes for headers
  previously obtained through ``rte_ethdev.h``. This is a compile-time change only;
  no ABI impact.
```

---

## Summary

The patch series is well-structured and correctly implements the removal of deprecated API and reduction of header dependencies. The changes follow DPDK coding standards.

**Overall Assessment:**
- **Errors:** 0
- **Warnings:** 2 (documentation improvements)
- **Info:** 1

The warnings are minor documentation enhancements. The code changes themselves are correct and safe.


More information about the test-report mailing list