Hi Charlie,
kernel test robot noticed the following build errors:
[auto build test ERROR on 556e2d17cae620d549c5474b1ece053430cd50bc]
url: https://github.com/intel-lab-lkp/linux/commits/Charlie-Jenkins/riscv-mm-Use-... base: 556e2d17cae620d549c5474b1ece053430cd50bc patch link: https://lore.kernel.org/r/20240129-use_mmap_hint_address-v1-1-4c74da813ba1%4... patch subject: [PATCH 1/3] riscv: mm: Use hint address in mmap if available config: riscv-defconfig (https://download.01.org/0day-ci/archive/20240131/202401310404.eNJvHoC9-lkp@i...) compiler: riscv64-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240131/202401310404.eNJvHoC9-lkp@i...)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot lkp@intel.com | Closes: https://lore.kernel.org/oe-kbuild-all/202401310404.eNJvHoC9-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from arch/riscv/include/asm/irqflags.h:10, from include/linux/irqflags.h:18, from arch/riscv/include/asm/bitops.h:14, from include/linux/bitops.h:68, from include/linux/kernel.h:23, from mm/mmap.c:12: mm/mmap.c: In function 'generic_get_unmapped_area':
arch/riscv/include/asm/processor.h:28:9: error: expected expression before 'else'
28 | else \ | ^~~~ mm/mmap.c:1703:40: note: in expansion of macro 'arch_get_mmap_end' 1703 | const unsigned long mmap_end = arch_get_mmap_end(addr, len, flags); | ^~~~~~~~~~~~~~~~~ mm/mmap.c: In function 'generic_get_unmapped_area_topdown':
arch/riscv/include/asm/processor.h:28:9: error: expected expression before 'else'
28 | else \ | ^~~~ mm/mmap.c:1751:40: note: in expansion of macro 'arch_get_mmap_end' 1751 | const unsigned long mmap_end = arch_get_mmap_end(addr, len, flags); | ^~~~~~~~~~~~~~~~~ -- In file included from arch/riscv/include/asm/irqflags.h:10, from include/linux/irqflags.h:18, from arch/riscv/include/asm/bitops.h:14, from include/linux/bitops.h:68, from include/linux/thread_info.h:27, from fs/hugetlbfs/inode.c:12: fs/hugetlbfs/inode.c: In function 'hugetlb_get_unmapped_area_bottomup':
arch/riscv/include/asm/processor.h:28:9: error: expected expression before 'else'
28 | else \ | ^~~~ fs/hugetlbfs/inode.c:173:27: note: in expansion of macro 'arch_get_mmap_end' 173 | info.high_limit = arch_get_mmap_end(addr, len, flags); | ^~~~~~~~~~~~~~~~~ fs/hugetlbfs/inode.c: In function 'hugetlb_get_unmapped_area_topdown':
arch/riscv/include/asm/processor.h:28:9: error: expected expression before 'else'
28 | else \ | ^~~~ fs/hugetlbfs/inode.c:204:35: note: in expansion of macro 'arch_get_mmap_end' 204 | info.high_limit = arch_get_mmap_end(addr, len, flags); | ^~~~~~~~~~~~~~~~~ fs/hugetlbfs/inode.c: In function 'generic_hugetlb_get_unmapped_area':
arch/riscv/include/asm/processor.h:28:9: error: expected expression before 'else'
28 | else \ | ^~~~ fs/hugetlbfs/inode.c:219:40: note: in expansion of macro 'arch_get_mmap_end' 219 | const unsigned long mmap_end = arch_get_mmap_end(addr, len, flags); | ^~~~~~~~~~~~~~~~~
vim +/else +28 arch/riscv/include/asm/processor.h
add2cc6b6515f7 Charlie Jenkins 2023-08-09 20 add2cc6b6515f7 Charlie Jenkins 2023-08-09 21 #define arch_get_mmap_end(addr, len, flags) \ add2cc6b6515f7 Charlie Jenkins 2023-08-09 22 ({ \ add2cc6b6515f7 Charlie Jenkins 2023-08-09 23 unsigned long mmap_end; \ add2cc6b6515f7 Charlie Jenkins 2023-08-09 24 typeof(addr) _addr = (addr); \ c5712238cfe3f5 Charlie Jenkins 2024-01-29 25 if ((_addr) == 0 || \ c5712238cfe3f5 Charlie Jenkins 2024-01-29 26 (IS_ENABLED(CONFIG_COMPAT) && is_compat_task()) || \ c5712238cfe3f5 Charlie Jenkins 2024-01-29 27 ((_addr + len) > BIT(VA_BITS - 1))) \ add2cc6b6515f7 Charlie Jenkins 2023-08-09 @28 else \ c5712238cfe3f5 Charlie Jenkins 2024-01-29 29 mmap_end = (_addr + len); \ add2cc6b6515f7 Charlie Jenkins 2023-08-09 30 mmap_end; \ add2cc6b6515f7 Charlie Jenkins 2023-08-09 31 }) add2cc6b6515f7 Charlie Jenkins 2023-08-09 32