From: kernel test robot <lkp@intel.com>
To: steven@liquorix.net
Cc: oe-kbuild-all@lists.linux.dev
Subject: [zen:7.1/prjc 636/668] kernel/trace/rv/monitors/deadline/deadline.h:67:6: error: call to undeclared function 'dl_server'; ISO C99 and later do not support implicit function declarations
Date: Tue, 23 Jun 2026 06:49:22 +0800 [thread overview]
Message-ID: <202606230659.WvfReCJF-lkp@intel.com> (raw)
tree: https://github.com/zen-kernel/zen-kernel 7.1/prjc
head: 554af5ca804c16da84a47b49a517697a9b81bb54
commit: de41db545b89a8e1f708de3813fec4a38d17f710 [636/668] sched/alt: [Sync] deadline sync-up fix
config: s390-allmodconfig (https://download.01.org/0day-ci/archive/20260623/202606230659.WvfReCJF-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project a9b492db3d50683e446cd1a5c9ffaf4e92cb77a7)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260623/202606230659.WvfReCJF-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202606230659.WvfReCJF-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from kernel/trace/rv/monitors/deadline/deadline.c:10:
>> kernel/trace/rv/monitors/deadline/deadline.h:67:6: error: call to undeclared function 'dl_server'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
67 | if (dl_server(dl_se) && type != DL_TASK) {
| ^
>> kernel/trace/rv/monitors/deadline/deadline.h:74:9: error: call to undeclared function 'dl_task_of'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
74 | return dl_task_of(dl_se)->pid;
| ^
kernel/trace/rv/monitors/deadline/deadline.h:74:9: note: did you mean 'dl_task'?
include/linux/sched/deadline.h:7:19: note: 'dl_task' declared here
7 | static inline int dl_task(struct task_struct *p)
| ^
In file included from kernel/trace/rv/monitors/deadline/deadline.c:10:
>> kernel/trace/rv/monitors/deadline/deadline.h:74:28: error: member reference type 'int' is not a pointer
74 | return dl_task_of(dl_se)->pid;
| ~~~~~~~~~~~~~~~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:80:14: error: no member named 'sched_class' in 'struct task_struct'
80 | tsk->sched_class == rv_ext_sched_class;
| ~~~ ^
4 errors generated.
--
In file included from kernel/trace/rv/monitors/nomiss/nomiss.c:25:
>> kernel/trace/rv/monitors/deadline/deadline.h:67:6: error: call to undeclared function 'dl_server'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
67 | if (dl_server(dl_se) && type != DL_TASK) {
| ^
>> kernel/trace/rv/monitors/deadline/deadline.h:74:9: error: call to undeclared function 'dl_task_of'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
74 | return dl_task_of(dl_se)->pid;
| ^
kernel/trace/rv/monitors/deadline/deadline.h:74:9: note: did you mean 'dl_task'?
include/linux/sched/deadline.h:7:19: note: 'dl_task' declared here
7 | static inline int dl_task(struct task_struct *p)
| ^
In file included from kernel/trace/rv/monitors/nomiss/nomiss.c:25:
>> kernel/trace/rv/monitors/deadline/deadline.h:74:28: error: member reference type 'int' is not a pointer
74 | return dl_task_of(dl_se)->pid;
| ~~~~~~~~~~~~~~~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:80:14: error: no member named 'sched_class' in 'struct task_struct'
80 | tsk->sched_class == rv_ext_sched_class;
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:142:11: error: no member named 'dl_server' in 'struct task_struct'
142 | if (tsk->dl_server && get_server_type(tsk) == type)
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:143:15: error: no member named 'dl_server' in 'struct task_struct'
143 | return tsk->dl_server;
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:176:27: error: no member named 'dl' in 'struct task_struct'
176 | if (!da_create_storage(EXPAND_ID_TASK(p), NULL)) {
| ^ ~
kernel/trace/rv/monitors/deadline/deadline.h:85:49: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:176:27: error: no member named 'dl' in 'struct task_struct'
176 | if (!da_create_storage(EXPAND_ID_TASK(p), NULL)) {
| ^ ~
kernel/trace/rv/monitors/deadline/deadline.h:85:84: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:194:21: error: no member named 'dl' in 'struct task_struct'
194 | da_create_storage(EXPAND_ID_TASK(task), NULL);
| ^ ~~~~
kernel/trace/rv/monitors/deadline/deadline.h:85:49: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:194:21: error: no member named 'dl' in 'struct task_struct'
194 | da_create_storage(EXPAND_ID_TASK(task), NULL);
| ^ ~~~~
kernel/trace/rv/monitors/deadline/deadline.h:85:84: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/deadline/deadline.h:200:40: error: no member named 'dl' in 'struct task_struct'
200 | da_destroy_storage(get_entity_id(&p->dl, DL_TASK, DL_TASK));
| ~ ^
>> kernel/trace/rv/monitors/nomiss/nomiss.c:43:11: error: call to undeclared function 'dl_is_implicit'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
43 | return !dl_is_implicit(ha_get_target(ha_mon));
| ^
kernel/trace/rv/monitors/nomiss/nomiss.c:179:19: error: no member named 'dl' in 'struct task_struct'
179 | da_handle_event(EXPAND_ID_TASK(prev), sched_switch_suspend_nomiss);
| ^ ~~~~
kernel/trace/rv/monitors/deadline/deadline.h:85:49: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/nomiss/nomiss.c:179:19: error: no member named 'dl' in 'struct task_struct'
179 | da_handle_event(EXPAND_ID_TASK(prev), sched_switch_suspend_nomiss);
| ^ ~~~~
kernel/trace/rv/monitors/deadline/deadline.h:85:84: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/nomiss/nomiss.c:181:29: error: no member named 'dl' in 'struct task_struct'
181 | da_handle_start_run_event(EXPAND_ID_TASK(next), sched_switch_in_nomiss);
| ^ ~~~~
kernel/trace/rv/monitors/deadline/deadline.h:85:49: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/nomiss/nomiss.c:181:29: error: no member named 'dl' in 'struct task_struct'
181 | da_handle_start_run_event(EXPAND_ID_TASK(next), sched_switch_in_nomiss);
| ^ ~~~~
kernel/trace/rv/monitors/deadline/deadline.h:85:84: note: expanded from macro 'EXPAND_ID_TASK'
85 | #define EXPAND_ID_TASK(tsk) get_entity_id(&tsk->dl, task_cpu(tsk), DL_TASK), &tsk->dl
| ~~~ ^
kernel/trace/rv/monitors/nomiss/nomiss.c:189:12: error: no member named 'dl_server' in 'struct task_struct'
189 | if (next->dl_server)
| ~~~~ ^
kernel/trace/rv/monitors/nomiss/nomiss.c:190:41: error: no member named 'dl_server' in 'struct task_struct'
190 | da_handle_start_event(EXPAND_ID(next->dl_server, cpu,
| ~~~~ ^
kernel/trace/rv/monitors/nomiss/nomiss.c:190:41: error: no member named 'dl_server' in 'struct task_struct'
190 | da_handle_start_event(EXPAND_ID(next->dl_server, cpu,
| ~~~~ ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
vim +/dl_server +67 kernel/trace/rv/monitors/deadline/deadline.h
b133207deb7260 Gabriele Monaco 2026-03-30 48
b133207deb7260 Gabriele Monaco 2026-03-30 49 /*
b133207deb7260 Gabriele Monaco 2026-03-30 50 * Use negative numbers for the server.
b133207deb7260 Gabriele Monaco 2026-03-30 51 * Currently only one fair server per CPU, may change in the future.
b133207deb7260 Gabriele Monaco 2026-03-30 52 */
b133207deb7260 Gabriele Monaco 2026-03-30 53 #define fair_server_id(cpu) (-cpu)
b133207deb7260 Gabriele Monaco 2026-03-30 54 #define ext_server_id(cpu) (-cpu - num_possible_cpus())
b133207deb7260 Gabriele Monaco 2026-03-30 55 #define NO_SERVER_ID (-2 * num_possible_cpus())
b133207deb7260 Gabriele Monaco 2026-03-30 56 /*
b133207deb7260 Gabriele Monaco 2026-03-30 57 * Get a unique id used for dl entities
b133207deb7260 Gabriele Monaco 2026-03-30 58 *
b133207deb7260 Gabriele Monaco 2026-03-30 59 * The cpu is not required for tasks as the pid is used there, if this function
b133207deb7260 Gabriele Monaco 2026-03-30 60 * is called on a dl_se that for sure corresponds to a task, DL_TASK can be
b133207deb7260 Gabriele Monaco 2026-03-30 61 * used in place of cpu.
b133207deb7260 Gabriele Monaco 2026-03-30 62 * We need the cpu for servers as it is provided in the tracepoint and we
b133207deb7260 Gabriele Monaco 2026-03-30 63 * cannot easily retrieve it from the dl_se (requires the struct rq definition).
b133207deb7260 Gabriele Monaco 2026-03-30 64 */
b133207deb7260 Gabriele Monaco 2026-03-30 65 static inline int get_entity_id(struct sched_dl_entity *dl_se, int cpu, u8 type)
b133207deb7260 Gabriele Monaco 2026-03-30 66 {
b133207deb7260 Gabriele Monaco 2026-03-30 @67 if (dl_server(dl_se) && type != DL_TASK) {
b133207deb7260 Gabriele Monaco 2026-03-30 68 if (type == DL_SERVER_FAIR)
b133207deb7260 Gabriele Monaco 2026-03-30 69 return fair_server_id(cpu);
b133207deb7260 Gabriele Monaco 2026-03-30 70 if (type == DL_SERVER_EXT)
b133207deb7260 Gabriele Monaco 2026-03-30 71 return ext_server_id(cpu);
b133207deb7260 Gabriele Monaco 2026-03-30 72 return NO_SERVER_ID;
b133207deb7260 Gabriele Monaco 2026-03-30 73 }
b133207deb7260 Gabriele Monaco 2026-03-30 @74 return dl_task_of(dl_se)->pid;
b133207deb7260 Gabriele Monaco 2026-03-30 75 }
b133207deb7260 Gabriele Monaco 2026-03-30 76
:::::: The code at line 67 was first introduced by commit
:::::: b133207deb72609ad4da40c4d50128a5e150677b rv: Add nomiss deadline monitor
:::::: TO: Gabriele Monaco <gmonaco@redhat.com>
:::::: CC: Gabriele Monaco <gmonaco@redhat.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-06-22 22:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202606230659.WvfReCJF-lkp@intel.com \
--to=lkp@intel.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=steven@liquorix.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.