lttng team mailing list archive
-
lttng team
-
Mailing list archive
-
Message #08001
[Bug 2111275] [NEW] lttng-modules-dkms FTBS in Noble with the linux-6.14-hwe kernel
Public bug reported:
[ 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 ]
Apply patches from -dkms from Plucky release:
* debian/patches/
[ Regression potential ]
We may experience regressions in systems that are using the lttng-
modules drivers, especially with kernels >= 6.8 kernel.
** Affects: lttng-modules (Ubuntu)
Importance: Undecided
Status: New
** Affects: lttng-modules (Ubuntu Noble)
Importance: Undecided
Assignee: John Cabaj (john-cabaj)
Status: In Progress
** Also affects: lttng-modules (Ubuntu Noble)
Importance: Undecided
Status: New
** Changed in: lttng-modules (Ubuntu Noble)
Status: New => In Progress
** Changed in: lttng-modules (Ubuntu Noble)
Assignee: (unassigned) => John Cabaj (john-cabaj)
--
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:
New
Status in lttng-modules source package in Noble:
In Progress
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 ]
Apply patches from -dkms from Plucky release:
* debian/patches/
[ 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
Follow ups