Fail to build kernel module 'sched_tp' with the mainline kernel
Created by: Leo-Yan
Describe the bug When I tried to build kernel module 'sched_tp' to enable ftrace events for scheduler, it failed to build .ko file.
To Reproduce Steps to reproduce the behavior: $ cd $lisa_folder $ source init_env $ cd tools/kmodules/ $ ./build_module ~/Work/opensource/linux/ ./sched_tp/
-
what part of LISA is being used (synthetic tests, WA-related features, etc.) tools/kmodules
-
what kind of target is being used (linux, android, etc.) Mainline kernel
-
what code is being run if that is a custom script using LISA APIs n/a
Logs of the error
[LISAShell kmodules] \> ./build_module ~/Work/opensource/linux/ ./sched_tp/
Building module for ARCH=arm64
make: Entering directory '/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp'
pahole -C file:///home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/vmlinux_deps.txt /home/leoy/Work/opensource/linux/vmlinux > vmlinux_deps.h
pahole -C file:///home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/vmlinux.txt /home/leoy/Work/opensource/linux/vmlinux > vmlinux.h
make -C /home/leoy/Work/opensource/linux M=/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp modules
make[1]: Entering directory '/home/leoy/Work/opensource/linux'
CC [M] /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp.o
In file included from /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:10,
from /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_events.h:18,
from /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp.c:8:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/vmlinux_deps.h:33:2: error: unknown type name ‘cpu_stop_fn_t’
33 | cpu_stop_fn_t fn; /* 16 8 */
| ^~~~~~~~~~~~~
In file included from /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_events.h:18,
from /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp.c:8:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘rq_of’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:17:15: error: dereferencing pointer to incomplete type ‘struct cfs_rq’
17 | return cfs_rq->rq;
| ^~
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘cpu_of’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:31:11: error: dereferencing pointer to incomplete type ‘struct rq’
31 | return rq->cpu;
| ^~
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘task_group_is_autogroup’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:42:13: error: dereferencing pointer to incomplete type ‘struct task_group’
42 | return !!tg->autogroup;
| ^~
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_rd_span’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:169:16: error: dereferencing pointer to incomplete type ‘struct root_domain’
169 | return rd ? rd->span : NULL;
| ^~
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘autogroup_path’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:58:1: error: control reaches end of non-void function [-Werror=return-type]
58 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘task_group_is_autogroup’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:46:1: error: control reaches end of non-void function [-Werror=return-type]
46 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘rq_of’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:18:1: error: control reaches end of non-void function [-Werror=return-type]
18 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘cpu_of’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:35:1: error: control reaches end of non-void function [-Werror=return-type]
35 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_cfs_rq_avg’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:103:1: error: control reaches end of non-void function [-Werror=return-type]
103 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_rq_nr_running’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:178:1: error: control reaches end of non-void function [-Werror=return-type]
178 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_rd_span’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:173:1: error: control reaches end of non-void function [-Werror=return-type]
173 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_rq_avg_irq’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:148:1: error: control reaches end of non-void function [-Werror=return-type]
148 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_rq_avg_dl’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:139:1: error: control reaches end of non-void function [-Werror=return-type]
139 | }
| ^
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h: In function ‘sched_tp_rq_avg_rt’:
/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp_helpers.h:130:1: error: control reaches end of non-void function [-Werror=return-type]
130 | }
| ^
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:273: /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp/sched_tp.o] Error 1
make[1]: *** [Makefile:1847: /home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp] Error 2
make[1]: Leaving directory '/home/leoy/Work/opensource/linux'
make: *** [Makefile:18: build] Error 2
make: Leaving directory '/home/leoy/Work2/Develop/tools/lisa/tools/kmodules/sched_tp'