[tip:x86/mm 1/1] arch/x86/include/asm/compat.h:310:8: note: in expansion of macro 'task_pt_regs'

From: kbuild test robot
Date: Tue Mar 14 2017 - 11:29:05 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/mm
head: 7d5c038a03acfbedeb3ffef9da1814a47191f6f1
commit: 7d5c038a03acfbedeb3ffef9da1814a47191f6f1 [1/1] x86/hugetlb: Adjust to the new native/compat mmap bases
config: i386-randconfig-x002-201711 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout 7d5c038a03acfbedeb3ffef9da1814a47191f6f1
# save the attached .config to linux build tree
make ARCH=i386

All error/warnings (new ones prefixed by >>):

In file included from arch/x86/include/asm/cpufeature.h:4:0,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:80,
from include/linux/spinlock.h:50,
from include/linux/mmzone.h:7,
from include/linux/gfp.h:5,
from include/linux/mm.h:9,
from arch/x86/mm/mmap.c:28:
arch/x86/include/asm/compat.h: In function 'arch_compat_alloc_user_space':
>> arch/x86/include/asm/processor.h:825:39: error: implicit declaration of function 'task_stack_page' [-Werror=implicit-function-declaration]
unsigned long __ptr = (unsigned long)task_stack_page(task); \
^
>> arch/x86/include/asm/compat.h:310:8: note: in expansion of macro 'task_pt_regs'
sp = task_pt_regs(current)->sp;
^~~~~~~~~~~~
cc1: some warnings being treated as errors

vim +/task_pt_regs +310 arch/x86/include/asm/compat.h

^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 294
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 295 static inline void __user *compat_ptr(compat_uptr_t uptr)
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 296 {
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 297 return (void __user *)(unsigned long)uptr;
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 298 }
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 299
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 300 static inline compat_uptr_t ptr_to_compat(void __user *uptr)
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 301 {
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 302 return (u32)(unsigned long)uptr;
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 303 }
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 304
c41d68a5 arch/x86/include/asm/compat.h H. Peter Anvin 2010-09-07 305 static inline void __user *arch_compat_alloc_user_space(long len)
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 306 {
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 307 compat_uptr_t sp;
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 308
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 309 if (test_thread_flag(TIF_IA32)) {
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 @310 sp = task_pt_regs(current)->sp;
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 311 } else {
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 312 /* -128 for the x32 ABI redzone */
263042e4 arch/x86/include/asm/compat.h Denys Vlasenko 2015-03-09 313 sp = task_pt_regs(current)->sp - 128;
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 314 }
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 315
d1a797f3 arch/x86/include/asm/compat.h H. Peter Anvin 2012-02-19 316 return (void __user *)round_down(sp - len, 16);
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 317 }
^1da177e include/asm-x86_64/compat.h Linus Torvalds 2005-04-16 318

:::::: The code at line 310 was first introduced by commit
:::::: d1a797f388d6d30fa502915d1b9937ed758b7137 x32: Handle process creation

:::::: TO: H. Peter Anvin <hpa@xxxxxxxxx>
:::::: CC: H. Peter Anvin <hpa@xxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip