On Sat, Nov 28, 2015 at 11:08:05AM -0800, John Johansen wrote:
> +static void setup_parallel_compile(void)
> +{
> + /* jobs_count and paralell_max set by default, config or args */
> + long n = sysconf(_SC_NPROCESSORS_ONLN);
We should handle an error return here ..
> + if (jobs_count == JOBS_AUTO)
> + jobs_count = n;
> + if (jobs_max == JOBS_AUTO)
> + jobs_max = n;
> + /* jobs_max will be used internally */
> + jobs_max = min(jobs_count, jobs_max);
> + if (jobs_max > 8*n) {
> + PERROR("%s: Invalid maximum number of jobs '%ld' > 8 * # of
> cpus",
> + progname, jobs_max);
> + exit(1);
> + }
> + else if (jobs_max < 1) {
> + PERROR("%s: Invalid maximum number of jobs '%ld'",
> + progname, jobs_max);
> + exit(1);
> + }
.. because this test could be tripped with a -1 return from sysconf().
If sysconf() fails we should probably just go with n = 2 or something
conservative.
I like the cap on eight times the number of CPUs.
Thanks
signature.asc
Description: Digital signature
-- AppArmor mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
