We have done the work now to get an out-of-band result from abi-compliance-checker confirming that this library's ABI is not affected.
On Mon, Feb 05, 2024 at 10:06:28PM +0000, Steve Langasek wrote: > Source: xdp-tools > Version: 1.4.0-1 > Severity: serious > Tags: patch pending sid trixie > Justification: library ABI skew on upgrade > User: debian-...@lists.debian.org > Usertags: time-t > > NOTICE: these changes must not be uploaded to unstable yet! > > Dear maintainer, > > As part of the 64-bit time_t transition required to support 32-bit > architectures in 2038 and beyond > (https://wiki.debian.org/ReleaseGoals/64bit-time), we have identified > xdp-tools as a source package shipping runtime libraries whose ABI > either is affected by the change in size of time_t, or could not be > analyzed via abi-compliance-checker (and therefore to be on the safe > side we assume is affected). > > To ensure that inconsistent combinations of libraries with their > reverse-dependencies are never installed together, it is necessary to > have a library transition, which is most easily done by renaming the > runtime library package. > > Since turning on 64-bit time_t is being handled centrally through a change > to the default dpkg-buildflags (https://bugs.debian.org/1037136), it is > important that libraries affected by this ABI change all be uploaded close > together in time. Therefore I have prepared a 0-day NMU for xdp-tools > which will initially be uploaded to experimental if possible, then to > unstable after packages have cleared binary NEW. > > Please find the patch for this NMU attached. > > If you have any concerns about this patch, please reach out ASAP. Although > this package will be uploaded to experimental immediately, there will be a > period of several days before we begin uploads to unstable; so if information > becomes available that your package should not be included in the transition, > there is time for us to amend the planned uploads. > > > > -- System Information: > Debian Release: trixie/sid > APT prefers unstable > APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, > 'experimental') > Architecture: amd64 (x86_64) > > Kernel: Linux 6.5.0-14-generic (SMP w/12 CPU threads; PREEMPT) > Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE > Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set > Shell: /bin/sh linked to /usr/bin/dash > Init: systemd (via /run/systemd/system) > diff -Nru xdp-tools-1.4.0/debian/changelog xdp-tools-1.4.0/debian/changelog > --- xdp-tools-1.4.0/debian/changelog 2023-07-08 15:10:01.000000000 +0000 > +++ xdp-tools-1.4.0/debian/changelog 2024-02-05 20:59:22.000000000 +0000 > @@ -1,3 +1,10 @@ > +xdp-tools (1.4.0-1.1) experimental; urgency=medium > + > + * Non-maintainer upload. > + * Rename libraries for 64-bit time_t transition. > + > + -- Steve Langasek <vor...@debian.org> Mon, 05 Feb 2024 20:59:22 +0000 > + > xdp-tools (1.4.0-1) unstable; urgency=medium > > * Enable ELF metadata stamping > diff -Nru xdp-tools-1.4.0/debian/control xdp-tools-1.4.0/debian/control > --- xdp-tools-1.4.0/debian/control 2023-07-08 14:55:18.000000000 +0000 > +++ xdp-tools-1.4.0/debian/control 2024-02-05 20:59:21.000000000 +0000 > @@ -18,7 +18,10 @@ > Vcs-Browser: https://salsa.debian.org/debian/xdp-tools > Vcs-Git: https://salsa.debian.org/debian/xdp-tools.git > > -Package: libxdp1 > +Package: libxdp1t64 > +Provides: ${t64:Provides} > +Replaces: libxdp1 > +Breaks: libxdp1 (<< ${source:Version}) > Section: libs > Architecture: linux-any > Multi-Arch: same > @@ -32,7 +35,7 @@ > Section: libdevel > Architecture: linux-any > Multi-Arch: same > -Depends: libxdp1 (= ${binary:Version}), ${misc:Depends}, libbpf-dev, > +Depends: libxdp1t64 (= ${binary:Version}), ${misc:Depends}, libbpf-dev, > Description: library and utilities for use with XDP - development files > Library for working with the eXpress Data Path facility of the Linux kernel, > and a collection of utilities and example code that uses the library. > @@ -41,7 +44,7 @@ > > Package: xdp-tools > Architecture: linux-any > -Depends: libxdp1 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}, > +Depends: libxdp1t64 (= ${binary:Version}), ${misc:Depends}, > ${shlibs:Depends}, > Description: library and utilities for use with XDP > Library for working with the eXpress Data Path facility of the Linux kernel, > and a collection of utilities and example code that uses the library. > diff -Nru xdp-tools-1.4.0/debian/libxdp1.install > xdp-tools-1.4.0/debian/libxdp1.install > --- xdp-tools-1.4.0/debian/libxdp1.install 2023-07-08 14:55:18.000000000 > +0000 > +++ xdp-tools-1.4.0/debian/libxdp1.install 1970-01-01 00:00:00.000000000 > +0000 > @@ -1,2 +0,0 @@ > -usr/lib/*/bpf/ > -usr/lib/*/lib*.so.* > diff -Nru xdp-tools-1.4.0/debian/libxdp1.lintian-overrides > xdp-tools-1.4.0/debian/libxdp1.lintian-overrides > --- xdp-tools-1.4.0/debian/libxdp1.lintian-overrides 2023-07-08 > 14:55:18.000000000 +0000 > +++ xdp-tools-1.4.0/debian/libxdp1.lintian-overrides 1970-01-01 > 00:00:00.000000000 +0000 > @@ -1,2 +0,0 @@ > -# BPF binaries > -libxdp1: binary-from-other-architecture [usr/lib/*/bpf/*.o] > diff -Nru xdp-tools-1.4.0/debian/libxdp1.symbols > xdp-tools-1.4.0/debian/libxdp1.symbols > --- xdp-tools-1.4.0/debian/libxdp1.symbols 2023-07-08 15:10:01.000000000 > +0000 > +++ xdp-tools-1.4.0/debian/libxdp1.symbols 1970-01-01 00:00:00.000000000 > +0000 > @@ -1,75 +0,0 @@ > -libxdp.so.1 libxdp1 #MINVER# > -* Build-Depends-Package: libxdp-dev > - LIBXDP_1.0.0@LIBXDP_1.0.0 1.0.0 > - LIBXDP_1.2.0@LIBXDP_1.2.0 1.2.0 > - LIBXDP_1.3.0@LIBXDP_1.3.0 1.3.0 > - LIBXDP_1.4.0@LIBXDP_1.4.0 1.4.0 > - libxdp_clean_references@LIBXDP_1.2.0 1.2.0 > - libxdp_get_error@LIBXDP_1.0.0 1.0.0 > - libxdp_set_print@LIBXDP_1.0.0 1.0.0 > - libxdp_strerror@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__attach_mode@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__close@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__detach@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__get_from_ifindex@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__hw_prog@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__is_legacy@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__main_prog@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__next_prog@LIBXDP_1.0.0 1.0.0 > - xdp_multiprog__program_count@LIBXDP_1.2.0 1.2.0 > - xdp_multiprog__xdp_frags_support@LIBXDP_1.3.0 1.3.0 > - xdp_program__attach@LIBXDP_1.0.0 1.0.0 > - xdp_program__attach_multi@LIBXDP_1.0.0 1.0.0 > - xdp_program__bpf_obj@LIBXDP_1.0.0 1.0.0 > - xdp_program__btf@LIBXDP_1.0.0 1.0.0 > - xdp_program__chain_call_enabled@LIBXDP_1.0.0 1.0.0 > - xdp_program__clone@LIBXDP_1.3.0 1.3.0 > - xdp_program__close@LIBXDP_1.0.0 1.0.0 > - xdp_program__create@LIBXDP_1.3.0 1.3.0 > - xdp_program__detach@LIBXDP_1.0.0 1.0.0 > - xdp_program__detach_multi@LIBXDP_1.0.0 1.0.0 > - xdp_program__fd@LIBXDP_1.0.0 1.0.0 > - xdp_program__find_file@LIBXDP_1.0.0 1.0.0 > - xdp_program__from_bpf_obj@LIBXDP_1.0.0 1.0.0 > - xdp_program__from_fd@LIBXDP_1.0.0 1.0.0 > - xdp_program__from_id@LIBXDP_1.0.0 1.0.0 > - xdp_program__from_pin@LIBXDP_1.0.0 1.0.0 > - xdp_program__id@LIBXDP_1.0.0 1.0.0 > - xdp_program__is_attached@LIBXDP_1.0.0 1.0.0 > - xdp_program__name@LIBXDP_1.0.0 1.0.0 > - xdp_program__open_file@LIBXDP_1.0.0 1.0.0 > - xdp_program__pin@LIBXDP_1.0.0 1.0.0 > - xdp_program__print_chain_call_actions@LIBXDP_1.0.0 1.0.0 > - xdp_program__run_prio@LIBXDP_1.0.0 1.0.0 > - xdp_program__set_chain_call_enabled@LIBXDP_1.0.0 1.0.0 > - xdp_program__set_run_prio@LIBXDP_1.0.0 1.0.0 > - xdp_program__set_xdp_frags_support@LIBXDP_1.3.0 1.3.0 > - xdp_program__tag@LIBXDP_1.0.0 1.0.0 > - xdp_program__test_run@LIBXDP_1.3.0 1.3.0 > - xdp_program__xdp_frags_support@LIBXDP_1.3.0 1.3.0 > - xsk_cons_nb_avail@LIBXDP_1.2.0 1.2.0 > - xsk_prod_nb_free@LIBXDP_1.2.0 1.2.0 > - xsk_ring_cons__cancel@LIBXDP_1.2.0 1.2.0 > - xsk_ring_cons__comp_addr@LIBXDP_1.2.0 1.2.0 > - xsk_ring_cons__peek@LIBXDP_1.2.0 1.2.0 > - xsk_ring_cons__release@LIBXDP_1.2.0 1.2.0 > - xsk_ring_cons__rx_desc@LIBXDP_1.2.0 1.2.0 > - xsk_ring_prod__fill_addr@LIBXDP_1.2.0 1.2.0 > - xsk_ring_prod__needs_wakeup@LIBXDP_1.2.0 1.2.0 > - xsk_ring_prod__reserve@LIBXDP_1.2.0 1.2.0 > - xsk_ring_prod__submit@LIBXDP_1.2.0 1.2.0 > - xsk_ring_prod__tx_desc@LIBXDP_1.2.0 1.2.0 > - xsk_setup_xdp_prog@LIBXDP_1.2.0 1.2.0 > - xsk_socket__create@LIBXDP_1.2.0 1.2.0 > - xsk_socket__create_shared@LIBXDP_1.2.0 1.2.0 > - xsk_socket__delete@LIBXDP_1.2.0 1.2.0 > - xsk_socket__fd@LIBXDP_1.2.0 1.2.0 > - xsk_socket__update_xskmap@LIBXDP_1.2.0 1.2.0 > - xsk_umem__add_offset_to_addr@LIBXDP_1.2.0 1.2.0 > - xsk_umem__create@LIBXDP_1.2.0 1.2.0 > - xsk_umem__create_with_fd@LIBXDP_1.4.0 1.4.0 > - xsk_umem__delete@LIBXDP_1.2.0 1.2.0 > - xsk_umem__extract_addr@LIBXDP_1.2.0 1.2.0 > - xsk_umem__extract_offset@LIBXDP_1.2.0 1.2.0 > - xsk_umem__fd@LIBXDP_1.2.0 1.2.0 > - xsk_umem__get_data@LIBXDP_1.2.0 1.2.0 > diff -Nru xdp-tools-1.4.0/debian/libxdp1t64.install > xdp-tools-1.4.0/debian/libxdp1t64.install > --- xdp-tools-1.4.0/debian/libxdp1t64.install 1970-01-01 00:00:00.000000000 > +0000 > +++ xdp-tools-1.4.0/debian/libxdp1t64.install 2023-07-08 14:55:18.000000000 > +0000 > @@ -0,0 +1,2 @@ > +usr/lib/*/bpf/ > +usr/lib/*/lib*.so.* > diff -Nru xdp-tools-1.4.0/debian/libxdp1t64.lintian-overrides > xdp-tools-1.4.0/debian/libxdp1t64.lintian-overrides > --- xdp-tools-1.4.0/debian/libxdp1t64.lintian-overrides 1970-01-01 > 00:00:00.000000000 +0000 > +++ xdp-tools-1.4.0/debian/libxdp1t64.lintian-overrides 2024-02-05 > 20:59:22.000000000 +0000 > @@ -0,0 +1,3 @@ > +# BPF binaries > +libxdp1t64: binary-from-other-architecture [usr/lib/*/bpf/*.o] > +libxdp1t64: package-name-doesnt-match-sonames libxdp1 > diff -Nru xdp-tools-1.4.0/debian/libxdp1t64.symbols > xdp-tools-1.4.0/debian/libxdp1t64.symbols > --- xdp-tools-1.4.0/debian/libxdp1t64.symbols 1970-01-01 00:00:00.000000000 > +0000 > +++ xdp-tools-1.4.0/debian/libxdp1t64.symbols 2024-02-05 20:59:22.000000000 > +0000 > @@ -0,0 +1,75 @@ > +libxdp.so.1 libxdp1t64 #MINVER# > +* Build-Depends-Package: libxdp-dev > + LIBXDP_1.0.0@LIBXDP_1.0.0 1.0.0 > + LIBXDP_1.2.0@LIBXDP_1.2.0 1.2.0 > + LIBXDP_1.3.0@LIBXDP_1.3.0 1.3.0 > + LIBXDP_1.4.0@LIBXDP_1.4.0 1.4.0 > + libxdp_clean_references@LIBXDP_1.2.0 1.2.0 > + libxdp_get_error@LIBXDP_1.0.0 1.0.0 > + libxdp_set_print@LIBXDP_1.0.0 1.0.0 > + libxdp_strerror@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__attach_mode@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__close@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__detach@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__get_from_ifindex@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__hw_prog@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__is_legacy@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__main_prog@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__next_prog@LIBXDP_1.0.0 1.0.0 > + xdp_multiprog__program_count@LIBXDP_1.2.0 1.2.0 > + xdp_multiprog__xdp_frags_support@LIBXDP_1.3.0 1.3.0 > + xdp_program__attach@LIBXDP_1.0.0 1.0.0 > + xdp_program__attach_multi@LIBXDP_1.0.0 1.0.0 > + xdp_program__bpf_obj@LIBXDP_1.0.0 1.0.0 > + xdp_program__btf@LIBXDP_1.0.0 1.0.0 > + xdp_program__chain_call_enabled@LIBXDP_1.0.0 1.0.0 > + xdp_program__clone@LIBXDP_1.3.0 1.3.0 > + xdp_program__close@LIBXDP_1.0.0 1.0.0 > + xdp_program__create@LIBXDP_1.3.0 1.3.0 > + xdp_program__detach@LIBXDP_1.0.0 1.0.0 > + xdp_program__detach_multi@LIBXDP_1.0.0 1.0.0 > + xdp_program__fd@LIBXDP_1.0.0 1.0.0 > + xdp_program__find_file@LIBXDP_1.0.0 1.0.0 > + xdp_program__from_bpf_obj@LIBXDP_1.0.0 1.0.0 > + xdp_program__from_fd@LIBXDP_1.0.0 1.0.0 > + xdp_program__from_id@LIBXDP_1.0.0 1.0.0 > + xdp_program__from_pin@LIBXDP_1.0.0 1.0.0 > + xdp_program__id@LIBXDP_1.0.0 1.0.0 > + xdp_program__is_attached@LIBXDP_1.0.0 1.0.0 > + xdp_program__name@LIBXDP_1.0.0 1.0.0 > + xdp_program__open_file@LIBXDP_1.0.0 1.0.0 > + xdp_program__pin@LIBXDP_1.0.0 1.0.0 > + xdp_program__print_chain_call_actions@LIBXDP_1.0.0 1.0.0 > + xdp_program__run_prio@LIBXDP_1.0.0 1.0.0 > + xdp_program__set_chain_call_enabled@LIBXDP_1.0.0 1.0.0 > + xdp_program__set_run_prio@LIBXDP_1.0.0 1.0.0 > + xdp_program__set_xdp_frags_support@LIBXDP_1.3.0 1.3.0 > + xdp_program__tag@LIBXDP_1.0.0 1.0.0 > + xdp_program__test_run@LIBXDP_1.3.0 1.3.0 > + xdp_program__xdp_frags_support@LIBXDP_1.3.0 1.3.0 > + xsk_cons_nb_avail@LIBXDP_1.2.0 1.2.0 > + xsk_prod_nb_free@LIBXDP_1.2.0 1.2.0 > + xsk_ring_cons__cancel@LIBXDP_1.2.0 1.2.0 > + xsk_ring_cons__comp_addr@LIBXDP_1.2.0 1.2.0 > + xsk_ring_cons__peek@LIBXDP_1.2.0 1.2.0 > + xsk_ring_cons__release@LIBXDP_1.2.0 1.2.0 > + xsk_ring_cons__rx_desc@LIBXDP_1.2.0 1.2.0 > + xsk_ring_prod__fill_addr@LIBXDP_1.2.0 1.2.0 > + xsk_ring_prod__needs_wakeup@LIBXDP_1.2.0 1.2.0 > + xsk_ring_prod__reserve@LIBXDP_1.2.0 1.2.0 > + xsk_ring_prod__submit@LIBXDP_1.2.0 1.2.0 > + xsk_ring_prod__tx_desc@LIBXDP_1.2.0 1.2.0 > + xsk_setup_xdp_prog@LIBXDP_1.2.0 1.2.0 > + xsk_socket__create@LIBXDP_1.2.0 1.2.0 > + xsk_socket__create_shared@LIBXDP_1.2.0 1.2.0 > + xsk_socket__delete@LIBXDP_1.2.0 1.2.0 > + xsk_socket__fd@LIBXDP_1.2.0 1.2.0 > + xsk_socket__update_xskmap@LIBXDP_1.2.0 1.2.0 > + xsk_umem__add_offset_to_addr@LIBXDP_1.2.0 1.2.0 > + xsk_umem__create@LIBXDP_1.2.0 1.2.0 > + xsk_umem__create_with_fd@LIBXDP_1.4.0 1.4.0 > + xsk_umem__delete@LIBXDP_1.2.0 1.2.0 > + xsk_umem__extract_addr@LIBXDP_1.2.0 1.2.0 > + xsk_umem__extract_offset@LIBXDP_1.2.0 1.2.0 > + xsk_umem__fd@LIBXDP_1.2.0 1.2.0 > + xsk_umem__get_data@LIBXDP_1.2.0 1.2.0 -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer https://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
signature.asc
Description: PGP signature