Hi Dmitry, [auto build test ERROR on linus/master] [also build test ERROR on v4.10-rc8 next-20170214] [cannot apply to tip/x86/core] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Dmitry-Safonov/Fix-compatible-mmap-return-pointer-over-4Gb/20170215-025132 config: x86_64-randconfig-x014-201707 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): arch/x86/mm/mmap.c: In function 'arch_mmap_rnd': >> arch/x86/mm/mmap.c:58:27: error: 'mmap_rnd_compat_bits' undeclared (first use in this function) # define mmap32_rnd_bits mmap_rnd_compat_bits ^ >> arch/x86/mm/mmap.c:83:35: note: in expansion of macro 'mmap32_rnd_bits' return arch_rnd(mmap_is_ia32() ? mmap32_rnd_bits : mmap64_rnd_bits); ^~~~~~~~~~~~~~~ arch/x86/mm/mmap.c:58:27: note: each undeclared identifier is reported only once for each function it appears in # define mmap32_rnd_bits mmap_rnd_compat_bits ^ >> arch/x86/mm/mmap.c:83:35: note: in expansion of macro 'mmap32_rnd_bits' return arch_rnd(mmap_is_ia32() ? mmap32_rnd_bits : mmap64_rnd_bits); ^~~~~~~~~~~~~~~ >> arch/x86/mm/mmap.c:84:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ vim +/mmap_rnd_compat_bits +58 arch/x86/mm/mmap.c 52 * Leave an at least ~128 MB hole with possible stack randomization. 53 */ 54 #define MIN_GAP (128*1024*1024UL + stack_maxrandom_size()) 55 #define MAX_GAP (TASK_SIZE/6*5) 56 57 #ifdef CONFIG_64BIT > 58 # define mmap32_rnd_bits mmap_rnd_compat_bits 59 # define mmap64_rnd_bits mmap_rnd_bits 60 #else 61 # define mmap32_rnd_bits mmap_rnd_bits 62 # define mmap64_rnd_bits mmap_rnd_bits 63 #endif 64 65 static int mmap_is_legacy(void) 66 { 67 if (current->personality & ADDR_COMPAT_LAYOUT) 68 return 1; 69 70 if (rlimit(RLIMIT_STACK) == RLIM_INFINITY) 71 return 1; 72 73 return sysctl_legacy_va_layout; 74 } 75 76 static unsigned long arch_rnd(unsigned int rndbits) 77 { 78 return (get_random_long() & ((1UL << rndbits) - 1)) << PAGE_SHIFT; 79 } 80 81 unsigned long arch_mmap_rnd(void) 82 { > 83 return arch_rnd(mmap_is_ia32() ? mmap32_rnd_bits : mmap64_rnd_bits); > 84 } 85 86 static unsigned long mmap_base(unsigned long rnd) 87 { --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip