Re: [Patch] Elf loader crash while zero-filling .bss

From: H. Peter Anvin
Date: Mon Feb 11 2008 - 15:36:18 EST


Jiri Kosina wrote:
On Mon, 11 Feb 2008, Abel Bernabeu wrote:

In such a way that set_brk(0x0, 0x100) does not alloc any space at all. There are just more ways to get no memory allocation than set_brk(elf_bss, elf_bss) (the equalness condition i've changed).
Sorry, the correct description for the patch may be:
set_brk(start, end) allocs just page aligned regions (by "colapsing"
both extremes to the END of the page in which they lay)... That means
than even if both pointers are not equal there are still some chances
that set_brk has allocated no space at all because because
ELF_PAGEALIGN(elf_bss) == ELF_PAGEALIGN(elf_brk)

Now, the question is whether it is valid for ELF binary to not have the end of .bss section (if present at all) not page-aligned.


Why wouldn't it be? It would, however, be valid to the kernel to round it up to the next boundary.

-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/