On 11/10/2022 17.26, Mike Gilbert wrote:
On Tue, Oct 11, 2022 at 6:06 AM Florian Schmaus <f...@gentoo.org> wrote:Packages with a large number of EGO_SUM entries, i.e., many thousands, cause SRC_URI, and in turn A, to become quite large. Prevent issues that are caused by large environment variables, e.g., execve() errors (see bug #719203), by ensuring that A stays below a reasonable size.This code will never be reached: if the A environment variable is too large, portage will fail to execute /bin/bash, and the phase function will not be executed.
I believe the code will never be reached if A is > 128 KiB (aka MAX_ARG_STRLEN). If A is (112, 128] KiB, then the code will be reached and run into the 'die'. If A is <= 112 KiB, then the code will be reached and continue without die'ing.
That said, I could also live with your suggestion to un-deprecate EGO_SUM without any size limitation (besides limitations not within Gentoo's direct control, like MAX_ARG_STRLEN). In this case, we should probably, at one point, improve portage's error reporting, so that, for example, execve() fails, portages tries to determine the culprit. For example, portage printing out environment variables that are too large. Which appear to be nice to have irregardless of the current EGO_SUM discussion.
- Flow
OpenPGP_0x8CAC2A9678548E35.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature