Subject: Re: bug#40316: nss not reproducible

From: Christina O'Donnell <[email-masked]>
Date: Mon, 6 May 2024 12:37:45 +0100

Hi,

On 06/05/2024 11:12, Ludovic Courtès wrote:
> Hi,
>
> Christina O'Donnell <[email-masked]> skribis:
>
>> Tangentially, given how long nss takes to build, do you think that
>> it'd be worth shaving it down to a single test pass? Currently it runs
>> each test up to 3 times, which takes ~1h on my machine with no other
>> build running. Running only the standard pass takes 2.5-3x less time,
>> which is a huge quality of life improvement.
> Currently we run ./nss/tests/all.sh, which I suppose is what upstream
> recommends to run tests.
>
> For sure I’d be happy if the test suite could run faster, but does
> upstream offer such an option?  When you say “a single pass”, is that
> something upstream supports?
Yes, you can control the tests by setting environment variables 
NSS_TESTS to a list of tests and NSS_CYCLES to a list of 'cycles' (what 
I previously called passes). The default is:

"standard pkix threadunsafe"

* 'standard' runs all of the below tests with default settings: "cipher 
lowhash cert dbtests tools sdr crmf smime ssl ocsp merge pkits ec gtests 
ssl_gtests policy"

* 'pkix' runs the tests "lowhash libpkix cert tools ssl ocsp pkits ec 
gtests ssl_gtests policy" with PKIX enabled.

* 'thread_unsafe' runs "ssl ssl_gtests" with "THREAD_UNSAFE" enabled.

My thinking would be to run the thread_unsafe cycle normally, but to 
reduce the test overlap between standard and pkix however, I can't say 
that I'm knowledgeable enough of NSS to claim that that wouldn't leave 
gaps that might bite us some point down the line. So it might be best to 
leave it as is unless someone familiar with NSS can confirm that it'd be 
safe to disable some tests/cycles.

Kind regards,

Christina