Debdiff to enable support for both 6.8 and 6.14 kernels.

** Description changed:

  [ Impact ]
  
  DKMS make.log for scap-0.15.1 for kernel 6.14.0-15-generic (x86_64)
  Fri May 16 14:34:09 UTC 2025
  make: Entering directory '/usr/src/linux-headers-6.14.0-15-generic'
  make[1]: Entering directory '/var/lib/dkms/scap/0.15.1/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
+   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
  [configure-kmod] Including 
/var/lib/dkms/scap/0.15.1/build//configure/DEVNODE_ARG1_CONST/Makefile.inc 
/var/lib/dkms/scap/0.15.1/build//configure/CLASS_CREATE_1/Makefile.inc 
/var/lib/dkms/scap/0.15.1/build//configure/ACCESS_OK_2/Makefile.inc
  [configure-kmod] Build output for HAS_DEVNODE_ARG1_CONST:
  [configure-kmod] make: Entering directory 
'/var/lib/dkms/scap/0.15.1/build/configure/DEVNODE_ARG1_CONST' make -C 
/var/lib/dkms/scap/0.15.1/build 
M=/var/lib/dkms/scap/0.15.1/build/configure/DEVNODE_ARG1_CONST modules make[1]: 
Entering directory '/var/lib/dkms/scap/0.15.1/build' make[1]: *** No rule to 
make target 'modules'.  Stop. make[1]: Leaving directory 
'/var/lib/dkms/scap/0.15.1/build' make: *** [Makefile:15: all] Error 2 make: 
Leaving directory '/var/lib/dkms/scap/0.15.1/build/configure/DEVNODE_ARG1_CONST'
  [configure-kmod] Build output for HAS_CLASS_CREATE_1:
  [configure-kmod] make: Entering directory 
'/var/lib/dkms/scap/0.15.1/build/configure/CLASS_CREATE_1' make -C 
/var/lib/dkms/scap/0.15.1/build 
M=/var/lib/dkms/scap/0.15.1/build/configure/CLASS_CREATE_1 modules make[1]: 
Entering directory '/var/lib/dkms/scap/0.15.1/build' make[1]: *** No rule to 
make target 'modules'.  Stop. make[1]: Leaving directory 
'/var/lib/dkms/scap/0.15.1/build' make: *** [Makefile:15: all] Error 2 make: 
Leaving directory '/var/lib/dkms/scap/0.15.1/build/configure/CLASS_CREATE_1'
  [configure-kmod] Build output for HAS_ACCESS_OK_2:
  [configure-kmod] make: Entering directory 
'/var/lib/dkms/scap/0.15.1/build/configure/ACCESS_OK_2' make -C 
/var/lib/dkms/scap/0.15.1/build 
M=/var/lib/dkms/scap/0.15.1/build/configure/ACCESS_OK_2 modules make[1]: 
Entering directory '/var/lib/dkms/scap/0.15.1/build' make[1]: *** No rule to 
make target 'modules'.  Stop. make[1]: Leaving directory 
'/var/lib/dkms/scap/0.15.1/build' make: *** [Makefile:15: all] Error 2 make: 
Leaving directory '/var/lib/dkms/scap/0.15.1/build/configure/ACCESS_OK_2'
-   CC [M]  main.o
-   CC [M]  dynamic_params_table.o
-   CC [M]  fillers_table.o
-   CC [M]  flags_table.o
-   CC [M]  ppm_events.o
-   CC [M]  ppm_fillers.o
-   CC [M]  event_table.o
-   CC [M]  syscall_table64.o
-   CC [M]  ppm_cputime.o
+   CC [M]  main.o
+   CC [M]  dynamic_params_table.o
+   CC [M]  fillers_table.o
+   CC [M]  flags_table.o
+   CC [M]  ppm_events.o
+   CC [M]  ppm_fillers.o
+   CC [M]  event_table.o
+   CC [M]  syscall_table64.o
+   CC [M]  ppm_cputime.o
  ppm_cputime.c:353:10: warning: no previous prototype for ‘nsec_to_clock_t’ 
[-Wmissing-prototypes]
-   353 | uint64_t nsec_to_clock_t(uint64_t x)
-       |          ^~~~~~~~~~~~~~~
-   CC [M]  ppm_tp.o
+   353 | uint64_t nsec_to_clock_t(uint64_t x)
+       |          ^~~~~~~~~~~~~~~
+   CC [M]  ppm_tp.o
  main.c:2833:5: warning: no previous prototype for ‘scap_init’ 
