https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #20 from John Soo ---
I think that in order to really rid gcc of the E2BIG problem on linux,
COLLECT_*_OPTIONS will have to be deprecated and removed. This is particularly
a problem when executing spec files, it seems.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #19 from John Soo ---
I verified the proposed patch sent argv through @file, but COLLECT_GCC_OPTIONS
still caused E2BIG. In the failing execve, COLLECT_GCC_OPTIONS was 134227
characters long.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #18 from John Soo ---
And actually the proposed patch is not conservative enough, because the size of
the strings in argv/env also matter.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #17 from John Soo ---
Created attachment 55910
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55910=edit
libiberty, Unix: pass argv over ARG_MAX through an @file
This does not handle environ being too large, but it is an
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #16 from John Soo ---
It is actually somewhat likely that ARG_MAX will be hit when running on linux
because it is hit when the stack can't contain enough pointers to contain argv
and environ (see exec.c in the kernel
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #15 from John Soo ---
Just for some context on what limit is hit: under man sysconf you will find a
description of ARG_MAX
(https://www.man7.org/linux/man-pages/man3/sysconf.3.html)
> ARG_MAX - _SC_ARG_MAX
> The maximum length
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #14 from John Soo ---
> Here though it seems that you are dealing with another sort of limit which is
> much larger (I have seen 128K being mentioned on the GH page).If this
> somehow corrupts the command line, it wouldn't help
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #13 from Costas Argyris ---
(In reply to John Soo from comment #12)
> I think the general problem in that issue is that ARG_MAX is not respected
> when the driver (or any subprocess) execs things on linux. I think that it
> is not
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #12 from John Soo ---
I think the general problem in that issue is that ARG_MAX is not respected when
the driver (or any subprocess) execs things on linux. I think that it is not
the same as the original issue here, though.
> I
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #11 from Costas Argyris ---
(In reply to John Soo from comment #10)
> I'm also not sure
> https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;
> h=180ebb8a24d24fc5b105f2257d6216f6dfde62df fixes the collect bug because
> collect uses
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #10 from John Soo ---
I'm also not sure
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=180ebb8a24d24fc5b105f2257d6216f6dfde62df
fixes the collect bug because collect uses collect_execute instead of the pex_*
exec functions.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #9 from John Soo ---
Would a patch for unix doing something similar to
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=180ebb8a24d24fc5b105f2257d6216f6dfde62df
be accepted? I am happy to start working on something like it but I
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #8 from John Soo ---
> Also, it is typically Windows that suffers from this limitation of command
> line length.
Ok that may be true but I am effected by this on linux as are quite a few
others in this issue
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #7 from Costas Argyris ---
(In reply to John Soo from comment #6)
> This is not a Windows-only bug, so I don't think it is fixed.
Althought it is not mentioned explicitly in the title of this PR, the original
reporter did describe
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
John Soo changed:
What|Removed |Added
CC||john.soo+gcc-bugzilla@arist
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
Costas Argyris changed:
What|Removed |Added
CC||costas.argyris at gmail dot com
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
Jonathan Wakely changed:
What|Removed |Added
Last reconfirmed|2018-07-02 00:00:00 |2021-5-19
--- Comment #4 from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
--- Comment #3 from Tamar Christina ---
Hmm according to 45749 with `HAVE_GNU_LD` on it should work for the ld call. I
will give that a try.
But the environment variable one is still an issue as far as I can tell.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
Tamar Christina changed:
What|Removed |Added
Status|RESOLVED|NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86030
Tamar Christina changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
20 matches
Mail list logo