← Back to team overview

lttng team mailing list archive

[Bug 2111275] Re: lttng-modules-dkms FTBS in Noble with the linux-6.14-hwe kernel

 

Hello John, or anyone else affected,

Accepted lttng-modules into noble-proposed. The package will build now
and be available at https://launchpad.net/ubuntu/+source/lttng-
modules/2.13.11-1ubuntu1.2 in a few hours, and then in the -proposed
repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, what testing has been
performed on the package and change the tag from verification-needed-
noble to verification-done-noble. If it does not fix the bug for you,
please add a comment stating that, and change the tag to verification-
failed-noble. In either case, without details of your testing we will
not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: lttng-modules (Ubuntu)
       Status: New => Invalid

** Changed in: lttng-modules (Ubuntu Noble)
       Status: In Progress => Fix Committed

** Tags added: verification-needed verification-needed-noble

-- 
You received this bug notification because you are a member of Ubuntu
LTTng, which is subscribed to lttng-modules in Ubuntu.
Matching subscriptions: lttng-modules-bugs
https://bugs.launchpad.net/bugs/2111275

Title:
  lttng-modules-dkms FTBS in Noble with the linux-6.14-hwe kernel

Status in lttng-modules package in Ubuntu:
  Invalid
Status in lttng-modules source package in Noble:
  Fix Committed

Bug description:
  [ Impact ]

  DKMS make.log for lttng-modules-2.13.11 for kernel 6.14.0-15-generic (x86_64)
  Mon May 19 15:10:47 UTC 2025
  make: Entering directory '/usr/src/linux-headers-6.14.0-15-generic'
  make[1]: Entering directory '/var/lib/dkms/lttng-modules/2.13.11/build'
  warning: the compiler differs from the one used to build the kernel
    The kernel was built by: x86_64-linux-gnu-gcc-13 (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0
    You are using:           gcc-13 (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0
    CC [M]  src/lttng-ring-buffer-client-discard.o
  src/probes/Kbuild:27: File /usr/src/linux-headers-6.14.0-15-generic/mm/slab.h not found. Probe "kmem" is disabled. Use full kernel source tree to enable it.
    CC [M]  src/tests/probes/lttng-test.o
    CC [M]  src/lib/ringbuffer/ring_buffer_backend.o
  src/probes/Kbuild:81: File /usr/src/linux-headers-6.14.0-15-generic/arch/x86/kvm/lapic.h not found. Probe "kvm" x86-specific is disabled. Use full kernel source tree to enable it.
  src/probes/Kbuild:188: Files /usr/src/linux-headers-6.14.0-15-generic/fs/btrfs/*.h not found. Probe "btrfs" is disabled. Use full kernel source tree to enable it.
  src/probes/Kbuild:207: Files /usr/src/linux-headers-6.14.0-15-generic/mm/internal.h not found. Probe "compaction" is disabled. Use full kernel source tree to enable it.
  src/probes/Kbuild:216: Files /usr/src/linux-headers-6.14.0-15-generic/fs/ext4/*.h not found. Probe "ext4" is disabled. Use full kernel source tree to enable it.
  src/probes/Kbuild:245: File /usr/src/linux-headers-6.14.0-15-generic/drivers/base/regmap/trace.h not found. Probe "regmap" is disabled. Need Linux 4.1+ kernel source tree to enable it.
    CC [M]  src/probes/lttng-probe-sched.o
  In file included from src/../include/lttng/events.h:19,
                   from src/../include/lttng/tracer.h:27,
                   from src/lttng-ring-buffer-client-discard.c:11:
  src/../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_register’:
  src/../include/wrapper/uprobes.h:28:47: warning: passing argument 3 of ‘uprobe_register’ makes integer from pointer without a cast [-Wint-conversion]
     28 |         return uprobe_register(inode, offset, uc);
        |                                               ^~
        |                                               |
        |                                               struct uprobe_consumer *
  In file included from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mm_types.h:16,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mmzone.h:22,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/gfp.h:7,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/umh.h:4,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/kmod.h:9,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/module.h:17,
                   from src/lttng-ring-buffer-client-discard.c:10:
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:82: note: expected ‘loff_t’ {aka ‘long long int’} but argument is of type ‘struct uprobe_consumer *’
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                                                                           ~~~~~~~^~~~~~~~~~~~~~
  src/../include/wrapper/uprobes.h:28:16: error: too few arguments to function ‘uprobe_register’
     28 |         return uprobe_register(inode, offset, uc);
        |                ^~~~~~~~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:23: note: declared here
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                       ^~~~~~~~~~~~~~~
  src/../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_unregister’:
  src/../include/wrapper/uprobes.h:34:9: error: implicit declaration of function ‘uprobe_unregister’; did you mean ‘uprobe_register’? [-Werror=implicit-function-declaration]
     34 |         uprobe_unregister(inode, offset, uc);
        |         ^~~~~~~~~~~~~~~~~
        |         uprobe_register
  In file included from src/tests/../../include/lttng/events.h:19,
                   from src/tests/probes/lttng-test.c:16:
  src/tests/../../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_register’:
  src/tests/../../include/wrapper/uprobes.h:28:47: warning: passing argument 3 of ‘uprobe_register’ makes integer from pointer without a cast [-Wint-conversion]
     28 |         return uprobe_register(inode, offset, uc);
        |                                               ^~
        |                                               |
        |                                               struct uprobe_consumer *
  In file included from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mm_types.h:16,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mmzone.h:22,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/gfp.h:7,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/umh.h:4,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/kmod.h:9,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/module.h:17,
                   from src/tests/probes/lttng-test.c:11:
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:82: note: expected ‘loff_t’ {aka ‘long long int’} but argument is of type ‘struct uprobe_consumer *’
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                                                                           ~~~~~~~^~~~~~~~~~~~~~
  src/tests/../../include/wrapper/uprobes.h:28:16: error: too few arguments to function ‘uprobe_register’
     28 |         return uprobe_register(inode, offset, uc);
        |                ^~~~~~~~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:23: note: declared here
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                       ^~~~~~~~~~~~~~~
  src/tests/../../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_unregister’:
  src/tests/../../include/wrapper/uprobes.h:34:9: error: implicit declaration of function ‘uprobe_unregister’; did you mean ‘uprobe_register’? [-Werror=implicit-function-declaration]
     34 |         uprobe_unregister(inode, offset, uc);
        |         ^~~~~~~~~~~~~~~~~
        |         uprobe_register
  In file included from src/probes/../../include/lttng/events.h:19,
                   from src/probes/../../include/lttng/tracer.h:27,
                   from src/probes/lttng-probe-sched.c:11:
  src/probes/../../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_register’:
  src/probes/../../include/wrapper/uprobes.h:28:47: warning: passing argument 3 of ‘uprobe_register’ makes integer from pointer without a cast [-Wint-conversion]
     28 |         return uprobe_register(inode, offset, uc);
        |                                               ^~
        |                                               |
        |                                               struct uprobe_consumer *
  In file included from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mm_types.h:16,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mmzone.h:22,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/gfp.h:7,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/umh.h:4,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/kmod.h:9,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/module.h:17,
                   from src/probes/lttng-probe-sched.c:10:
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:82: note: expected ‘loff_t’ {aka ‘long long int’} but argument is of type ‘struct uprobe_consumer *’
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                                                                           ~~~~~~~^~~~~~~~~~~~~~
  src/probes/../../include/wrapper/uprobes.h:28:16: error: too few arguments to function ‘uprobe_register’
     28 |         return uprobe_register(inode, offset, uc);
        |                ^~~~~~~~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:23: note: declared here
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                       ^~~~~~~~~~~~~~~
  src/probes/../../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_unregister’:
  src/probes/../../include/wrapper/uprobes.h:34:9: error: implicit declaration of function ‘uprobe_unregister’; did you mean ‘uprobe_register’? [-Werror=implicit-function-declaration]
     34 |         uprobe_unregister(inode, offset, uc);
        |         ^~~~~~~~~~~~~~~~~
        |         uprobe_register
  cc1: some warnings being treated as errors
  make[4]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:207: src/lttng-ring-buffer-client-discard.o] Error 1
  make[4]: *** Waiting for unfinished jobs....
    CC [M]  src/lib/ringbuffer/ring_buffer_frontend.o
  cc1: some warnings being treated as errors
  make[5]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:207: src/tests/probes/lttng-test.o] Error 1
  make[4]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:465: src/tests] Error 2
    CC [M]  src/lib/ringbuffer/ring_buffer_iterator.o
  cc1: some warnings being treated as errors
  make[5]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:207: src/probes/lttng-probe-sched.o] Error 1
  make[4]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:465: src/probes] Error 2
    CC [M]  src/lib/ringbuffer/ring_buffer_vfs.o
  src/lib/ringbuffer/ring_buffer_frontend.c:2409:12: warning: no previous prototype for ‘init_lib_ring_buffer_frontend’ [-Wmissing-prototypes]
   2409 | int __init init_lib_ring_buffer_frontend(void)
        |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  src/lib/ringbuffer/ring_buffer_frontend.c:2420:13: warning: no previous prototype for ‘exit_lib_ring_buffer_frontend’ [-Wmissing-prototypes]
   2420 | void __exit exit_lib_ring_buffer_frontend(void)
        |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  In file included from src/lib/../../include/lttng/events.h:19,
                   from src/lib/../../include/lttng/tracer.h:27,
                   from src/lib/ringbuffer/ring_buffer_vfs.c:18:
  src/lib/../../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_register’:
  src/lib/../../include/wrapper/uprobes.h:28:47: warning: passing argument 3 of ‘uprobe_register’ makes integer from pointer without a cast [-Wint-conversion]
     28 |         return uprobe_register(inode, offset, uc);
        |                                               ^~
        |                                               |
        |                                               struct uprobe_consumer *
  In file included from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mm_types.h:16,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/mmzone.h:22,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/gfp.h:7,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/umh.h:4,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/kmod.h:9,
                   from /usr/src/linux-headers-6.14.0-15-generic/include/linux/module.h:17,
                   from src/lib/ringbuffer/ring_buffer_vfs.c:10:
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:82: note: expected ‘loff_t’ {aka ‘long long int’} but argument is of type ‘struct uprobe_consumer *’
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                                                                           ~~~~~~~^~~~~~~~~~~~~~
  src/lib/../../include/wrapper/uprobes.h:28:16: error: too few arguments to function ‘uprobe_register’
     28 |         return uprobe_register(inode, offset, uc);
        |                ^~~~~~~~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/uprobes.h:195:23: note: declared here
    195 | extern struct uprobe *uprobe_register(struct inode *inode, loff_t offset, loff_t ref_ctr_offset, struct uprobe_consumer *uc);
        |                       ^~~~~~~~~~~~~~~
  src/lib/../../include/wrapper/uprobes.h: In function ‘wrapper_uprobe_unregister’:
  src/lib/../../include/wrapper/uprobes.h:34:9: error: implicit declaration of function ‘uprobe_unregister’; did you mean ‘uprobe_register’? [-Werror=implicit-function-declaration]
     34 |         uprobe_unregister(inode, offset, uc);
        |         ^~~~~~~~~~~~~~~~~
        |         uprobe_register
  cc1: some warnings being treated as errors
  make[5]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:207: src/lib/ringbuffer/ring_buffer_vfs.o] Error 1
  make[5]: *** Waiting for unfinished jobs....
  make[4]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:465: src/lib] Error 2
  make[3]: *** [/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:465: src] Error 2
  make[2]: *** [/usr/src/linux-headers-6.14.0-15-generic/Makefile:1999: .] Error 2
  make[1]: *** [/usr/src/linux-headers-6.14.0-15-generic/Makefile:251: __sub-make] Error 2
  make[1]: Leaving directory '/var/lib/dkms/lttng-modules/2.13.11/build'
  make: *** [Makefile:251: __sub-make] Error 2
  make: Leaving directory '/usr/src/linux-headers-6.14.0-15-generic'

  [ Test case ]

  Install the latest linux-6.14 kernel on Noble:

  $ sudo add-apt-repository ppa:canonical-kernel-team/ppa
  $ sudo apt install linux-generic-hwe-24.04-wip

  Install lttng-modules-dkms:

  $ sudo apt install lttng-modules-dkms

  Load the module:

  $ sudo modprobe lttng-test

  The same procedure can be repeated on linux-6.8 to test for possible
  regressions.

  [ Fix ]

  Backport upstream patches from lttng-modules
  (https://git.lttng.org/?p=lttng-modules.git):

  * 0e6f87689475: "Fix: uprobes: make uprobe_register() return struct uprobe * (v6.12)"
  * ea05bdc48bc4: "Fix: f_count replaced with f_ref in Linux 6.13.0-rc1"
  * 4e4a913afdd0: "Fix: lookup_fdget_rcu removed in Linux 6.13.0-rc1"
  * 1c4770459574: "Fix: uprobe consumer handler signature changed in Linux 6.13.0-rc1"

  [ Regression potential ]

  We may experience regressions in systems that are using the lttng-
  modules drivers, especially with kernels >= 6.8 kernel.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/lttng-modules/+bug/2111275/+subscriptions



References