[-Wmissing-prototypes]
-  2833 | int scap_init(void)
-       |     ^~~~~~~~~
+  2833 | int scap_init(void)
+       |     ^~~~~~~~~
  In file included from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/printk.h:6,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/kernel.h:31,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/cpumask.h:11,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/smp.h:13,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/tracepoint.h:15,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/trace/syscall.h:5,
-                  from main.c:14:
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/kernel.h:31,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/cpumask.h:11,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/smp.h:13,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/tracepoint.h:15,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/trace/syscall.h:5,
+                  from main.c:14:
  main.c: In function ‘scap_init’:
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/init.h:180:22: error: 
passing argument 1 of ‘class_create’ from incompatible pointer type 
[-Werror=incompatible-pointer-types]
-   180 | #define THIS_MODULE (&__this_module)
-       |                     ~^~~~~~~~~~~~~~~
-       |                      |
-       |                      struct module *
+   180 | #define THIS_MODULE (&__this_module)
+       |                     ~^~~~~~~~~~~~~~~
+       |                      |
+       |                      struct module *
  main.c:2872:36: note: in expansion of macro ‘THIS_MODULE’
-  2872 |         g_ppm_class = class_create(THIS_MODULE, DRIVER_DEVICE_NAME);
-       |                                    ^~~~~~~~~~~
+  2872 |         g_ppm_class = class_create(THIS_MODULE, DRIVER_DEVICE_NAME);
+       |                                    ^~~~~~~~~~~
  In file included from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/device.h:31,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/node.h:18,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/cpu.h:17,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/static_call.h:135,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/tracepoint.h:22:
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/node.h:18,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/cpu.h:17,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/static_call.h:135,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/tracepoint.h:22:
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/device/class.h:226:54: 
note: expected ‘const char *’ but argument is of type ‘struct module *’
-   226 | struct class * __must_check class_create(const char *name);
-       |                                          ~~~~~~~~~~~~^~~~
+   226 | struct class * __must_check class_create(const char *name);
+       |                                          ~~~~~~~~~~~~^~~~
  main.c:2872:23: error: too many arguments to function ‘class_create’
-  2872 |         g_ppm_class = class_create(THIS_MODULE, DRIVER_DEVICE_NAME);
-       |                       ^~~~~~~~~~~~
+  2872 |         g_ppm_class = class_create(THIS_MODULE, DRIVER_DEVICE_NAME);
+       |                       ^~~~~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/device/class.h:226:29: 
note: declared here
-   226 | struct class * __must_check class_create(const char *name);
-       |                             ^~~~~~~~~~~~
+   226 | struct class * __must_check class_create(const char *name);
+       |                             ^~~~~~~~~~~~
  main.c:2883:30: error: assignment to ‘char * (*)(const struct device *, 
umode_t *)’ {aka ‘char * (*)(const struct device *, short unsigned int *)’} 
from incompatible pointer type ‘char * (*)(struct device *, umode_t *)’ {aka 
‘char * (*)(struct device *, short unsigned int *)’} 
[-Werror=incompatible-pointer-types]
-  2883 |         g_ppm_class->devnode = ppm_devnode;
-       |                              ^
+  2883 |         g_ppm_class->devnode = ppm_devnode;
+       |                              ^
  main.c: At top level:
  main.c:2996:6: warning: no previous prototype for ‘scap_exit’ 
[-Wmissing-prototypes]
-  2996 | void scap_exit(void)
-       |      ^~~~~~~~~
-   CC [M]  syscall_ia32_64_map.o
+  2996 | void scap_exit(void)
+       |      ^~~~~~~~~
+   CC [M]  syscall_ia32_64_map.o
  ppm_events.c: In function ‘ppm_copy_from_user’:
  ppm_events.c:94:55: error: macro "access_ok" passed 3 arguments, but takes 
just 2
-    94 |         if (likely(ppm_access_ok(VERIFY_READ, from, n)))
-       |                                                       ^
+    94 |         if (likely(ppm_access_ok(VERIFY_READ, from, n)))
+       |                                                       ^
  In file included from 
/usr/src/linux-headers-6.14.0-15-generic/arch/x86/include/asm/uaccess.h:25,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/uaccess.h:12,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/sched/task.h:13,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/sched/signal.h:9,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/rcuwait.h:6,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/percpu-rwsem.h:7,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/fs.h:33,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/compat.h:17,
-                  from ppm_events.c:13:
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/uaccess.h:12,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/sched/task.h:13,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/sched/signal.h:9,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/rcuwait.h:6,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/percpu-rwsem.h:7,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/fs.h:33,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/compat.h:17,
+                  from ppm_events.c:13:
  /usr/src/linux-headers-6.14.0-15-generic/include/asm-generic/access_ok.h:45: 
note: macro "access_ok" defined here
-    45 | #define access_ok(addr, size) likely(__access_ok(addr, size))
-       | 
+    45 | #define access_ok(addr, size) likely(__access_ok(addr, size))
+       |
  ppm_fillers.c:509:14: warning: no previous prototype for 
‘ppm_get_mm_exe_file’ [-Wmissing-prototypes]
-   509 | struct file *ppm_get_mm_exe_file(struct mm_struct *mm)
-       |              ^~~~~~~~~~~~~~~~~~~
+   509 | struct file *ppm_get_mm_exe_file(struct mm_struct *mm)
+       |              ^~~~~~~~~~~~~~~~~~~
  ppm_fillers.c:550:15: warning: no previous prototype for ‘ppm_get_mm_counter’ 
[-Wmissing-prototypes]
-   550 | unsigned long ppm_get_mm_counter(struct mm_struct *mm, int member)
-       |               ^~~~~~~~~~~~~~~~~~
+   550 | unsigned long ppm_get_mm_counter(struct mm_struct *mm, int member)
+       |               ^~~~~~~~~~~~~~~~~~
  ppm_fillers.c:728:5: warning: no previous prototype for 
