qemu/linux-user
Richard Henderson 60f1c8017a linux-user: Clean up arg_start/arg_end confusion
We had two sets of variables: arg_start/arg_end, and
arg_strings/env_strings.  In linuxload.c, we set the
first pair to the bounds of the argv strings, but in
elfload.c, we set the first pair to the bounds of the
argv pointers and the second pair to the bounds of
the argv strings.

Remove arg_start/arg_end, replacing them with the standard
argc/argv/envc/envp values.  Retain arg_strings/env_strings
with the meaning we were using in elfload.c.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/714
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220427025129.160184-1-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2022-05-23 08:15:19 +02:00
..
aarch64 Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
alpha Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
arm target/arm: Change CPUArchState.thumb to bool 2022-04-22 14:44:54 +01:00
cris Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
generic linux-user/syscall: Translate TARGET_RLIMIT_RTTIME 2022-02-01 08:01:44 +01:00
hexagon Clean up decorations and whitespace around header guards 2022-05-11 16:50:32 +02:00
hppa linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-02-01 08:01:38 +01:00
i386 Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
include ppc64: Avoid pt_regs struct definition 2022-03-20 23:35:27 +01:00
m68k Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
microblaze Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
mips Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
mips64 linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-02-01 08:01:38 +01:00
nios2 linux-user/nios2: Handle various SIGILL exceptions 2022-04-26 08:17:05 -07:00
openrisc Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
ppc Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
riscv Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
s390x Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
sh4 Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
sparc Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
x86_64 linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-02-01 08:01:38 +01:00
xtensa Replace TARGET_WORDS_BIGENDIAN 2022-04-06 10:50:37 +02:00
cpu_loop-common.h linux-user: Create special-errno.h 2021-12-19 20:47:33 -08:00
elfload.c linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
errnos.c.inc linux-user: Simplify host <-> target errno conversion using macros 2021-07-12 21:53:35 +02:00
exit.c linux-user: Don't include gdbstub.h in qemu.h 2021-09-13 20:35:45 +02:00
fd-trans.c linux-user: Fix inotify on aarch64 2022-01-27 16:58:33 +01:00
fd-trans.h fd-trans: Fix race condition on reallocation of the translation table. 2021-07-12 21:54:46 +02:00
flat.h linux-user/: fix some comment spelling errors 2020-09-17 20:39:22 +02:00
flatload.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
ioctls.h linux-user: implement more loop ioctls 2021-11-29 14:54:17 +01:00
linux_loop.h linux-user: implement more loop ioctls 2021-11-29 14:54:17 +01:00
linuxload.c linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
loader.h linux-user: Split loader-related prototypes into loader.h 2021-09-13 20:35:44 +02:00
main.c linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
meson.build user: move common-user includes to a subdirectory of {bsd,linux}-user/ 2022-01-12 14:08:29 +01:00
mmap.c linux-user: Expand log_page_dump inline 2022-04-20 10:51:11 -07:00
qemu.h linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
semihost.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
signal-common.h linux-user: Split out helpers for sigsuspend 2022-03-22 13:06:21 +01:00
signal.c compiler.h: replace QEMU_NORETURN with G_NORETURN 2022-04-21 17:03:51 +04:00
socket.h Supply missing header guards 2019-06-12 13:20:21 +02:00
strace.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
strace.h linux-user: Split strace prototypes into strace.h 2021-09-13 20:35:44 +02:00
strace.list linux-user: Add copy_file_range to strace.list 2021-05-18 07:09:58 +02:00
syscall_defs.h linux-user: Remove the deprecated ppc64abi32 target 2022-02-09 13:29:38 +00:00
syscall_types.h linux-user: implement more loop ioctls 2021-11-29 14:54:17 +01:00
syscall.c Replace TARGET_WORDS_BIGENDIAN 2022-04-06 10:50:37 +02:00
target_flat.h Supply missing header guards 2019-06-12 13:20:21 +02:00
thunk.c linux-user: Move thunk.c from top-level 2021-12-20 10:12:29 -08:00
trace-events linux-user: Rename user_force_sig tracepoint to match function name 2022-01-18 12:41:42 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
uaccess.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
uname.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
uname.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
user-internals.h compiler.h: replace QEMU_NORETURN with G_NORETURN 2022-04-21 17:03:51 +04:00
user-mmap.h linux-user: Split mmap prototypes into user-mmap.h 2021-09-13 20:35:45 +02:00
vm86.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00