Skip to content
Snippets Groups Projects
Commit e5e44263 authored by Warner Losh's avatar Warner Losh Committed by Warner Losh
Browse files

bsd-user: define max args in terms of pages


For 32-bit platforms, pass in up to 256k of args. For 64-bit, bump that
to 512k.

Signed-off-by: default avatarKyle Evans <kevans@freebsd.org>
Signed-off-by: default avatarWarner Losh <imp@bsdimp.com>
Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
parent ab77bd84
No related branches found
No related tags found
No related merge requests found
......@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "qemu/units.h"
#include "exec/cpu_ldst.h"
#include "exec/exec-all.h"
......@@ -101,11 +102,17 @@ extern const char *qemu_uname_release;
extern unsigned long mmap_min_addr;
/*
* MAX_ARG_PAGES defines the number of pages allocated for arguments
* and envelope for the new program. 32 should suffice, this gives
* a maximum env+arg of 128kB w/4KB pages!
* TARGET_ARG_MAX defines the number of bytes allocated for arguments
* and envelope for the new program. 256k should suffice for a reasonable
* maxiumum env+arg in 32-bit environments, bump it up to 512k for !ILP32
* platforms.
*/
#define MAX_ARG_PAGES 32
#if TARGET_ABI_BITS > 32
#define TARGET_ARG_MAX (512 * KiB)
#else
#define TARGET_ARG_MAX (256 * KiB)
#endif
#define MAX_ARG_PAGES (TARGET_ARG_MAX / TARGET_PAGE_SIZE)
/*
* This structure is used to hold the arguments that are
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment