[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <01151c44-c3f7-c344-8e58-2e6b348960fb@infradead.org>
Date: Tue, 3 Jul 2018 16:27:06 -0700
From: Randy Dunlap <rdunlap@...radead.org>
To: Andrew Morton <akpm@...ux-foundation.org>,
Norbert Manthey <nmanthey@...zon.de>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
David Woodhouse <dwmw@...zon.co.uk>,
linux-kernel@...r.kernel.org
Subject: Re: [build-check] scripts: add check_build script
On 07/03/2018 03:49 PM, Andrew Morton wrote:
> On Tue, 3 Jul 2018 15:12:10 +0200 Norbert Manthey <nmanthey@...zon.de> wrote:
>
>> This script performs build testing, by building several configurations
>> several times. The script is introduced to improve the consistency of
>> testing changes in the kernel configuration.
>>
>> This version build randconfig 10 times, as well as allyesconfig,
>> allnoconfig and allmodconfig. Depending on the used machine and system
>> setup, the script might take a while to finish.
>>
>> The script logs all the used config files, as well as the output of the
>> build commands to a log directory "build_check_logs", so that this data
>> can be retrieved after running the script.
>
> I'm unable to even guess how many people will find this useful.
I expect that lots of us have similar scripts.
>> +build ()
>> +{
>> + local -r LOG_FILE="$1"
>> + local -i STATUS=0
>> +
>> + make clean -j $(nproc) &> /dev/null
>> + make -j $(nproc) &>> "$LOG_FILE" || STATUS=$?
>> +
>> + echo "build status: $STATUS" >> "$LOG_FILE"
>> + echo "[$SECONDS] build status: $STATUS"
>> + return "$STATUS"
>> +}
>
> The script never sets nproc. So I guess this is a bare `make -j'.
> When I type that on my (quite beefy) workstation I get eleventy xillion
> processes and the machine locks up. Can't even wiggle the mouse.
> After a 20 minute nap (thanks!) it was still comatose so I hit the big
> button (who writes this junk??).
>
> So you might want to take an educated guess from /proc/cpuinfo here.
or use
nproc=`getconf _NPROCESSORS_ONLN`
or double it if you want to keep processes ready/waiting.
--
~Randy
Powered by blists - more mailing lists