PTR_ERR((void *)map_addr) == -EEXIST is a very complicated way of doing the obvious.
Signed-off-by: Alexey Dobriyan <[email protected]> --- fs/binfmt_elf.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -375,8 +375,7 @@ static unsigned long elf_map(struct file *filep, unsigned long addr, } else map_addr = vm_mmap(filep, addr, size, prot, type, off); - if ((type & MAP_FIXED_NOREPLACE) && - PTR_ERR((void *)map_addr) == -EEXIST) + if ((type & MAP_FIXED_NOREPLACE) && map_addr == -EEXIST) pr_info("%d (%s): Uhuuh, elf segment at %px requested but the memory is mapped already\n", task_pid_nr(current), current->comm, (void *)addr);

