[PATCH] execve: argument list space enlargement

From: alexs
Date: Wed Jan 03 2024 - 08:05:50 EST


From: Alex Shi <alexsshi@xxxxxxxxxxx>

Wechat using too long gcc parameters, then get a strace complain:
execve(...) = -1 E2BIG (Argument list too long)
Have to increase the parameter space for this, stack has enough
space for this enlargement.

Signed-off-by: Alex Shi <alexsshi@xxxxxxxxxxx>
Cc: Alex Shi <alexsshi@xxxxxxxxxxx>
To: linux-kernel@xxxxxxxxxxxxxxx
To: linux-mm@xxxxxxxxx
To: Kees Cook <keescook@xxxxxxxxxxxx>
To: Eric Biederman <ebiederm@xxxxxxxxxxxx>
---
include/uapi/linux/binfmts.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/uapi/linux/binfmts.h b/include/uapi/linux/binfmts.h
index c6f9450efc12..717f6cafe8dd 100644
--- a/include/uapi/linux/binfmts.h
+++ b/include/uapi/linux/binfmts.h
@@ -12,7 +12,7 @@ struct pt_regs;
* prevent the kernel from being unduly impacted by misaddressed pointers.
* MAX_ARG_STRINGS is chosen to fit in a signed 32-bit integer.
*/
-#define MAX_ARG_STRLEN (PAGE_SIZE * 32)
+#define MAX_ARG_STRLEN (PAGE_SIZE * 128)
#define MAX_ARG_STRINGS 0x7FFFFFFF

/* sizeof(linux_binprm->buf) */
--
2.43.0