Re: sched,time: Allow better constprop/DCE for schedule_timeout()

From: kbuild test robot
Date: Mon Aug 26 2019 - 20:06:36 EST

Hi Peter,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[cannot apply to v5.3-rc6 next-20190826]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

config: um-x86_64_defconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-10) 7.4.0
# save the attached .config to linux build tree
make ARCH=um SUBARCH=x86_64

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from arch/x86/um/shared/sysdep/kernel-offsets.h:3:0,
from arch/um/kernel/asm-offsets.c:1:
include/linux/sched.h: In function 'schedule_timeout':
>> include/linux/sched.h:222:3: error: implicit declaration of function 'schedule'; did you mean 'schedule_work'? [-Werror=implicit-function-declaration]
include/linux/sched.h: At top level:
include/linux/sched.h:233:17: warning: conflicting types for 'schedule'
asmlinkage void schedule(void);
include/linux/sched.h:222:3: note: previous implicit declaration of 'schedule' was here
cc1: some warnings being treated as errors
make[2]: *** [arch/um/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [sub-make] Error 2
8 real 6 user 4 sys 130.06% cpu make prepare

vim +222 include/linux/sched.h

219 static inline long schedule_timeout(long timeout)
220 {
221 if (__builtin_constant_p(timeout) && timeout == MAX_SCHEDULE_TIMEOUT) {
> 222 schedule();
223 return timeout;
224 }
226 return __schedule_timeout(timeout);
227 }

0-DAY kernel test infrastructure Open Source Technology Center Intel Corporation

Attachment: .config.gz
Description: application/gzip