From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [zen-kernel-zen-kernel:5.9/muqss 1/20] kernel/sched/MuQSS.c:639:6: warning: no previous prototype for function 'resched_task'
Date: Tue, 24 Nov 2020 13:37:47 +0800 [thread overview]
Message-ID: <202011241342.PHBylV9d-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 14823 bytes --]
tree: https://github.com/zen-kernel/zen-kernel 5.9/muqss
head: 8969d3bb632504cea984c900b71176e2d4c7997e
commit: 49e82d66c704858ba77947984535811593d6dacb [1/20] MultiQueue Skiplist Scheduler v0.204
config: arm-randconfig-r036-20201124 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project df9ae5992889560a8f3c6760b54d5051b47c7bf5)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/zen-kernel/zen-kernel/commit/49e82d66c704858ba77947984535811593d6dacb
git remote add zen-kernel-zen-kernel https://github.com/zen-kernel/zen-kernel
git fetch --no-tags zen-kernel-zen-kernel 5.9/muqss
git checkout 49e82d66c704858ba77947984535811593d6dacb
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All error/warnings (new ones prefixed by >>):
>> kernel/sched/MuQSS.c:639:6: warning: no previous prototype for function 'resched_task' [-Wmissing-prototypes]
void resched_task(struct task_struct *p)
^
kernel/sched/MuQSS.c:639:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void resched_task(struct task_struct *p)
^
static
>> kernel/sched/MuQSS.c:3076:15: warning: no previous prototype for function 'nr_active' [-Wmissing-prototypes]
unsigned long nr_active(void)
^
kernel/sched/MuQSS.c:3076:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
unsigned long nr_active(void)
^
static
>> kernel/sched/MuQSS.c:6234:6: warning: no previous prototype for function 'resched_cpu' [-Wmissing-prototypes]
void resched_cpu(int cpu)
^
kernel/sched/MuQSS.c:6234:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void resched_cpu(int cpu)
^
static
>> kernel/sched/MuQSS.c:7697:6: warning: no previous prototype for function 'init_idle_bootup_task' [-Wmissing-prototypes]
void init_idle_bootup_task(struct task_struct *idle)
^
kernel/sched/MuQSS.c:7697:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void init_idle_bootup_task(struct task_struct *idle)
^
static
kernel/sched/MuQSS.c:429:20: warning: unused function 'lock_all_rqs' [-Wunused-function]
static inline void lock_all_rqs(void)
^
kernel/sched/MuQSS.c:441:20: warning: unused function 'unlock_all_rqs' [-Wunused-function]
static inline void unlock_all_rqs(void)
^
kernel/sched/MuQSS.c:454:20: warning: unused function 'trylock_rq' [-Wunused-function]
static inline bool trylock_rq(struct rq *this_rq, struct rq *rq)
^
kernel/sched/MuQSS.c:464:20: warning: unused function 'unlock_rq' [-Wunused-function]
static inline void unlock_rq(struct rq *rq)
^
kernel/sched/MuQSS.c:1233:26: warning: unused function 'rq_order' [-Wunused-function]
static inline struct rq *rq_order(struct rq *rq, int cpu)
^
kernel/sched/MuQSS.c:1238:20: warning: unused function 'smt_schedule' [-Wunused-function]
static inline bool smt_schedule(struct task_struct *p, struct rq *rq)
^
kernel/sched/MuQSS.c:1976:19: warning: unused function 'select_best_cpu' [-Wunused-function]
static inline int select_best_cpu(struct task_struct *p)
^
kernel/sched/MuQSS.c:3195:19: warning: unused function 'steal_ticks' [-Wunused-function]
static inline u64 steal_ticks(u64 steal)
^
kernel/sched/MuQSS.c:3681:20: warning: unused function 'sched_start_tick' [-Wunused-function]
static inline void sched_start_tick(struct rq *rq, int cpu) {}
^
kernel/sched/MuQSS.c:3682:20: warning: unused function 'sched_tick_start' [-Wunused-function]
static inline void sched_tick_start(int cpu) { }
^
kernel/sched/MuQSS.c:3683:20: warning: unused function 'sched_tick_stop' [-Wunused-function]
static inline void sched_tick_stop(int cpu) { }
^
15 warnings generated.
--
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
this_cpu_write(runqueues.membarrier_state,
^
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
>> kernel/sched/membarrier.c:39:2: error: indirection requires pointer operand ('void' invalid)
this_cpu_write(runqueues.membarrier_state,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:508:34: note: expanded from macro 'this_cpu_write'
#define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:377:11: note: expanded from macro '__pcpu_size_call'
case 1: stem##1(variable, __VA_ARGS__);break; \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<scratch space>:76:1: note: expanded from here
this_cpu_write_1
^
include/asm-generic/percpu.h:333:36: note: expanded from macro 'this_cpu_write_1'
#define this_cpu_write_1(pcp, val) this_cpu_generic_to_op(pcp, val, =)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:148:2: note: expanded from macro 'this_cpu_generic_to_op'
raw_cpu_generic_to_op(pcp, val, op); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:72:2: note: expanded from macro 'raw_cpu_generic_to_op'
*raw_cpu_ptr(&(pcp)) op val; \
^~~~~~~~~~~~~~~~~~~~
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
this_cpu_write(runqueues.membarrier_state,
^
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
>> kernel/sched/membarrier.c:39:2: error: indirection requires pointer operand ('void' invalid)
this_cpu_write(runqueues.membarrier_state,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:508:34: note: expanded from macro 'this_cpu_write'
#define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:378:11: note: expanded from macro '__pcpu_size_call'
case 2: stem##2(variable, __VA_ARGS__);break; \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<scratch space>:77:1: note: expanded from here
this_cpu_write_2
^
include/asm-generic/percpu.h:336:36: note: expanded from macro 'this_cpu_write_2'
#define this_cpu_write_2(pcp, val) this_cpu_generic_to_op(pcp, val, =)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:148:2: note: expanded from macro 'this_cpu_generic_to_op'
raw_cpu_generic_to_op(pcp, val, op); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:72:2: note: expanded from macro 'raw_cpu_generic_to_op'
*raw_cpu_ptr(&(pcp)) op val; \
^~~~~~~~~~~~~~~~~~~~
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
this_cpu_write(runqueues.membarrier_state,
^
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
>> kernel/sched/membarrier.c:39:2: error: indirection requires pointer operand ('void' invalid)
this_cpu_write(runqueues.membarrier_state,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:508:34: note: expanded from macro 'this_cpu_write'
#define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:379:11: note: expanded from macro '__pcpu_size_call'
case 4: stem##4(variable, __VA_ARGS__);break; \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<scratch space>:78:1: note: expanded from here
this_cpu_write_4
^
include/asm-generic/percpu.h:339:36: note: expanded from macro 'this_cpu_write_4'
#define this_cpu_write_4(pcp, val) this_cpu_generic_to_op(pcp, val, =)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:148:2: note: expanded from macro 'this_cpu_generic_to_op'
raw_cpu_generic_to_op(pcp, val, op); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:72:2: note: expanded from macro 'raw_cpu_generic_to_op'
*raw_cpu_ptr(&(pcp)) op val; \
^~~~~~~~~~~~~~~~~~~~
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
this_cpu_write(runqueues.membarrier_state,
^
>> kernel/sched/membarrier.c:39:17: error: use of undeclared identifier 'runqueues'
>> kernel/sched/membarrier.c:39:2: error: indirection requires pointer operand ('void' invalid)
this_cpu_write(runqueues.membarrier_state,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:508:34: note: expanded from macro 'this_cpu_write'
#define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:380:11: note: expanded from macro '__pcpu_size_call'
case 8: stem##8(variable, __VA_ARGS__);break; \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<scratch space>:79:1: note: expanded from here
this_cpu_write_8
^
include/asm-generic/percpu.h:342:36: note: expanded from macro 'this_cpu_write_8'
#define this_cpu_write_8(pcp, val) this_cpu_generic_to_op(pcp, val, =)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:148:2: note: expanded from macro 'this_cpu_generic_to_op'
raw_cpu_generic_to_op(pcp, val, op); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:72:2: note: expanded from macro 'raw_cpu_generic_to_op'
*raw_cpu_ptr(&(pcp)) op val; \
^~~~~~~~~~~~~~~~~~~~
kernel/sched/membarrier.c:63:17: error: use of undeclared identifier 'runqueues'
this_cpu_write(runqueues.membarrier_state, 0);
^
kernel/sched/membarrier.c:63:17: error: use of undeclared identifier 'runqueues'
kernel/sched/membarrier.c:63:17: error: use of undeclared identifier 'runqueues'
kernel/sched/membarrier.c:63:17: error: use of undeclared identifier 'runqueues'
kernel/sched/membarrier.c:63:2: error: indirection requires pointer operand ('void' invalid)
this_cpu_write(runqueues.membarrier_state, 0);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:508:34: note: expanded from macro 'this_cpu_write'
#define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:377:11: note: expanded from macro '__pcpu_size_call'
case 1: stem##1(variable, __VA_ARGS__);break; \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<scratch space>:83:1: note: expanded from here
this_cpu_write_1
^
include/asm-generic/percpu.h:333:36: note: expanded from macro 'this_cpu_write_1'
#define this_cpu_write_1(pcp, val) this_cpu_generic_to_op(pcp, val, =)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:148:2: note: expanded from macro 'this_cpu_generic_to_op'
raw_cpu_generic_to_op(pcp, val, op); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/percpu.h:72:2: note: expanded from macro 'raw_cpu_generic_to_op'
*raw_cpu_ptr(&(pcp)) op val; \
^~~~~~~~~~~~~~~~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
vim +/resched_task +639 kernel/sched/MuQSS.c
631
632 /*
633 * resched_task - mark a task 'to be rescheduled now'.
634 *
635 * On UP this means the setting of the need_resched flag, on SMP it
636 * might also involve a cross-CPU call to trigger the scheduler on
637 * the target CPU.
638 */
> 639 void resched_task(struct task_struct *p)
640 {
641 int cpu;
642 #ifdef CONFIG_LOCKDEP
643 /* Kernel threads call this when creating workqueues while still
644 * inactive from __kthread_bind_mask, holding only the pi_lock */
645 if (!(p->flags & PF_KTHREAD)) {
646 struct rq *rq = task_rq(p);
647
648 lockdep_assert_held(rq->lock);
649 }
650 #endif
651 if (test_tsk_need_resched(p))
652 return;
653
654 cpu = task_cpu(p);
655 if (cpu == smp_processor_id()) {
656 set_tsk_need_resched(p);
657 set_preempt_need_resched();
658 return;
659 }
660
661 if (set_nr_and_not_polling(p))
662 smp_sched_reschedule(cpu);
663 else
664 trace_sched_wake_idle_without_ipi(cpu);
665 }
666
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33036 bytes --]
reply other threads:[~2020-11-24 5:37 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=202011241342.PHBylV9d-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/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.