[PATCH v6 6/6] port: remove legacy API
Stephen Hemminger
stephen at networkplumber.org
Thu Jul 30 20:37:04 CEST 2026
On Thu, 30 Jul 2026 09:22:34 -0700
Stephen Hemminger <stephen at networkplumber.org> wrote:
> Remove the legacy port library API (rte_port_*) as announced for
> removal in the 24.11 release. The SWX port API remains.
>
> The sched, ip_frag, cryptodev and eventdev dependencies were only
> used by the legacy port types, so drop them. The pcap dependency
> is kept for the SWX source/sink port.
>
> Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
> ---
The CI build infrastructure reports a failure when building docs
but this report is bogus. The docs build, the way it is doing it
is all wrong. It is applying single patch without others before it;
then complaining.
Wordier AI analysis:
Subject: Intel PER_PATCH_BUILD applies patches in isolation, produces
false compilation failures
Report: pw167045, sid 38829, job PER_PATCH_BUILD19605, series "packet
framework removal" v6 6/6 ("port: remove legacy API"), baseline
dpdk-next-net 9231dc7c.
Reported failure: doc build on UB2604-64 (x86_64-native-linuxapp-doc).
Doxygen aborts with doc/api/doxy-api-index.md:185: error: unable to
resolve reference to 'rte_port.h'.
The series is correct. Patch 6/6 removes that reference in the same
commit that deletes lib/port/rte_port.h, so every commit in the series
is self-consistent and the tree bisects clean.
Root cause is in the CI, two defects:
The job applied 6/6 alone on top of the baseline rather than
applying 1/6 through 6/6 in order. The resulting tree exists nowhere in
history. Patch 6/6's index hunk has trailing context * SWX pipeline:
immediately after the port list, which only holds once 4/6 and 5/6 have
removed the pipeline and table entries, so the hunk cannot apply to the
bare baseline. The apply was reject-tolerant and the job continued. The
lib/port/* deletions landed while doxy-api-index.md stayed untouched,
and the build proceeded on that mixed tree.
Proof: line 185 in the log is * [port](@ref rte_port.h):, which is line
185 of the unmodified file at baseline blob 9296042 (byte-identical to
main). Had 1/6 through 6/6 been applied in order, 4/6's hunk alone
would have shifted that line. Doxygen aborts on the first unresolved
reference, which is why rte_table.h and rte_pipeline.h are not also
listed. Reproduced locally:
$ git apply --check <6/6 doxy hunk> # on baseline
error: patch failed: doc/api/doxy-api-index.md:182
$ patch -p1 --dry-run < <same>
Hunk #1 FAILED at 182.
Requested fixes:
Apply the full series with git am onto the baseline, then build
each commit, e.g. git rebase --exec '<build>' <base>. That tests
bisectability, which testing patches in isolation does not. Treat any
rejected hunk as a job abort, reported as an apply error, not as a
compilation FAILURE attributed to the submitter.
Note for anyone hitting this: a bare Recheck-request: retests the patch
as-is without re-applying, so it reproduces the same bad tree.
rebase={branch} is needed.
More information about the dev
mailing list