Open thesamesam opened 7 months ago
Huh, I hit this one before in https://github.com/randombit/botan/issues/3623#issuecomment-1632113780.
This is a surprising test to sporadically fail since it's specifically testing that the (completely deterministic) Dilithium key generation process behaves as expected. If it failed, I would expect it to be due to a miscompilation and always fail.
Just did ./botan-test dilithium_kat_4x4_AES_Deterministic --test-runs=1000
and all passed. I'm going to try 10,000 runs now. If I can't repro with that it's probably either an interleaving problem running tests in multiple threads, or a hardware fluke on your machine, and in either case would need further digging.
Last time @thesamesam saw such sporadic test failures, it had to do with tests racing each other on CPUID and (independently) a racy registration of ECC curves.
Given that the failing test deals with AES: Could this again be a CPUID race?
Edit: Perhaps https://github.com/randombit/botan/pull/3860?
@thesamesam Could you try whether this patch helps?
I was trying to reproduce https://github.com/randombit/botan/issues/3916 with 3.3.0 but not yet succeeded.
I can reproduce with both:
gcc (Gentoo Hardened 14.0.9999 p, commit 568b3f9940f87a775060aea789b2f438af477e9f) 14.0.1 20240218 (experimental) e63ae9085aca9d306a2f16445b473289b9186e10
gcc-13 (Gentoo Hardened 13.2.1_p20240217 p13) 13.2.1 20240217
I did however hit another failure once in many runs: