Package: kpatch-dkms
Version: 0.6.0-0.2
Severity: serious
Tags: sid bullseye
User: [email protected]
Usertags: piuparts
Hi,
kpatch-dkms fails to build a module for the current kernel in sid:
DKMS make.log for kpatch-0.6.0 for kernel 5.10.0-3-amd64 (x86_64)
Sun Feb 28 01:36:52 CET 2021
make: Entering directory '/var/lib/dkms/kpatch/0.6.0/build/kmod'
make -C core clean
make[1]: Entering directory '/var/lib/dkms/kpatch/0.6.0/build/kmod/core'
rm -f -Rf .*.o.cmd .*.ko.cmd .tmp_versions *.o *.ko *.mod.c \
Module.symvers
make[1]: Leaving directory '/var/lib/dkms/kpatch/0.6.0/build/kmod/core'
make -C core
make[1]: Entering directory '/var/lib/dkms/kpatch/0.6.0/build/kmod/core'
make -C /lib/modules/5.10.0-3-amd64/build
M=/var/lib/dkms/kpatch/0.6.0/build/kmod/core kpatch.ko
make[2]: Entering directory '/var/lib/dkms/kpatch/0.6.0/build/kmod/core'
make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make
rule.
CC [M] /var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.o
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:143:15: error: variable
'trace' has initializer but incomplete type
143 | static struct stack_trace trace = {
| ^~~~~~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:144:3: error: 'struct
stack_trace' has no member named 'max_entries'
144 | .max_entries = ARRAY_SIZE(stack_entries),
| ^~~~~~~~~~~
In file included from
/usr/src/linux-headers-5.10.0-3-common/include/linux/list.h:9,
from
/usr/src/linux-headers-5.10.0-3-common/include/linux/module.h:12,
from /var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:37:
/usr/src/linux-headers-5.10.0-3-common/include/linux/kernel.h:48:25: warning:
excess elements in struct initializer
48 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) +
__must_be_array(arr))
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:144:17: note: in expansion of
macro 'ARRAY_SIZE'
144 | .max_entries = ARRAY_SIZE(stack_entries),
| ^~~~~~~~~~
/usr/src/linux-headers-5.10.0-3-common/include/linux/kernel.h:48:25: note:
(near initialization for 'trace')
48 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) +
__must_be_array(arr))
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:144:17: note: in expansion of
macro 'ARRAY_SIZE'
144 | .max_entries = ARRAY_SIZE(stack_entries),
| ^~~~~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:145:3: error: 'struct
stack_trace' has no member named 'entries'
145 | .entries = &stack_entries[0],
| ^~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:145:13: warning: excess
elements in struct initializer
145 | .entries = &stack_entries[0],
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:145:13: note: (near
initialization for 'trace')
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c: In function
'kpatch_verify_activeness_safety':
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:274:8: error: invalid use of
undefined type 'struct stack_trace'
274 | trace.nr_entries = 0;
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:275:3: error: implicit
declaration of function 'save_stack_trace_tsk'
[-Werror=implicit-function-declaration]
275 | save_stack_trace_tsk(t, &trace);
| ^~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:276:12: error: invalid use of
undefined type 'struct stack_trace'
276 | if (trace.nr_entries >= trace.max_entries) {
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:276:32: error: invalid use of
undefined type 'struct stack_trace'
276 | if (trace.nr_entries >= trace.max_entries) {
| ^
In file included from
/usr/src/linux-headers-5.10.0-3-common/include/linux/kernel.h:16,
from
/usr/src/linux-headers-5.10.0-3-common/include/linux/list.h:9,
from
/usr/src/linux-headers-5.10.0-3-common/include/linux/module.h:12,
from /var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:37:
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:279:16: error: invalid use of
undefined type 'struct stack_trace'
279 | trace.max_entries);
| ^
/usr/src/linux-headers-5.10.0-3-common/include/linux/printk.h:343:33: note: in
definition of macro 'pr_err'
343 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:283:38: error: invalid use of
undefined type 'struct stack_trace'
283 | for (i = 0; i < trace.nr_entries; i++) {
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:284:13: error: invalid use of
undefined type 'struct stack_trace'
284 | if (trace.entries[i] == ULONG_MAX)
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:287:19: error: invalid use of
undefined type 'struct stack_trace'
287 | trace.entries[i]);
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:297:24: error: invalid use of
undefined type 'struct stack_trace'
297 | for (i = 0; i < trace.nr_entries; i++) {
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:298:13: error: invalid use of
undefined type 'struct stack_trace'
298 | if (trace.entries[i] == ULONG_MAX)
| ^
In file included from
/usr/src/linux-headers-5.10.0-3-common/include/linux/kernel.h:16,
from
/usr/src/linux-headers-5.10.0-3-common/include/linux/list.h:9,
from
/usr/src/linux-headers-5.10.0-3-common/include/linux/module.h:12,
from /var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:37:
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:301:24: error: invalid use of
undefined type 'struct stack_trace'
301 | (void *)trace.entries[i],
| ^
/usr/src/linux-headers-5.10.0-3-common/include/linux/printk.h:343:33: note: in
definition of macro 'pr_err'
343 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:302:24: error: invalid use of
undefined type 'struct stack_trace'
302 | (void *)trace.entries[i]);
| ^
/usr/src/linux-headers-5.10.0-3-common/include/linux/printk.h:343:33: note: in
definition of macro 'pr_err'
343 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~~~
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c: In function
'kpatch_find_external_symbol':
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:661:8: error: implicit
declaration of function 'find_symbol'; did you mean 'sprint_symbol'?
[-Werror=implicit-function-declaration]
661 | sym = find_symbol(name, NULL, NULL, true, true);
| ^~~~~~~~~~~
| sprint_symbol
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:661:6: warning: assignment to
'const struct kernel_symbol *' from 'int' makes pointer from integer without a
cast [-Wint-conversion]
661 | sym = find_symbol(name, NULL, NULL, true, true);
| ^
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c: In function
'kpatch_write_relocations':
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:766:9: error: implicit
declaration of function 'probe_kernel_write'; did you mean 'kernel_write'?
[-Werror=implicit-function-declaration]
766 | ret = probe_kernel_write((void *)loc, &val, size);
| ^~~~~~~~~~~~~~~~~~
| kernel_write
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c: At top level:
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.c:143:27: error: storage size
of 'trace' isn't known
143 | static struct stack_trace trace = {
| ^~~~~
cc1: some warnings being treated as errors
make[4]: ***
[/usr/src/linux-headers-5.10.0-3-common/scripts/Makefile.build:284:
/var/lib/dkms/kpatch/0.6.0/build/kmod/core/core.o] Error 1
make[3]: *** [/usr/src/linux-headers-5.10.0-3-common/Makefile:1817:
/var/lib/dkms/kpatch/0.6.0/build/kmod/core] Error 2
make[2]: *** [/usr/src/linux-headers-5.10.0-3-common/Makefile:185: __sub-make]
Error 2
make[2]: Leaving directory '/usr/src/linux-headers-5.10.0-3-amd64'
make[1]: *** [Makefile:13: kpatch.ko] Error 2
make[1]: Leaving directory '/var/lib/dkms/kpatch/0.6.0/build/kmod/core'
make: *** [Makefile:7: all] Error 2
make: Leaving directory '/var/lib/dkms/kpatch/0.6.0/build/kmod'
Andreas