linux-next: build failure after merge of the vfs tree

From: Mark Brown

Date: Mon Sep 29 2025 - 07:01:19 EST


Hi all,

After merging the vfs tree, today's linux-next build (x86 allmodconfig)
failed like this:

In file included from /tmp/next/build/include/rv/ltl_monitor.h:11,
from /tmp/next/build/kernel/trace/rv/monitors/pagefault/pagefault.c:19:
/tmp/next/build/include/rv/ltl_monitor.h: In function 'ltl_monitor_init':
/tmp/next/build/include/rv/ltl_monitor.h:75:51: error: passing argument 1 of 'check_trace_callback_type_task_newtask' from incompatible pointer type [-Wincompatible-pointer-types]
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
/tmp/next/build/include/rv/instrumentation.h:18:48: note: in definition of macro 'rv_attach_trace_probe'
18 | check_trace_callback_type_##tp(rv_handler); \
| ^~~~~~~~~~
In file included from /tmp/next/build/kernel/trace/rv/monitors/pagefault/pagefault.c:9:
/tmp/next/build/include/linux/tracepoint.h:260:49: note: expected 'void (*)(void *, struct task_struct *, u64)' {aka 'void (*)(void *, struct task_struct *, long long unsigned int)'} but argument is of type 'void (*)(void *, struct task_struct *, long unsigned int)'
260 | check_trace_callback_type_##name(void (*cb)(data_proto)) \
| ~~~~~~~^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:270:9: note: in expansion of macro '__DECLARE_TRACE_COMMON'
270 | __DECLARE_TRACE_COMMON(name, PARAMS(proto), PARAMS(args), PARAMS(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:481:9: note: in expansion of macro '__DECLARE_TRACE'
481 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:619:9: note: in expansion of macro 'DECLARE_TRACE_EVENT'
619 | DECLARE_TRACE_EVENT(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/trace/events/task.h:9:1: note: in expansion of macro 'TRACE_EVENT'
9 | TRACE_EVENT(task_newtask,
| ^~~~~~~~~~~
In file included from /tmp/next/build/include/asm-generic/bug.h:7,
from /tmp/next/build/arch/x86/include/asm/bug.h:103,
from /tmp/next/build/arch/x86/include/asm/alternative.h:9,
from /tmp/next/build/arch/x86/include/asm/barrier.h:5,
from /tmp/next/build/include/asm-generic/bitops/generic-non-atomic.h:7,
from /tmp/next/build/include/linux/bitops.h:28,
from /tmp/next/build/include/linux/kernel.h:23,
from /tmp/next/build/include/linux/interrupt.h:6,
from /tmp/next/build/include/linux/trace_recursion.h:5,
from /tmp/next/build/include/linux/ftrace.h:10,
from /tmp/next/build/kernel/trace/rv/monitors/pagefault/pagefault.c:2:
/tmp/next/build/include/rv/ltl_monitor.h:75:51: error: passing argument 1 of 'register_trace_task_newtask' from incompatible pointer type [-Wincompatible-pointer-types]
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
/tmp/next/build/include/linux/once_lite.h:28:41: note: in definition of macro 'DO_ONCE_LITE_IF'
28 | bool __ret_do_once = !!(condition); \
| ^~~~~~~~~
/tmp/next/build/include/rv/instrumentation.h:19:17: note: in expansion of macro 'WARN_ONCE'
19 | WARN_ONCE(register_trace_##tp(rv_handler, NULL), \
| ^~~~~~~~~
/tmp/next/build/include/rv/ltl_monitor.h:75:9: note: in expansion of macro 'rv_attach_trace_probe'
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:241:38: note: expected 'void (*)(void *, struct task_struct *, u64)' {aka 'void (*)(void *, struct task_struct *, long long unsigned int)'} but argument is of type 'void (*)(void *, struct task_struct *, long unsigned int)'
241 | register_trace_##name(void (*probe)(data_proto), void *data) \
| ~~~~~~~^~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:270:9: note: in expansion of macro '__DECLARE_TRACE_COMMON'
270 | __DECLARE_TRACE_COMMON(name, PARAMS(proto), PARAMS(args), PARAMS(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:481:9: note: in expansion of macro '__DECLARE_TRACE'
481 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:619:9: note: in expansion of macro 'DECLARE_TRACE_EVENT'
619 | DECLARE_TRACE_EVENT(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/trace/events/task.h:9:1: note: in expansion of macro 'TRACE_EVENT'
9 | TRACE_EVENT(task_newtask,
| ^~~~~~~~~~~
/tmp/next/build/include/rv/ltl_monitor.h: In function 'ltl_monitor_destroy':
/tmp/next/build/include/rv/ltl_monitor.h:92:51: error: passing argument 1 of 'unregister_trace_task_newtask' from incompatible pointer type [-Wincompatible-pointer-types]
92 | rv_detach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
/tmp/next/build/include/rv/instrumentation.h:28:39: note: in definition of macro 'rv_detach_trace_probe'
28 | unregister_trace_##tp(rv_handler, NULL); \
| ^~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:254:40: note: expected 'void (*)(void *, struct task_struct *, u64)' {aka 'void (*)(void *, struct task_struct *, long long unsigned int)'} but argument is of type 'void (*)(void *, struct task_struct *, long unsigned int)'
254 | unregister_trace_##name(void (*probe)(data_proto), void *data) \
| ~~~~~~~^~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:270:9: note: in expansion of macro '__DECLARE_TRACE_COMMON'
270 | __DECLARE_TRACE_COMMON(name, PARAMS(proto), PARAMS(args), PARAMS(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:481:9: note: in expansion of macro '__DECLARE_TRACE'
481 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:619:9: note: in expansion of macro 'DECLARE_TRACE_EVENT'
619 | DECLARE_TRACE_EVENT(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/trace/events/task.h:9:1: note: in expansion of macro 'TRACE_EVENT'
9 | TRACE_EVENT(task_newtask,
| ^~~~~~~~~~~
make[6]: *** [/tmp/next/build/scripts/Makefile.build:287: kernel/trace/rv/monitors/pagefault/pagefault.o] Error 1
make[6]: *** Waiting for unfinished jobs....
In file included from /tmp/next/build/include/rv/ltl_monitor.h:11,
from /tmp/next/build/kernel/trace/rv/monitors/sleep/sleep.c:23:
/tmp/next/build/include/rv/ltl_monitor.h: In function 'ltl_monitor_init':
/tmp/next/build/include/rv/ltl_monitor.h:75:51: error: passing argument 1 of 'check_trace_callback_type_task_newtask' from incompatible pointer type [-Wincompatible-pointer-types]
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
/tmp/next/build/include/rv/instrumentation.h:18:48: note: in definition of macro 'rv_attach_trace_probe'
18 | check_trace_callback_type_##tp(rv_handler); \
| ^~~~~~~~~~
In file included from /tmp/next/build/kernel/trace/rv/monitors/sleep/sleep.c:3:
/tmp/next/build/include/linux/tracepoint.h:260:49: note: expected 'void (*)(void *, struct task_struct *, u64)' {aka 'void (*)(void *, struct task_struct *, long long unsigned int)'} but argument is of type 'void (*)(void *, struct task_struct *, long unsigned int)'
260 | check_trace_callback_type_##name(void (*cb)(data_proto)) \
| ~~~~~~~^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:270:9: note: in expansion of macro '__DECLARE_TRACE_COMMON'
270 | __DECLARE_TRACE_COMMON(name, PARAMS(proto), PARAMS(args), PARAMS(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:481:9: note: in expansion of macro '__DECLARE_TRACE'
481 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:619:9: note: in expansion of macro 'DECLARE_TRACE_EVENT'
619 | DECLARE_TRACE_EVENT(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/trace/events/task.h:9:1: note: in expansion of macro 'TRACE_EVENT'
9 | TRACE_EVENT(task_newtask,
| ^~~~~~~~~~~
In file included from /tmp/next/build/include/asm-generic/bug.h:7,
from /tmp/next/build/arch/x86/include/asm/bug.h:103,
from /tmp/next/build/arch/x86/include/asm/alternative.h:9,
from /tmp/next/build/arch/x86/include/asm/barrier.h:5,
from /tmp/next/build/include/asm-generic/bitops/generic-non-atomic.h:7,
from /tmp/next/build/include/linux/bitops.h:28,
from /tmp/next/build/include/linux/kernel.h:23,
from /tmp/next/build/include/linux/interrupt.h:6,
from /tmp/next/build/include/linux/trace_recursion.h:5,
from /tmp/next/build/include/linux/ftrace.h:10,
from /tmp/next/build/kernel/trace/rv/monitors/sleep/sleep.c:2:
/tmp/next/build/include/rv/ltl_monitor.h:75:51: error: passing argument 1 of 'register_trace_task_newtask' from incompatible pointer type [-Wincompatible-pointer-types]
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
/tmp/next/build/include/linux/once_lite.h:28:41: note: in definition of macro 'DO_ONCE_LITE_IF'
28 | bool __ret_do_once = !!(condition); \
| ^~~~~~~~~
/tmp/next/build/include/rv/instrumentation.h:19:17: note: in expansion of macro 'WARN_ONCE'
19 | WARN_ONCE(register_trace_##tp(rv_handler, NULL), \
| ^~~~~~~~~
/tmp/next/build/include/rv/ltl_monitor.h:75:9: note: in expansion of macro 'rv_attach_trace_probe'
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:241:38: note: expected 'void (*)(void *, struct task_struct *, u64)' {aka 'void (*)(void *, struct task_struct *, long long unsigned int)'} but argument is of type 'void (*)(void *, struct task_struct *, long unsigned int)'
241 | register_trace_##name(void (*probe)(data_proto), void *data) \
| ~~~~~~~^~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:270:9: note: in expansion of macro '__DECLARE_TRACE_COMMON'
270 | __DECLARE_TRACE_COMMON(name, PARAMS(proto), PARAMS(args), PARAMS(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:481:9: note: in expansion of macro '__DECLARE_TRACE'
481 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:619:9: note: in expansion of macro 'DECLARE_TRACE_EVENT'
619 | DECLARE_TRACE_EVENT(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/trace/events/task.h:9:1: note: in expansion of macro 'TRACE_EVENT'
9 | TRACE_EVENT(task_newtask,
| ^~~~~~~~~~~
/tmp/next/build/include/rv/ltl_monitor.h: In function 'ltl_monitor_destroy':
/tmp/next/build/include/rv/ltl_monitor.h:92:51: error: passing argument 1 of 'unregister_trace_task_newtask' from incompatible pointer type [-Wincompatible-pointer-types]
92 | rv_detach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
/tmp/next/build/include/rv/instrumentation.h:28:39: note: in definition of macro 'rv_detach_trace_probe'
28 | unregister_trace_##tp(rv_handler, NULL); \
| ^~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:254:40: note: expected 'void (*)(void *, struct task_struct *, u64)' {aka 'void (*)(void *, struct task_struct *, long long unsigned int)'} but argument is of type 'void (*)(void *, struct task_struct *, long unsigned int)'
254 | unregister_trace_##name(void (*probe)(data_proto), void *data) \
| ~~~~~~~^~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:270:9: note: in expansion of macro '__DECLARE_TRACE_COMMON'
270 | __DECLARE_TRACE_COMMON(name, PARAMS(proto), PARAMS(args), PARAMS(data_proto)) \
| ^~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:481:9: note: in expansion of macro '__DECLARE_TRACE'
481 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
/tmp/next/build/include/linux/tracepoint.h:619:9: note: in expansion of macro 'DECLARE_TRACE_EVENT'
619 | DECLARE_TRACE_EVENT(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~~~~~~~
/tmp/next/build/include/trace/events/task.h:9:1: note: in expansion of macro 'TRACE_EVENT'
9 | TRACE_EVENT(task_newtask,
| ^~~~~~~~~~~
make[6]: *** [/tmp/next/build/scripts/Makefile.build:287: kernel/trace/rv/monitors/sleep/sleep.o] Error 1
make[5]: *** [/tmp/next/build/scripts/Makefile.build:556: kernel/trace/rv] Error 2
make[5]: *** Waiting for unfinished jobs....
make[4]: *** [/tmp/next/build/scripts/Makefile.build:556: kernel/trace] Error 2
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [/tmp/next/build/scripts/Makefile.build:556: kernel] Error 2
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [/tmp/next/build/Makefile:2011: .] Error 2
make[1]: *** [/tmp/next/build/Makefile:248: __sub-make] Error 2
make: *** [Makefile:248: __sub-make] Error 2
Command exited with non-zero status 2
17036.15user 1313.54system 1:54.95elapsed 15962%CPU (0avgtext+0avgdata 1394068maxresident)k
0inputs+0outputs (5021major+224011004minor)pagefaults 0swaps

I couldn't figure out exactly which commit was causing this in a timely
fashion (and suspect it may be an interaction with another tree), I've
used the VFS tree from 20250926 instead.

Attachment: signature.asc
Description: PGP signature