tree:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
linux-4.19.y
head: 54354bc5e2a599518c25769b56d76eabe94e67c9
commit: 31ebc2fe02df202566d0e36c1106b4902d6e2f8c [2158/3140] powerpc/64s: flush L1D after
user accesses
config: powerpc64-randconfig-r032-20210209 (attached as .config)
compiler: powerpc64le-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
#
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gi...
git remote add linux-stable-rc
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc linux-4.19.y
git checkout 31ebc2fe02df202566d0e36c1106b4902d6e2f8c
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc64
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 >>):
In file included from arch/powerpc/include/asm/book3s/64/mmu-hash.h:24,
from arch/powerpc/include/asm/book3s/64/mmu.h:30,
from arch/powerpc/include/asm/mmu.h:313,
from arch/powerpc/include/asm/lppaca.h:36,
from arch/powerpc/include/asm/paca.h:21,
from arch/powerpc/include/asm/hw_irq.h:64,
from arch/powerpc/include/asm/irqflags.h:12,
from include/linux/irqflags.h:16,
from include/linux/spinlock.h:54,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/stat.h:19,
from include/linux/compat.h:12,
from arch/powerpc/kernel/asm-offsets.c:16:
arch/powerpc/include/asm/book3s/64/pgtable.h:1292:15: warning: type qualifiers ignored
on function return type [-Wignored-qualifiers]
1292 | static inline const int pud_pfn(pud_t pud)
| ^~~~~
In file included from arch/powerpc/include/asm/kup.h:10,
from arch/powerpc/include/asm/uaccess.h:9,
from include/linux/uaccess.h:14,
from include/linux/compat.h:19,
from arch/powerpc/kernel/asm-offsets.c:16:
> arch/powerpc/include/asm/book3s/64/kup-radix.h:5:1: warning: data
definition has no type or storage class
5 |
DECLARE_STATIC_KEY_FALSE(uaccess_flush_key);
| ^~~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/include/asm/book3s/64/kup-radix.h:5:1: error: type
defaults to 'int' in declaration of 'DECLARE_STATIC_KEY_FALSE'
[-Werror=implicit-int]
> arch/powerpc/include/asm/book3s/64/kup-radix.h:5:1: warning: parameter names (without
types) in function declaration
arch/powerpc/include/asm/book3s/64/kup-radix.h: In
function 'prevent_user_access':
> arch/powerpc/include/asm/book3s/64/kup-radix.h:18:6: error:
implicit declaration of function 'static_branch_unlikely'
[-Werror=implicit-function-declaration]
18 | if
(static_branch_unlikely(&uaccess_flush_key))
| ^~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/include/asm/book3s/64/kup-radix.h:18:30: error:
'uaccess_flush_key' undeclared (first use in this function)
18 | if
(static_branch_unlikely(&uaccess_flush_key))
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/book3s/64/kup-radix.h:18:30: note: each undeclared identifier
is reported only once for each function it appears in
cc1: some warnings being treated as errors
--
In file included from arch/powerpc/include/asm/book3s/64/mmu-hash.h:24,
from arch/powerpc/include/asm/book3s/64/mmu.h:30,
from arch/powerpc/include/asm/mmu.h:313,
from arch/powerpc/include/asm/lppaca.h:36,
from arch/powerpc/include/asm/paca.h:21,
from arch/powerpc/include/asm/hw_irq.h:64,
from arch/powerpc/include/asm/irqflags.h:12,
from include/linux/irqflags.h:16,
from include/linux/spinlock.h:54,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/stat.h:19,
from include/linux/compat.h:12,
from arch/powerpc/kernel/asm-offsets.c:16:
arch/powerpc/include/asm/book3s/64/pgtable.h:1292:15: warning: type qualifiers ignored
on function return type [-Wignored-qualifiers]
1292 | static inline const int pud_pfn(pud_t pud)
| ^~~~~
In file included from arch/powerpc/include/asm/kup.h:10,
from arch/powerpc/include/asm/uaccess.h:9,
from include/linux/uaccess.h:14,
from include/linux/compat.h:19,
from arch/powerpc/kernel/asm-offsets.c:16:
> arch/powerpc/include/asm/book3s/64/kup-radix.h:5:1: warning: data
definition has no type or storage class
5 |
DECLARE_STATIC_KEY_FALSE(uaccess_flush_key);
| ^~~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/include/asm/book3s/64/kup-radix.h:5:1: error: type
defaults to 'int' in declaration of 'DECLARE_STATIC_KEY_FALSE'
[-Werror=implicit-int]
> arch/powerpc/include/asm/book3s/64/kup-radix.h:5:1: warning: parameter names (without
types) in function declaration
arch/powerpc/include/asm/book3s/64/kup-radix.h: In
function 'prevent_user_access':
> arch/powerpc/include/asm/book3s/64/kup-radix.h:18:6: error:
implicit declaration of function 'static_branch_unlikely'
[-Werror=implicit-function-declaration]
18 | if
(static_branch_unlikely(&uaccess_flush_key))
| ^~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/include/asm/book3s/64/kup-radix.h:18:30: error:
'uaccess_flush_key' undeclared (first use in this function)
18 | if
(static_branch_unlikely(&uaccess_flush_key))
| ^~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/book3s/64/kup-radix.h:18:30: note: each undeclared identifier
is reported only once for each function it appears in
cc1: some warnings being treated as errors
make[2]: *** [./Kbuild:56: arch/powerpc/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1123: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:146: sub-make] Error 2
make: Target 'prepare' not remade because of errors.
vim +5 arch/powerpc/include/asm/book3s/64/kup-radix.h
4
5 DECLARE_STATIC_KEY_FALSE(uaccess_flush_key);
6
7 /* Prototype for function defined in exceptions-64s.S */
8 void do_uaccess_flush(void);
9
10 static __always_inline void allow_user_access(void __user *to, const void __user
*from,
11 unsigned long size)
12 {
13 }
14
15 static inline void prevent_user_access(void __user *to, const void __user *from,
16 unsigned long size)
17 {
18 if (static_branch_unlikely(&uaccess_flush_key))
19 do_uaccess_flush();
20 }
21
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org