selftests: riscv: Allow mmap test to compile on 32-bit
Macros needed for 32-bit compilations were hidden behind 64-bit riscv
ifdefs. Fix the 32-bit compilations by moving macros to allow the
memory_layout test to run on 32-bit.
Signed-off-by: Charlie Jenkins <charlie@rivosinc.com>
Fixes: 73d05262a2
("selftests: riscv: Generalize mm selftests")
Link: https://lore.kernel.org/r/20240808-mmap_tests__fixes-v1-1-b1344b642a84@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
This commit is contained in:
parent
594ffcf4ef
commit
11c2dbd7f2
@ -48,11 +48,11 @@ uint32_t random_addresses[] = {
|
||||
};
|
||||
#endif
|
||||
|
||||
// Only works on 64 bit
|
||||
#if __riscv_xlen == 64
|
||||
#define PROT (PROT_READ | PROT_WRITE)
|
||||
#define FLAGS (MAP_PRIVATE | MAP_ANONYMOUS)
|
||||
|
||||
// Only works on 64 bit
|
||||
#if __riscv_xlen == 64
|
||||
/* mmap must return a value that doesn't use more bits than the hint address. */
|
||||
static inline unsigned long get_max_value(unsigned long input)
|
||||
{
|
||||
@ -80,6 +80,8 @@ static inline unsigned long get_max_value(unsigned long input)
|
||||
})
|
||||
#endif /* __riscv_xlen == 64 */
|
||||
|
||||
#define TEST_MMAPS do { } while (0)
|
||||
|
||||
static inline int memory_layout(void)
|
||||
{
|
||||
void *value1 = mmap(NULL, sizeof(int), PROT, FLAGS, 0, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user