svn commit: r355828 - head/sys/sys
Cy Schubert
Cy.Schubert at cschubert.com
Tue Dec 17 04:42:38 UTC 2019
In message <201912162355.xBGNtUq6078840 at repo.freebsd.org>, "Pedro F.
Giffuni" w
rites:
> Author: pfg
> Date: Mon Dec 16 23:55:30 2019
> New Revision: 355828
> URL: https://svnweb.freebsd.org/changeset/base/355828
>
> Log:
> Double the size of ARG_MAX on LP64 platforms.
>
> As modern software keeps growing in size, we get requests to update the
> value of ARG_MAX in order to link the resulting object files. Other OSs
> have much higher values but Increasiong ARG_MAX has a multiplied effect on
> KVA, so just bumping this value is dangerous in some archs like ARM32 that
> can exhaust KVA rather easily.
>
> While it would be better to have a unique value for all archs, other OSs
> (Illumos in partidular) can have different ARG_MAX limits depending on the
> platform, For now we want to be really conservative so we are avoidng
> the change on ILP32 and in the alternative case we only double it since tha
> t
> seems to work well enough for recent Code Aster.
>
> I was planning to bump the _FreeBSD_version but it was bumped recently
> (r355798) so we can reuse the 1300068 value for this change.
This doesn't seem right. Each bump should be for a distinct change and
documented as such.
Also, it's not like we're saving any build time anyway. sys/syslimits.h
will cause a substantial portion to be rebuilt anyway.
>
> PR: 241710
> MFC after: 5 days
>
> Modified:
> head/sys/sys/syslimits.h
>
> Modified: head/sys/sys/syslimits.h
> =============================================================================
> =
> --- head/sys/sys/syslimits.h Mon Dec 16 23:08:09 2019 (r355827)
> +++ head/sys/sys/syslimits.h Mon Dec 16 23:55:30 2019 (r355828)
> @@ -48,7 +48,11 @@
> * Do not add any new variables here. (See the comment at the end of
> * the file for why.)
> */
> -#define ARG_MAX 262144 /* max bytes for an exec functi
> on */
> +#ifndef __ILP32__
> +#define ARG_MAX (2 * 256 * 1024) /* max bytes for an exec functi
> on */
> +#else
> +#define ARG_MAX (256 * 1024) /* max bytes for KVA-starved ar
> chs */
> +#endif
> #ifndef CHILD_MAX
> #define CHILD_MAX 40 /* max simultaneous processes *
> /
> #endif
>
--
Cheers,
Cy Schubert <Cy.Schubert at cschubert.com>
FreeBSD UNIX: <cy at FreeBSD.org> Web: http://www.FreeBSD.org
The need of the many outweighs the greed of the few.
More information about the svn-src-all
mailing list