Re: [PATCH 1/3] riscv: mm: Use hint address in mmap if available

From: kernel test robot
Date: Tue Jan 30 2024 - 16:06:48 EST


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-hint-address-in-mmap-if-available/20240130-084208
base: 556e2d17cae620d549c5474b1ece053430cd50bc
patch link: https://lore.kernel.org/r/20240129-use_mmap_hint_address-v1-1-4c74da813ba1%40rivosinc.com
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@xxxxxxxxx/config)
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@xxxxxxxxx/reproduce)

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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202401310404.eNJvHoC9-lkp@xxxxxxxxx/

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

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki