tree:
git://git.infradead.org/users/hch/misc.git set_fs-removal
head: 8783f2261aa42693c0e738e22036228c2b26d782
commit: 1d7ac476a3ca018b4c1dc83615cae3e0693e0d71 [80/83] powerpc: remove address space
overrides using set_fs()
config: powerpc-defconfig (attached as .config)
compiler: powerpc64-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 1d7ac476a3ca018b4c1dc83615cae3e0693e0d71
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
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 >>, old ones prefixed by <<):
kernel//sched/core.c:2117:6: warning: no previous prototype for
'sched_set_stop_task' [-Wmissing-prototypes]
2117 | void sched_set_stop_task(int cpu, struct task_struct *stop)
| ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/uaccess.h:9,
from include/linux/sched/task.h:11,
from include/linux/sched/signal.h:9,
from include/linux/sched/cputime.h:5,
from kernel//sched/sched.h:11,
from kernel//sched/core.c:9:
kernel//sched/core.c: In function 'sched_attr_copy_to_user':
> arch/powerpc/include/asm/uaccess.h:20:34: warning: comparison is
always true due to limited range of data type [-Wtype-limits]
20 | (((addr) <=
(limit)) && ((size) <= (limit)))
| ^~
arch/powerpc/include/asm/uaccess.h:37:3: note: in expansion of macro
'__access_ok'
37 | __access_ok((unsigned long)(addr), (size), TASK_SIZE_MAX - 1))
| ^~~~~~~~~~~
> kernel//sched/core.c:5393:7: note: in expansion of macro
'access_ok'
5393 | if (!access_ok(uattr, usize))
| ^~~~~~~~~
--
In file included from include/linux/uaccess.h:9,
from include/linux/regset.h:16,
from arch/powerpc/kernel/ptrace/ptrace.c:18:
include/linux/regset.h: In function 'copy_regset_to_user':
> arch/powerpc/include/asm/uaccess.h:20:34: error: comparison is
always true due to limited range of data type [-Werror=type-limits]
20 | (((addr)
<= (limit)) && ((size) <= (limit)))
| ^~
arch/powerpc/include/asm/uaccess.h:37:3: note: in expansion of macro
'__access_ok'
37 | __access_ok((unsigned long)(addr), (size), TASK_SIZE_MAX - 1))
| ^~~~~~~~~~~
> include/linux/regset.h:376:7: note: in expansion of macro
'access_ok'
376 | if (!access_ok(data, size))
| ^~~~~~~~~
include/linux/regset.h: In function 'copy_regset_from_user':
> arch/powerpc/include/asm/uaccess.h:20:34: error: comparison is
always true due to limited range of data type [-Werror=type-limits]
20 | (((addr)
<= (limit)) && ((size) <= (limit)))
| ^~
arch/powerpc/include/asm/uaccess.h:37:3: note: in expansion of macro
'__access_ok'
37 | __access_ok((unsigned long)(addr), (size), TASK_SIZE_MAX - 1))
| ^~~~~~~~~~~
include/linux/regset.h:402:7: note: in expansion of macro 'access_ok'
402 | if (!access_ok(data, size))
| ^~~~~~~~~
cc1: all warnings being treated as errors
vim +20 arch/powerpc/include/asm/uaccess.h
14
15 /*
16 * This check is sufficient because there is a large enough
17 * gap between user addresses and the kernel addresses
18 */
19 #define __access_ok(addr, size, limit) \
20 (((addr) <= (limit)) && ((size) <= (limit)))
21
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org