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: Kyle Evans <kevans@freebsd.org> Signed-off-by: Warner Losh <imp@bsdimp.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
ab77bd844b
commit
e5e4426306
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user