FTBFS on kinetic

Bug #1990964 reported by Alexandre Ghiti
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
Kinetic
Fix Released
Undecided
Unassigned
strace (Ubuntu)
Fix Released
High
Graham Inggs
Kinetic
Won't Fix
Undecided
Unassigned

Bug Description

As can be seen in [1], strace FTBFS in kinetic: this is caused by the kernel headers (linux-libc-dev) which do not define F_GETLK64 and other on 64b builds because the kernel contains a bogus commit (306f7cc1e906 "uapi: always define F_GETLK64/F_SETLK64/F_SETLKW64 in fcntl.h"). This commit actually did the opposite of what it was supposed to do, namely defining those macros even on 64b builds. There is an attempt here to fix this which was not merged yet: https://lore.kernel<email address hidden>/T/

[1]: https://launchpadlibrarian.net/625441996/buildlog_ubuntu-kinetic-amd64.strace_5.16-0ubuntu4_BUILDING.txt.gz

Graham Inggs (ginggs)
tags: added: ftbfs
Revision history for this message
Dimitri John Ledkov (xnox) wrote :
Changed in linux (Ubuntu):
status: New → In Progress
Dave Jones (waveform)
tags: added: foundations-todo
Nick Rosbrook (enr0n)
Changed in strace (Ubuntu):
status: New → Triaged
importance: Undecided → High
tags: removed: foundations-todo
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 5.19.0-21.21

---------------
linux (5.19.0-21.21) kinetic; urgency=medium

  * kinetic/linux: 5.19.0-21.21 -proposed tracker (LP: #1992639)

  * cannot change mount namespace (LP: #1991691)
    - SAUCE: apparmor: Fix getaatr mediation causing snap failures

  * Kernel regresses openjdk on riscv64 (LP: #1992484)
    - SAUCE: Revert "riscv: mmap with PROT_WRITE but no PROT_READ is invalid"

 -- Andrea Righi <email address hidden> Wed, 12 Oct 2022 19:53:36 +0200

Changed in linux (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Graham Inggs (ginggs) wrote :

Now that the kernel is fixed, we can see a different error:

gcc -DHAVE_CONFIG_H -I./linux/x86_64 -I../../src/linux/x86_64 -I./linux/generic -I../../src/linux/generic -I. -I../../src -DIN_STRACE=1 -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wdate-time -Wformat-security -Wimplicit-fallthrough=5 -Winit-self -Wlogical-op -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wtrampolines -Wundef -Wwrite-strings -Werror -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -g -MT libstrace_a-ioctl.o -MD -MP -MF .deps/libstrace_a-ioctl.Tpo -c -o libstrace_a-ioctl.o `test -f 'ioctl.c' || echo '../../src/'`ioctl.c
In file included from ../../src/list.h:90,
                 from ../../src/defs.h:40,
                 from ../../src/io_uring.c:9:
../../src/io_uring.c: In function ‘print_io_uring_register_rsrc’:
../../src/io_uring.c:394:29: error: ‘struct io_uring_rsrc_register’ has no member named ‘resv’; did you mean ‘resv2’?
  394 | CHECK_TYPE_SIZE(arg.resv, sizeof(uint32_t));
      | ^~~~
../../src/macros.h:141:30: note: in definition of macro ‘CHECK_TYPE_SIZE’
  141 | static_assert(sizeof(type_) == (sz_), \
      | ^~~~~
../../src/macros.h:141:23: error: expression in static assertion is not an integer
  141 | static_assert(sizeof(type_) == (sz_), \
      | ^~~~~~
../../src/io_uring.c:394:9: note: in expansion of macro ‘CHECK_TYPE_SIZE’
  394 | CHECK_TYPE_SIZE(arg.resv, sizeof(uint32_t));
      | ^~~~~~~~~~~~~~~
../../src/io_uring.c:408:17: error: ‘struct io_uring_rsrc_register’ has no member named ‘resv’; did you mean ‘resv2’?
  408 | if (arg.resv) {
      | ^~~~
      | resv2

https://launchpadlibrarian.net/628843686/buildlog_ubuntu-kinetic-amd64.strace_5.16-0ubuntu4_BUILDING.txt.gz

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

https://github.com/strace/strace/commit/aeb29a3238ef3cc7f191f98743678d3b4ec949b9 and https://github.com/strace/strace/commit/a30e5defe41b5b806c223865e92b20d8c9b08f4b look relevant.

In general, does strace get a release for each kernel release? Should it be updated in parallel?

tags: added: foundations-todo
Revision history for this message
Alexandre Ghiti (alexghiti) wrote :

> In general, does strace get a release for each kernel release? Should it be updated in parallel?

I tried to find an answer to this question and I would say yes. As is stated in [1], strace follows the same release cycle as the kernel. In addition, every strace release at least comes with a non-backward compatible change, which is the update of the ioctl commands list (for an example see [2]).

So instead of cherry-picking the 2 commits mwhudson mentions, I'd rather update to 5.19 since the default kernel for kinetic is 5.19 (both commits belong to this version).

[1] https://lists.strace.io/pipermail/strace-devel/2022-August/011094.html
[2] https://github.com/strace/strace/commit/22f61979141fa5c9732d01ea69c23f46a3e2868a

Revision history for this message
Julian Andres Klode (juliank) wrote :

Actions: cherry-pick two patches for kinetic and upload new upstream release to lunar.

Adrien Nader (adrien)
Changed in linux (Ubuntu):
assignee: nobody → Adrien Nader (adrien-n)
assignee: Adrien Nader (adrien-n) → nobody
Changed in strace (Ubuntu):
assignee: nobody → Adrien Nader (adrien-n)
Revision history for this message
Adrien Nader (adrien) wrote :

Attached is a patch to use strace 5.19 in order to match kernel 5.19.

It also reduces delta with upstream sources for packaging and in particular it fixes debian/copyright (strace is now LGPL >= 2.1).

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "new upstream release 5.19" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

tags: added: patch
Graham Inggs (ginggs)
Changed in strace (Ubuntu):
assignee: Adrien Nader (adrien-n) → Graham Inggs (ginggs)
status: Triaged → In Progress
Revision history for this message
Graham Inggs (ginggs) wrote :

Sponsored with minor changes, as discussed with Adrien:
kinetic -> lunar
dropped debian/changelog.in delta

Changed in strace (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package strace - 5.19-0ubuntu1

---------------
strace (5.19-0ubuntu1) lunar; urgency=medium

  * New upstream release (LP: #1990964)
  * Update d/copyright to reflect upstream relicensing to LGPL >= 2.1 from
    2018 and its switch from sourceforge to github.
  * Drop merged patch 0006-s390-Check-infmname-with-IS_ARRAY_ZERO-too.patch

 -- Adrien Nader <email address hidden> Mon, 21 Nov 2022 16:05:44 +0100

Changed in strace (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the linux-hwe-5.19/5.19.0-24.25~22.04.1 kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-jammy' to 'verification-done-jammy'. If the problem still exists, change the tag 'verification-needed-jammy' to 'verification-failed-jammy'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: kernel-spammed-jammy-linux-hwe-5.19 verification-needed-jammy
Adrien Nader (adrien)
Changed in strace (Ubuntu Kinetic):
status: New → Fix Released
Revision history for this message
Adrien Nader (adrien) wrote :

I was too quick to mark it Fix Released in Kinetic. The issue is probably still there. It seems pretty unlikely it's fixed for Kinetic though.

Changed in strace (Ubuntu Kinetic):
status: Fix Released → New
Revision history for this message
Adrien Nader (adrien) wrote :

While kinetic is still supported for a few more days, I think it is obvious now that we won't release a fix for this for kinetic. I'm therefore going to mark this as won't fix for kinetic.

Changed in strace (Ubuntu Kinetic):
status: New → Won't Fix
Changed in linux (Ubuntu Kinetic):
status: New → Fix Released
Benjamin Drung (bdrung)
tags: removed: foundations-todo
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.