tree:
https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git x86/kentry
head: b0d7a5e5a9b11a6ddb50b90e31877e3cb1f93362
commit: 5dcab84f1c3db061936e3d79f78222f9e89a33e2 [1/10] kentry: Rename irqentry to kentry
config: x86_64-randconfig-a015-20210321 (attached as .config)
compiler: clang version 13.0.0 (
https://github.com/llvm/llvm-project
14696baaf4c43fe53f738bc292bbe169eed93d5d)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
#
https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git/commit/?id...
git remote add luto
https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git
git fetch --no-tags luto x86/kentry
git checkout 5dcab84f1c3db061936e3d79f78222f9e89a33e2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/sched/core.c:2831:6: warning: no previous prototype for function
'sched_set_stop_task' [-Wmissing-prototypes]
void sched_set_stop_task(int cpu, struct task_struct *stop)
^
kernel/sched/core.c:2831:1: note: declare 'static' if the function is not
intended to be used outside of this translation unit
void sched_set_stop_task(int cpu, struct task_struct *stop)
^
static
> kernel/sched/core.c:5394:49: error: use of undeclared identifier
'irqentry_exit_cond_resched'; did you mean 'kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched,
irqentry_exit_cond_resched);
^~~~~~~~~~~~~~~~~~~~~~~~~~
kentry_exit_cond_resched
include/linux/static_call.h:116:30: note: expanded from macro
'static_call_update'
BUILD_BUG_ON(!__same_type(*(func), STATIC_CALL_TRAMP(name))); \
^
include/linux/compiler_types.h:256:63: note: expanded from macro '__same_type'
#define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
^
include/linux/build_bug.h:50:19: note: expanded from macro 'BUILD_BUG_ON'
BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler_types.h:320:22: note: expanded from macro
'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
include/linux/compiler_types.h:308:23: note: expanded from macro
'_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:300:9: note: expanded from macro
'__compiletime_assert'
if (!(condition)) \
^
include/linux/entry-common.h:457:6: note: 'kentry_exit_cond_resched' declared
here
void kentry_exit_cond_resched(void);
^
> kernel/sched/core.c:5394:2: error: use of undeclared identifier
'__SCT__irqentry_exit_cond_resched'; did you mean
'__SCT__kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched, irqentry_exit_cond_resched);
^
include/linux/static_call.h:116:37: note: expanded from macro
'static_call_update'
BUILD_BUG_ON(!__same_type(*(func), STATIC_CALL_TRAMP(name))); \
^
include/linux/static_call_types.h:18:34: note: expanded from macro
'STATIC_CALL_TRAMP'
#define STATIC_CALL_TRAMP(name) __PASTE(STATIC_CALL_TRAMP_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:153:1: note: expanded from here
__SCT__irqentry_exit_cond_resched
^
include/linux/entry-common.h:459:1: note: '__SCT__kentry_exit_cond_resched'
declared here
DECLARE_STATIC_CALL(kentry_exit_cond_resched, kentry_exit_cond_resched);
^
include/linux/static_call_types.h:39:22: note: expanded from macro
'DECLARE_STATIC_CALL'
extern typeof(func) STATIC_CALL_TRAMP(name);
^
include/linux/static_call_types.h:18:34: note: expanded from macro
'STATIC_CALL_TRAMP'
#define STATIC_CALL_TRAMP(name) __PASTE(STATIC_CALL_TRAMP_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:124:1: note: expanded from here
__SCT__kentry_exit_cond_resched
^
> kernel/sched/core.c:5394:2: error: use of undeclared identifier
'__SCK__irqentry_exit_cond_resched'; did you mean
'__SCK__kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched, irqentry_exit_cond_resched);
^
include/linux/static_call.h:117:24: note: expanded from macro
'static_call_update'
__static_call_update(&STATIC_CALL_KEY(name), \
^
include/linux/static_call_types.h:12:32: note: expanded from macro
'STATIC_CALL_KEY'
#define STATIC_CALL_KEY(name) __PASTE(STATIC_CALL_KEY_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:158:1: note: expanded from here
__SCK__irqentry_exit_cond_resched
^
include/linux/entry-common.h:459:1: note: '__SCK__kentry_exit_cond_resched'
declared here
DECLARE_STATIC_CALL(kentry_exit_cond_resched, kentry_exit_cond_resched);
^
include/linux/static_call_types.h:38:32: note: expanded from macro
'DECLARE_STATIC_CALL'
extern struct static_call_key STATIC_CALL_KEY(name); \
^
include/linux/static_call_types.h:12:32: note: expanded from macro
'STATIC_CALL_KEY'
#define STATIC_CALL_KEY(name) __PASTE(STATIC_CALL_KEY_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:123:1: note: expanded from here
__SCK__kentry_exit_cond_resched
^
> kernel/sched/core.c:5394:2: error: use of undeclared identifier
'__SCT__irqentry_exit_cond_resched'; did you mean
'__SCT__kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched, irqentry_exit_cond_resched);
^
include/linux/static_call.h:118:9: note: expanded from macro
'static_call_update'
STATIC_CALL_TRAMP_ADDR(name), func); \
^
include/linux/static_call.h:108:39: note: expanded from macro
'STATIC_CALL_TRAMP_ADDR'
#define STATIC_CALL_TRAMP_ADDR(name) &STATIC_CALL_TRAMP(name)
^
include/linux/static_call_types.h:18:34: note: expanded from macro
'STATIC_CALL_TRAMP'
#define STATIC_CALL_TRAMP(name) __PASTE(STATIC_CALL_TRAMP_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:159:1: note: expanded from here
__SCT__irqentry_exit_cond_resched
^
include/linux/entry-common.h:459:1: note: '__SCT__kentry_exit_cond_resched'
declared here
DECLARE_STATIC_CALL(kentry_exit_cond_resched, kentry_exit_cond_resched);
^
include/linux/static_call_types.h:39:22: note: expanded from macro
'DECLARE_STATIC_CALL'
extern typeof(func) STATIC_CALL_TRAMP(name);
^
include/linux/static_call_types.h:18:34: note: expanded from macro
'STATIC_CALL_TRAMP'
#define STATIC_CALL_TRAMP(name) __PASTE(STATIC_CALL_TRAMP_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:124:1: note: expanded from here
__SCT__kentry_exit_cond_resched
^
> kernel/sched/core.c:5394:49: error: use of undeclared identifier
'irqentry_exit_cond_resched'; did you mean 'kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched,
irqentry_exit_cond_resched);
^~~~~~~~~~~~~~~~~~~~~~~~~~
kentry_exit_cond_resched
include/linux/static_call.h:118:39: note: expanded from macro
'static_call_update'
STATIC_CALL_TRAMP_ADDR(name), func); \
^
include/linux/entry-common.h:457:6: note: 'kentry_exit_cond_resched' declared
here
void kentry_exit_cond_resched(void);
^
kernel/sched/core.c:5402:59: error: use of undeclared identifier
'irqentry_exit_cond_resched'; did you mean 'kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched,
(typeof(&irqentry_exit_cond_resched)) NULL);
^~~~~~~~~~~~~~~~~~~~~~~~~~
kentry_exit_cond_resched
include/linux/static_call.h:116:30: note: expanded from macro
'static_call_update'
BUILD_BUG_ON(!__same_type(*(func), STATIC_CALL_TRAMP(name))); \
^
include/linux/compiler_types.h:256:63: note: expanded from macro '__same_type'
#define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
^
include/linux/build_bug.h:50:19: note: expanded from macro 'BUILD_BUG_ON'
BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler_types.h:320:22: note: expanded from macro
'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
include/linux/compiler_types.h:308:23: note: expanded from macro
'_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^
include/linux/compiler_types.h:300:9: note: expanded from macro
'__compiletime_assert'
if (!(condition)) \
^
include/linux/entry-common.h:457:6: note: 'kentry_exit_cond_resched' declared
here
void kentry_exit_cond_resched(void);
^
kernel/sched/core.c:5402:3: error: use of undeclared identifier
'__SCT__irqentry_exit_cond_resched'; did you mean
'__SCT__kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched,
(typeof(&irqentry_exit_cond_resched)) NULL);
^
include/linux/static_call.h:116:37: note: expanded from macro
'static_call_update'
BUILD_BUG_ON(!__same_type(*(func), STATIC_CALL_TRAMP(name))); \
^
include/linux/static_call_types.h:18:34: note: expanded from macro
'STATIC_CALL_TRAMP'
#define STATIC_CALL_TRAMP(name) __PASTE(STATIC_CALL_TRAMP_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:30:1: note: expanded from here
__SCT__irqentry_exit_cond_resched
^
include/linux/entry-common.h:459:1: note: '__SCT__kentry_exit_cond_resched'
declared here
DECLARE_STATIC_CALL(kentry_exit_cond_resched, kentry_exit_cond_resched);
^
include/linux/static_call_types.h:39:22: note: expanded from macro
'DECLARE_STATIC_CALL'
extern typeof(func) STATIC_CALL_TRAMP(name);
^
include/linux/static_call_types.h:18:34: note: expanded from macro
'STATIC_CALL_TRAMP'
#define STATIC_CALL_TRAMP(name) __PASTE(STATIC_CALL_TRAMP_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:124:1: note: expanded from here
__SCT__kentry_exit_cond_resched
^
kernel/sched/core.c:5402:59: error: use of undeclared identifier
'irqentry_exit_cond_resched'; did you mean 'kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched,
(typeof(&irqentry_exit_cond_resched)) NULL);
^~~~~~~~~~~~~~~~~~~~~~~~~~
kentry_exit_cond_resched
include/linux/static_call.h:118:39: note: expanded from macro
'static_call_update'
STATIC_CALL_TRAMP_ADDR(name), func); \
^
include/linux/entry-common.h:457:6: note: 'kentry_exit_cond_resched' declared
here
void kentry_exit_cond_resched(void);
^
kernel/sched/core.c:5402:3: error: use of undeclared identifier
'__SCK__irqentry_exit_cond_resched'; did you mean
'__SCK__kentry_exit_cond_resched'?
static_call_update(irqentry_exit_cond_resched,
(typeof(&irqentry_exit_cond_resched)) NULL);
^
include/linux/static_call.h:117:24: note: expanded from macro
'static_call_update'
__static_call_update(&STATIC_CALL_KEY(name), \
^
include/linux/static_call_types.h:12:32: note: expanded from macro
'STATIC_CALL_KEY'
#define STATIC_CALL_KEY(name) __PASTE(STATIC_CALL_KEY_PREFIX, name)
^
include/linux/compiler_types.h:60:22: note: expanded from macro '__PASTE'
#define __PASTE(a,b) ___PASTE(a,b)
^
include/linux/compiler_types.h:59:23: note: expanded from macro '___PASTE'
#define ___PASTE(a,b) a##b
^
<scratch space>:35:1: note: expanded from here
__SCK__irqentry_exit_cond_resched
^
include/linux/entry-common.h:459:1: note: '__SCK__kentry_exit_cond_resched'
declared here
vim +5394 kernel/sched/core.c
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5383
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5384 static void
sched_dynamic_update(int mode)
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5385) {
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5386 /*
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5387 * Avoid {NONE,VOLUNTARY} ->
FULL transitions from ever ending up in
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5388 * the ZERO state, which is
invalid.
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5389 */
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5390 static_call_update(cond_resched,
__cond_resched);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5391 static_call_update(might_resched,
__cond_resched);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5392
static_call_update(preempt_schedule, __preempt_schedule_func);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5393
static_call_update(preempt_schedule_notrace, __preempt_schedule_notrace_func);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 @5394
static_call_update(irqentry_exit_cond_resched, irqentry_exit_cond_resched);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5395
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5396 switch (mode) {
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5397 case preempt_dynamic_none:
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5398) static_call_update(cond_resched,
__cond_resched);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5399)
static_call_update(might_resched, (typeof(&__cond_resched)) __static_call_return0);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5400)
static_call_update(preempt_schedule, (typeof(&preempt_schedule)) NULL);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5401)
static_call_update(preempt_schedule_notrace, (typeof(&preempt_schedule_notrace))
NULL);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5402)
static_call_update(irqentry_exit_cond_resched, (typeof(&irqentry_exit_cond_resched))
NULL);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5403 pr_info("Dynamic Preempt:
none\n");
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5404 break;
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5405
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5406 case preempt_dynamic_voluntary:
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5407) static_call_update(cond_resched,
__cond_resched);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5408)
static_call_update(might_resched, __cond_resched);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5409)
static_call_update(preempt_schedule, (typeof(&preempt_schedule)) NULL);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5410)
static_call_update(preempt_schedule_notrace, (typeof(&preempt_schedule_notrace))
NULL);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5411)
static_call_update(irqentry_exit_cond_resched, (typeof(&irqentry_exit_cond_resched))
NULL);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5412 pr_info("Dynamic Preempt:
voluntary\n");
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5413 break;
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5414
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5415 case preempt_dynamic_full:
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5416) static_call_update(cond_resched,
(typeof(&__cond_resched)) __static_call_return0);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5417)
static_call_update(might_resched, (typeof(&__cond_resched)) __static_call_return0);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5418)
static_call_update(preempt_schedule, __preempt_schedule_func);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5419)
static_call_update(preempt_schedule_notrace, __preempt_schedule_notrace_func);
826bfeb37bb430 Peter Zijlstra (Intel 2021-01-18 5420)
static_call_update(irqentry_exit_cond_resched, irqentry_exit_cond_resched);
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5421 pr_info("Dynamic Preempt:
full\n");
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5422 break;
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5423 }
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5424
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5425 preempt_dynamic_mode = mode;
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5426 }
e59e10f8ef63d4 Peter Zijlstra 2021-01-22 5427
:::::: The code at line 5394 was first introduced by commit
:::::: e59e10f8ef63d42fbb99776a5a112841e798b3b5 sched: Add /debug/sched_preempt
:::::: TO: Peter Zijlstra <peterz(a)infradead.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org