Messages in this thread | | | Date | Wed, 14 Apr 2004 11:53:01 -0700 | From | "David S. Miller" <> | Subject | Re: 2.6.5+BK compile error: binfmt_elf on sparc64 |
| |
On Wed, 14 Apr 2004 11:33:00 +0300 (EEST) Meelis Roos <mroos@linux.ee> wrote:
> Because of -Werror, it bails out: > > In file included from arch/sparc64/kernel/binfmt_elf32.c:154: > fs/binfmt_elf.c: In function `load_elf_interp': > fs/binfmt_elf.c:369: warning: comparison is always false due to limited range of data type > fs/binfmt_elf.c: In function `load_elf_binary': > fs/binfmt_elf.c:780: warning: comparison is always false due to limited range of data type > > It's the comparision "elf_ppnt->p_memsz > TASK_SIZE". > > p_memsz is Elf32_Word, TASK_SIZE is defined as > #define TASK_SIZE ((unsigned long)-VPTE_SIZE) > > At the first glance I can't see what's wrong here.
The compiler is telling us that the condition is always false because a 32-bit value can never have the codition being tested against a 64-bit one (TASK_SIZE). I've tried everything to kill this warning, even casting both sides of the conparison to 64-bit, but gcc can still see things clearly.
So just comment out the -Werror line in arch/sparc64/kernel/Makefile which is how I'm (unfortunately) solving this for now. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |