Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARC: fix build warning in elf.h

The cast valid since TASK_SIZE * 2 will never actually cause overflow.

| CC fs/binfmt_elf.o
| In file included from ../include/linux/elf.h:4:0,
| from ../include/linux/module.h:15,
| from ../fs/binfmt_elf.c:12:
| ../fs/binfmt_elf.c: In function load_elf_binar:
| ../arch/arc/include/asm/elf.h:57:29: warning: integer overflow in expression [-Woverflow]
| #define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3)
| ^
| ../fs/binfmt_elf.c:921:16: note: in expansion of macro ELF_ET_DYN_BASE
| load_bias = ELF_ET_DYN_BASE - vaddr;

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>

+1 -1
+1 -1
arch/arc/include/asm/elf.h
··· 54 54 * the loader. We need to make sure that it is out of the way of the program 55 55 * that it will "exec", and that there is sufficient room for the brk. 56 56 */ 57 - #define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3) 57 + #define ELF_ET_DYN_BASE (2UL * TASK_SIZE / 3) 58 58 59 59 /* 60 60 * When the program starts, a1 contains a pointer to a function to be