Re: execv: Argument list too long

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 7/2/23 17:24, John David Anglin wrote:
On 2023-07-02 11:08 a.m., John David Anglin wrote:
With Linux  6.1.37+, there is a problem with argument lists:

| gcc -E -undef     -I../include -I/home/dave/gnu/glibc/objdir/csu -I/home/dave/gnu/glibc/objdir  -I../sysdeps/unix/sysv/linux/hppa -I../sysdeps/hppa/nptl  -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu  -I../sysdeps/unix/inet -I../sysdeps/unix/sysv  -I../sysdeps/unix  -I../sysdeps/posix -I../sysdeps/hppa/hppa1.1 -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32  -I../sysdeps/ieee754/dbl-64 -I../sysdeps/hppa/fpu  -I../sysdeps/hppa -I../sysdeps/ieee754 -I../sysdeps/generic  -I.. -I../libio -I. -nostdinc -isystem /usr/lib/gcc/hppa-linux-gnu/12/include -isystem /usr/include -D_LIBC_REENTRANT  -include ../include/libc-symbols.h -DTOP_NAMESPACE=glibc -x assembler-with-cpp - \
           > /home/dave/gnu/glibc/objdir/Versions.v.iT
make[2]: /bin/sh: Argument list too long
gcc: fatal error: cannot execute '/usr/lib/gcc/hppa-linux-gnu/12/cc1': execv: Argument list too long
compilation terminated.

Linux 6.1.36+ is okay.

It doesn't help to increase stack limit.
I suppose this was caused by:

commit 4a1db15878aacb89e8f24c98a2f96fad6db3f967
Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Date:   Thu Jun 29 23:04:57 2023 -0700

     parisc: fix expand_stack() conversion

     commit ea3f8272876f2958463992f6736ab690fde7fa9c upstream.

     In commit 8d7071af8907 ("mm: always expand the stack with the mmap write
     lock held") I tried to deal with the remaining odd page fault handling
     cases.  The oddest one is ia64, which has stacks that grow both up and
     down.  And because ia64 was _so_ odd, I asked people to verify the end
     result.

     But a close second oddity is parisc, which is the only one that has a
     main stack growing up (our "CONFIG_STACK_GROWSUP" config option).  But
     it looked obvious enough that I didn't worry about it.

     I should have worried a bit more.  Not because it was particularly
     complex, but because I just used the wrong variable name.

     The previous vma isn't called "prev", it's called "prev_vma". Blush.

     Fixes: 8d7071af8907 ("mm: always expand the stack with the mmap write lock held")

I think it's this one:
8d7071af8907 ("mm: always expand the stack with the mmap write lock held")

Helge




[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux