Upstream was changed:


https://gitlab.com/procps-ng/procps/-/blob/master/pgrep.c

long cmdlen = get_arg_max() * sizeof(char);

where get_arg_max is defined as:

/*
 * SC_ARG_MAX used to return the maximum size a command line can be
 * however changes to the kernel mean this can be bigger than we can
 * alloc. Clamp it to 128kB like xargs and friends do
 * Should also not be smaller than POSIX_ARG_MAX which is 4096
 */
static size_t get_arg_max(void)
{
#define MIN_ARG_SIZE 4096u
#define MAX_ARG_SIZE (128u * 1024u)

    size_t val = sysconf(_SC_ARG_MAX);

    if (val < MIN_ARG_SIZE)
        val = MIN_ARG_SIZE;
    if (val > MAX_ARG_SIZE)
        val = MAX_ARG_SIZE;

    return val;
}

Was added 1 year 
ago:https://gitlab.com/procps-ng/procps/-/commit/bb96fc42956c9ed926a1b958ab715f8b4a663dec

Reply via email to