Assert that the amount of stack space used for auxvec, envp & argv exactly matches the amount allocated. This catches if DLINFO_ITEMS isn't updated when another NEW_AUX_ENT is added.
Signed-off-by: James Hogan <james.ho...@imgtec.com> Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Peter Maydell <peter.mayd...@linaro.org> --- This should be applied after "linux-user: Correct DLINFO_ITEMS" or the assert will fail. Tested with linux-user-test-0.3 before and after fixing DLINFO_ITEMS. --- linux-user/elfload.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/linux-user/elfload.c b/linux-user/elfload.c index d2380b6..ecf6f35 100644 --- a/linux-user/elfload.c +++ b/linux-user/elfload.c @@ -1455,6 +1455,8 @@ static abi_ulong create_elf_tables(abi_ulong p, int argc, int envc, info->auxv_len = sp_auxv - sp; sp = loader_build_argptr(envc, argc, sp, p, 0); + /* Check the right amount of stack was allocated for auxvec, envp & argv. */ + assert(sp_auxv - sp == size); return sp; } -- 1.8.3.2