#1150226 ebtables: FTBFS on arm64 with linux-libc-dev >= 7.3: unknown type name '__u128'

Package:
src:ebtables
Source:
src:ebtables
Submitter:
Sebastien Bacher
Date:
2026-10-07 11:22:02 UTC
Severity:
normal
Tags:
#1150226#5
Date:
2026-10-07 11:20:14 UTC
From:
To:
Dear Maintainer,

ebtables fails to build on arm64 with recent kernel UAPI headers
(linux-libc-dev 7.3, currently in Ubuntu; Debian will see the same once it
gets these headers):

  In file included from /usr/include/aarch64-linux-gnu/bits/sigcontext.h:30,
                   from /usr/include/signal.h:301,
                   from ebtablesd.c:24:
  /usr/include/aarch64-linux-gnu/asm/sigcontext.h:81:9: error: unknown type
name '__u128'; did you mean '__u32'?
     81 |         __u128 vregs[32];

Cause: the source bundles an old copy of the kernel header
include/linux/types.h (from v3.16).
Because the build uses -I./include, it shadows the system <linux/types.h>.
Between kernel 7.0 and 7.3 the arm64 asm/sigcontext.h changed from the
compiler builtin __uint128_t to the kernel typedef __u128, which the
bundled copy does not define.
Only arm64 is affected.

The attached patch drops the bundled linux/types.h so the system header is
used. It builds fine, and with the 7.3 arm64 headers the error goes away.
The same patch has been sent upstream to netfilter-devel.

Ubuntu bug: https://bugs.launchpad.net/ubuntu/+source/ebtables/+bug/2169809

Thanks,
Sebastien