-
Bug
-
Resolution: Unresolved
-
Undefined
-
rhel-10.0.beta
-
None
-
systemtap-5.1-7.el10
-
None
-
None
-
1
-
rhel-sst-pt-perf-debug
-
ssg_platform_tools
-
23
-
23
-
1
-
False
-
-
No
-
Perf Debug Sprint 8
-
Unspecified Release Note Type - Unknown
-
None
Various testcases now point a finger to this systemtap problem:
el10 x86_64 # uname -r
6.10.0-15.el10.x86_64
el10 x86_64 # stap -e 'probe nfsd.proc.lookup {printf("%s %s\n", client_ip, filename);}'
In file included from /usr/share/systemtap/runtime/runtime.h:26,
from /tmp/staphWrjL0/stap_43f6aea024d9a47d3e37cbda87af21c3_9499_src.c:21:
/usr/share/systemtap/runtime/stp_task_work.c: In function ‘stp_task_work_cancel’:
/usr/share/systemtap/runtime/stp_task_work.c:13:123: error: passing argument 2 of ‘(bool (*)(struct task_struct *, struct callback_head *))kallsyms_task_work_cancel’ from incompatible pointer type [-Wincompatible-pointer-types]
13 | #define task_work_cancel(a,b) ibt_wrapper(struct callback_head *, (* (task_work_cancel_fn)kallsyms_task_work_cancel)((a), (b)))
| ^~~
| |
| task_work_func_t {aka void (*)(struct callback_head *)}
/usr/share/systemtap/runtime/linux/runtime.h:317:21: note: in definition of macro ‘ibt_wrapper’
317 | rettype retval = (function); \
| ^~~~~~~~
/usr/share/systemtap/runtime/stp_task_work.c:107:17: note: in expansion of macro ‘task_work_cancel’
107 | twork = task_work_cancel(task, func);
| ^~~~~~~~~~~~~~~~
/usr/share/systemtap/runtime/stp_task_work.c:13:123: note: expected ‘struct callback_head *’ but argument is of type ‘task_work_func_t’ {aka ‘void (*)(struct callback_head *)’}
13 | #define task_work_cancel(a,b) ibt_wrapper(struct callback_head *, (* (task_work_cancel_fn)kallsyms_task_work_cancel)((a), (b)))
| ^~~
/usr/share/systemtap/runtime/linux/runtime.h:317:21: note: in definition of macro ‘ibt_wrapper’
317 | rettype retval = (function); \
| ^~~~~~~~
/usr/share/systemtap/runtime/stp_task_work.c:107:17: note: in expansion of macro ‘task_work_cancel’
107 | twork = task_work_cancel(task, func);
| ^~~~~~~~~~~~~~~~
/usr/share/systemtap/runtime/linux/runtime.h:317:20: error: incompatible types when initializing type ‘struct callback_head *’ using type ‘bool’ {aka ‘_Bool’}
317 | rettype retval = (function); \
| ^
/usr/share/systemtap/runtime/stp_task_work.c:13:31: note: in expansion of macro ‘ibt_wrapper’
13 | #define task_work_cancel(a,b) ibt_wrapper(struct callback_head *, (* (task_work_cancel_fn)kallsyms_task_work_cancel)((a), (b)))
| ^~~~~~~~~~~
/usr/share/systemtap/runtime/stp_task_work.c:107:17: note: in expansion of macro ‘task_work_cancel’
107 | twork = task_work_cancel(task, func);
| ^~~~~~~~~~~~~~~~
make[1]: *** [scripts/Makefile.build:244: /tmp/staphWrjL0/stap_43f6aea024d9a47d3e37cbda87af21c3_9499_src.o] Error 1
make: *** [Makefile:1952: /tmp/staphWrjL0] Error 2
WARNING: kbuild exited with status: 2
Pass 4: compilation failed. [man error::pass4]
Kernel version 6.10.0 is outside tested range 2.6.32 ... 6.9-rc0
el10 x86_64 #
Affects systemtap-5.1-6.el10. As of today [38b9646417560aa8a5b993669aafeec2f8a42496], there's no upstream fix for this.
- links to
-
RHBA-2024:131777 systemtap bug fix and enhancement update