tree:
https://github.com/zen-kernel/zen-kernel 5.8/muqss
head: db04c0928ec2c38291ffb330ee4ce8217c73f069
commit: a7fe15e65f195714f080517f5a81303badc46dd9 [1/24] MultiQueue Skiplist Scheduler
v0.202
config: sparc-randconfig-r015-20200823 (attached as .config)
compiler: sparc64-linux-gcc (GCC) 9.3.0
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
git checkout a7fe15e65f195714f080517f5a81303badc46dd9
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=sparc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
kernel/sched/MuQSS.c:139:36: error: 'CONFIG_SHARERQ' undeclared here (not in a
function); did you mean 'CONFIG_SPARSE_IRQ'?
139 | static int rqshare __read_mostly = CONFIG_SHARERQ; /* Default RQSHARE_MC */
| ^~~~~~~~~~~~~~
| CONFIG_SPARSE_IRQ
kernel/sched/MuQSS.c:637:6: warning: no previous prototype for 'resched_task'
[-Wmissing-prototypes]
637 | void resched_task(struct task_struct *p)
| ^~~~~~~~~~~~
kernel/sched/MuQSS.c: In function 'idleprio_suitable':
kernel/sched/MuQSS.c:815:12: error: implicit declaration of function
'task_contributes_to_load' [-Werror=implicit-function-declaration]
815 | return (!(task_contributes_to_load(p)) && !(p->flags &
(PF_EXITING)) &&
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/sched/MuQSS.c: In function 'ttwu_stat':
kernel/sched/MuQSS.c:1673:13: warning: variable 'rq' set but not used
[-Wunused-but-set-variable]
1673 | struct rq *rq;
| ^~
kernel/sched/MuQSS.c: At top level:
kernel/sched/MuQSS.c:2932:15: warning: no previous prototype for 'nr_active'
[-Wmissing-prototypes]
2932 | unsigned long nr_active(void)
| ^~~~~~~~~
kernel/sched/MuQSS.c: In function '__schedule_bug':
kernel/sched/MuQSS.c:3846:16: warning: passing argument 1 of 'print_ip_sym'
makes pointer from integer without a cast [-Wint-conversion]
3846 | print_ip_sym(preempt_disable_ip);
| ^~~~~~~~~~~~~~~~~~
| |
| long unsigned int
In file included from include/linux/ftrace.h:11,
from include/linux/init_task.h:9,
from kernel/sched/MuQSS.c:44:
include/linux/kallsyms.h:169:45: note: expected 'const char *' but argument is
of type 'long unsigned int'
169 | static inline void print_ip_sym(const char *loglvl, unsigned long ip)
| ~~~~~~~~~~~~^~~~~~
kernel/sched/MuQSS.c:3846:3: error: too few arguments to function
'print_ip_sym'
3846 | print_ip_sym(preempt_disable_ip);
| ^~~~~~~~~~~~
In file included from include/linux/ftrace.h:11,
from include/linux/init_task.h:9,
from kernel/sched/MuQSS.c:44:
include/linux/kallsyms.h:169:20: note: declared here
169 | static inline void print_ip_sym(const char *loglvl, unsigned long ip)
| ^~~~~~~~~~~~
kernel/sched/MuQSS.c: At top level:
> kernel/sched/MuQSS.c:4225:35: warning: no previous prototype for
'schedule_user' [-Wmissing-prototypes]
4225 | asmlinkage __visible void
__sched schedule_user(void)
| ^~~~~~~~~~~~~
kernel/sched/MuQSS.c: In function 'sched_show_task':
kernel/sched/MuQSS.c:5807:2: error: too few arguments to function 'show_stack'
5807 | show_stack(p, NULL);
| ^~~~~~~~~~
In file included from kernel/sched/MuQSS.h:9,
from kernel/sched/MuQSS.c:71:
include/linux/sched/debug.h:33:13: note: declared here
33 | extern void show_stack(struct task_struct *task, unsigned long *sp,
| ^~~~~~~~~~
kernel/sched/MuQSS.c: At top level:
kernel/sched/MuQSS.c:6000:6: warning: no previous prototype for 'resched_cpu'
[-Wmissing-prototypes]
6000 | void resched_cpu(int cpu)
| ^~~~~~~~~~~
kernel/sched/MuQSS.c: In function '___might_sleep':
kernel/sched/MuQSS.c:7374:16: warning: passing argument 1 of 'print_ip_sym'
makes pointer from integer without a cast [-Wint-conversion]
7374 | print_ip_sym(preempt_disable_ip);
| ^~~~~~~~~~~~~~~~~~
| |
| long unsigned int
In file included from include/linux/ftrace.h:11,
from include/linux/init_task.h:9,
from kernel/sched/MuQSS.c:44:
include/linux/kallsyms.h:169:45: note: expected 'const char *' but argument is
of type 'long unsigned int'
169 | static inline void print_ip_sym(const char *loglvl, unsigned long ip)
| ~~~~~~~~~~~~^~~~~~
kernel/sched/MuQSS.c:7374:3: error: too few arguments to function
'print_ip_sym'
7374 | print_ip_sym(preempt_disable_ip);
| ^~~~~~~~~~~~
In file included from include/linux/ftrace.h:11,
from include/linux/init_task.h:9,
from kernel/sched/MuQSS.c:44:
include/linux/kallsyms.h:169:20: note: declared here
169 | static inline void print_ip_sym(const char *loglvl, unsigned long ip)
| ^~~~~~~~~~~~
kernel/sched/MuQSS.c: At top level:
kernel/sched/MuQSS.c:7464:6: warning: no previous prototype for
'init_idle_bootup_task' [-Wmissing-prototypes]
7464 | void init_idle_bootup_task(struct task_struct *idle)
| ^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
--
In file included from include/asm-generic/percpu.h:7,
from arch/sparc/include/asm/percpu_64.h:23,
from arch/sparc/include/asm/percpu.h:5,
from include/linux/percpu.h:13,
from include/linux/hrtimer.h:19,
from include/linux/sched.h:20,
from include/linux/sched/signal.h:7,
from include/linux/sched/cputime.h:5,
from kernel/sched/MuQSS.h:7,
from kernel/sched/sched.h:6,
from kernel/sched/membarrier.c:7:
kernel/sched/membarrier.c: In function 'ipi_sync_rq_state':
> kernel/sched/membarrier.c:39:17: error: 'runqueues'
undeclared (first use in this function)
39 |
this_cpu_write(runqueues.membarrier_state,
| ^~~~~~~~~
include/linux/percpu-defs.h:219:47: note: in definition of macro
'__verify_pcpu_ptr'
219 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/percpu-defs.h:508:34: note: in expansion of macro
'__pcpu_size_call'
508 | #define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
| ^~~~~~~~~~~~~~~~
kernel/sched/membarrier.c:39:2: note: in expansion of macro 'this_cpu_write'
39 | this_cpu_write(runqueues.membarrier_state,
| ^~~~~~~~~~~~~~
kernel/sched/membarrier.c:39:17: note: each undeclared identifier is reported only once
for each function it appears in
39 | this_cpu_write(runqueues.membarrier_state,
| ^~~~~~~~~
include/linux/percpu-defs.h:219:47: note: in definition of macro
'__verify_pcpu_ptr'
219 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/percpu-defs.h:508:34: note: in expansion of macro
'__pcpu_size_call'
508 | #define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
| ^~~~~~~~~~~~~~~~
kernel/sched/membarrier.c:39:2: note: in expansion of macro 'this_cpu_write'
39 | this_cpu_write(runqueues.membarrier_state,
| ^~~~~~~~~~~~~~
kernel/sched/membarrier.c: In function 'membarrier_exec_mmap':
kernel/sched/membarrier.c:63:17: error: 'runqueues' undeclared (first use in
this function)
63 | this_cpu_write(runqueues.membarrier_state, 0);
| ^~~~~~~~~
include/linux/percpu-defs.h:219:47: note: in definition of macro
'__verify_pcpu_ptr'
219 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/percpu-defs.h:508:34: note: in expansion of macro
'__pcpu_size_call'
508 | #define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
| ^~~~~~~~~~~~~~~~
kernel/sched/membarrier.c:63:2: note: in expansion of macro 'this_cpu_write'
63 | this_cpu_write(runqueues.membarrier_state, 0);
| ^~~~~~~~~~~~~~
kernel/sched/membarrier.c: In function 'sync_runqueues_membarrier_state':
kernel/sched/membarrier.c:207:18: error: 'runqueues' undeclared (first use in
this function)
207 | this_cpu_write(runqueues.membarrier_state, membarrier_state);
| ^~~~~~~~~
include/linux/percpu-defs.h:219:47: note: in definition of macro
'__verify_pcpu_ptr'
219 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/percpu-defs.h:508:34: note: in expansion of macro
'__pcpu_size_call'
508 | #define this_cpu_write(pcp, val) __pcpu_size_call(this_cpu_write_, pcp, val)
| ^~~~~~~~~~~~~~~~
kernel/sched/membarrier.c:207:3: note: in expansion of macro 'this_cpu_write'
207 | this_cpu_write(runqueues.membarrier_state, membarrier_state);
| ^~~~~~~~~~~~~~
#
https://github.com/zen-kernel/zen-kernel/commit/a7fe15e65f195714f080517f5...
git remote add zen-kernel-zen-kernel
https://github.com/zen-kernel/zen-kernel
git fetch --no-tags zen-kernel-zen-kernel 5.8/muqss
git checkout a7fe15e65f195714f080517f5a81303badc46dd9
vim +/schedule_user +4225 kernel/sched/MuQSS.c
4223
4224 #ifdef CONFIG_CONTEXT_TRACKING
4225 asmlinkage __visible void __sched schedule_user(void)
4226 {
4227 /*
4228 * If we come here after a random call to set_need_resched(),
4229 * or we have been woken up remotely but the IPI has not yet arrived,
4230 * we haven't yet exited the RCU idle mode. Do it here manually until
4231 * we find a better solution.
4232 *
4233 * NB: There are buggy callers of this function. Ideally we
4234 * should warn if prev_state != IN_USER, but that will trigger
4235 * too frequently to make sense yet.
4236 */
4237 enum ctx_state prev_state = exception_enter();
4238 schedule();
4239 exception_exit(prev_state);
4240 }
4241 #endif
4242
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org