‘accumulate_argv_or_env’ [-Wmissing-prototypes]
-   728 | int accumulate_argv_or_env(const char __user * __user *argv,
-       |     ^~~~~~~~~~~~~~~~~~~~~~
+   728 | int accumulate_argv_or_env(const char __user * __user *argv,
+       |     ^~~~~~~~~~~~~~~~~~~~~~
  ppm_fillers.c:874:6: warning: no previous prototype for ‘ppm_is_upper_layer’ 
[-Wmissing-prototypes]
-   874 | bool ppm_is_upper_layer(struct file *exe_file){
-       |      ^~~~~~~~~~~~~~~~~~
+   874 | bool ppm_is_upper_layer(struct file *exe_file){
+       |      ^~~~~~~~~~~~~~~~~~
  In file included from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/export.h:5,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/linkage.h:7,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/arch/x86/include/asm/cache.h:5,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/cache.h:6,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/time.h:5,
-                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/compat.h:10:
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/linkage.h:7,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/arch/x86/include/asm/cache.h:5,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/cache.h:6,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/time.h:5,
+                  from 
/usr/src/linux-headers-6.14.0-15-generic/include/linux/compat.h:10:
  ppm_events.c:50:41: error: ‘access_ok’ undeclared (first use in this function)
-    50 | #define ppm_access_ok(type, addr, size) access_ok(type, addr, size)
-       |                                         ^~~~~~~~~
+    50 | #define ppm_access_ok(type, addr, size) access_ok(type, addr, size)
+       |                                         ^~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/compiler.h:76:45: 
note: in definition of macro ‘likely’
-    76 | # define likely(x)      __builtin_expect(!!(x), 1)
-       |                                             ^
+    76 | # define likely(x)      __builtin_expect(!!(x), 1)
+       |                                             ^
  ppm_events.c:94:20: note: in expansion of macro ‘ppm_access_ok’
-    94 |         if (likely(ppm_access_ok(VERIFY_READ, from, n)))
-       |                    ^~~~~~~~~~~~~
+    94 |         if (likely(ppm_access_ok(VERIFY_READ, from, n)))
+       |                    ^~~~~~~~~~~~~
  ppm_events.c:50:41: note: each undeclared identifier is reported only once 
for each function it appears in
-    50 | #define ppm_access_ok(type, addr, size) access_ok(type, addr, size)
-       |                                         ^~~~~~~~~
+    50 | #define ppm_access_ok(type, addr, size) access_ok(type, addr, size)
+       |                                         ^~~~~~~~~
  /usr/src/linux-headers-6.14.0-15-generic/include/linux/compiler.h:76:45: 
note: in definition of macro ‘likely’
-    76 | # define likely(x)      __builtin_expect(!!(x), 1)
-       |                                             ^
+    76 | # define likely(x)      __builtin_expect(!!(x), 1)
+       |                                             ^
  ppm_events.c:94:20: note: in expansion of macro ‘ppm_access_ok’
-    94 |         if (likely(ppm_access_ok(VERIFY_READ, from, n)))
-       |                    ^~~~~~~~~~~~~
+    94 |         if (likely(ppm_access_ok(VERIFY_READ, from, n)))
+       |                    ^~~~~~~~~~~~~
  ppm_events.c: In function ‘ppm_strncpy_from_user’:
  ppm_events.c:129:68: error: macro "access_ok" passed 3 arguments, but takes 
just 2
-   129 |                 if (!ppm_access_ok(VERIFY_READ, from, bytes_to_read)) 
{
-       |                                                                    ^
+   129 |                 if (!ppm_access_ok(VERIFY_READ, from, bytes_to_read)) 
{
+       |                                                                    ^
  /usr/src/linux-headers-6.14.0-15-generic/include/asm-generic/access_ok.h:45: 
note: macro "access_ok" defined here
-    45 | #define access_ok(addr, size) likely(__access_ok(addr, size))
-       | 
+    45 | #define access_ok(addr, size) likely(__access_ok(addr, size))
+       |
  cc1: some warnings being treated as errors
  ppm_events.c:50:41: error: ‘access_ok’ undeclared (first use in this function)
-    50 | #define ppm_access_ok(type, addr, size) access_ok(type, addr, size)
-       |                                         ^~~~~~~~~
+    50 | #define ppm_access_ok(type, addr, size) access_ok(type, addr, size)
+       |                                         ^~~~~~~~~
  ppm_events.c:129:22: note: in expansion of macro ‘ppm_access_ok’
-   129 |                 if (!ppm_access_ok(VERIFY_READ, from, bytes_to_read)) 
{
-       |                      ^~~~~~~~~~~~~
+   129 |                 if (!ppm_access_ok(VERIFY_READ, from, bytes_to_read)) 
{
+       |                      ^~~~~~~~~~~~~
  ppm_fillers.c:2269:5: warning: no previous prototype for 
‘f_sys_send_e_common’ [-Wmissing-prototypes]
-  2269 | int f_sys_send_e_common(struct event_filler_arguments *args, int *fd)
-       |     ^~~~~~~~~~~~~~~~~~~
+  2269 | int f_sys_send_e_common(struct event_filler_arguments *args, int *fd)
+       |     ^~~~~~~~~~~~~~~~~~~
  make[3]: *** 
[/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:207: main.o] 
Error 1
  make[3]: *** Waiting for unfinished jobs....
  ppm_fillers.c:2405:5: warning: no previous prototype for 
‘f_sys_recv_x_common’ [-Wmissing-prototypes]
-  2405 | int f_sys_recv_x_common(struct event_filler_arguments *args, int64_t 
*retval)
-       |     ^~~~~~~~~~~~~~~~~~~
+  2405 | int f_sys_recv_x_common(struct event_filler_arguments *args, int64_t 
*retval)
+       |     ^~~~~~~~~~~~~~~~~~~
  make[3]: *** 
[/usr/src/linux-headers-6.14.0-15-generic/scripts/Makefile.build:207: 
ppm_events.o] Error 1
  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/scap/0.15.1/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 falcosecurity-scap-dkms:
  
  $ sudo apt install falcosecurity-scap-dkms
  
  Load the modules:
  
- $ sudo modprobe
+ $ sudo modprobe scap
  
  The same procedure can be repeated on linux-6.8 to test for possible
  regressions.
  
  [ Fix ]
  
- Apply patch from falcosecurity-scap-dkms Plucky release enabling 6.14
+ Apply upstream commit from falcosecurity-scap
+ (https://github.com/falcosecurity/libs):
  
- * debian/patches/
+ * 7f01ec89c565fcb45ade833b1312ae69637bc4ec: "fix(driver): fix driver and
+ bpf makefile for linux 6.13."
  
  [ Regression potential ]
  
  We may experience regressions in systems that are using the
  falcosecurity-scap drivers, especially with kernels >= 6.8 kernel.

** Patch added: "falcosecurity-support-noble-6.14.debdiff"
   
https://bugs.launchpad.net/ubuntu/+source/falcosecurity-libs/+bug/2111110/+attachment/5878018/+files/falcosecurity-support-noble-6.14.debdiff

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2111110

Title:
  falcosecurity-scap-dkms FTBS in Noble with the linux-6.14-hwe kernel

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/falcosecurity-libs/+bug/2111110/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to