On Mon, 21 Sep 2026 13:47:36 +0200
David Marchand <[email protected]> wrote:

> Let's check if a testpmd and unit tests from a reference build can run
> with the current release libraries/drivers.
> 
> This gives another level of ABI checking, like catching regressions on
> experimental or internal ABI symbols that get promoted to stable without
> providing an alias for existing users.
> 
> We may need to skip unit tests that were added since the reference.
> So add a ABI_SKIP_TESTS environment variable in preparation.
> 
> Signed-off-by: David Marchand <[email protected]>
> ---

Patch 9/9 (ci: run reference binaries against current ABI)
Errors:
- The new DPDK_TEST_SKIP computation in .ci/linux-build.sh never
  skips anything, defeating the mechanism the commit message says
  it adds ("We may need to skip unit tests that were added since
  the reference"):
 
      DPDK_TEST_SKIP=$(grep -vxFf reference/tests.txt build/tests.txt |
                       sed -n 's,DPDK:.* / ,,p' | tr '\n' ',')
 
  The sed pattern assumes a "DPDK:<suite> / <test>" format, but
  `meson test --list --suite fast-tests` never produces that. I
  built the tree and ran the exact command; with meson 1.12.0 the
  output is "fast-tests - DPDK:acl_autotest" (dash, no slash). I
  also checked meson 0.57.2 (DPDK's stated minimum): with a single
  --suite filter, get_pretty_suite() takes the `else` branch and
  returns the bare test name only ("acl_autotest", no prefix at
  all). Neither format contains " / ", so the sed substitution
  never fires and DPDK_TEST_SKIP is always empty, regardless of
  meson version.
  Consequence: once this lands, any future series that adds a new
  fast-tests unit test will fail CI when ABI_CHECKS and RUN_TESTS
  are both enabled -- the new test name is not filtered out, meson
  test invokes it (DPDK_TEST=<name>) against the old reference
  dpdk-test binary, which does not implement it, the command exits
  non-zero into failed="true", and the trailing
  `[ "$failed" != "true" ]` fails the `-e` script. This is exactly
  the scenario the DPDK_TEST_SKIP logic was added to prevent.
 
Info:
- The commit message says "add a ABI_SKIP_TESTS environment
  variable in preparation," but the code implements DPDK_TEST_SKIP.
  Possibly a rebase/rename artifact worth squashing before merge.
 

Reply via email to