Commit 9ab13e2
committed
Merged PR 7872479: Fix DSA selftest perf. Add perf measurements to selftest execution in unit tests.
`SymCryptDsaSelftest` was passing the `SYMCRYPT_DLGROUP_FIPS_LATEST` flag when calling `SymCryptDlgroupSetValue`, which causes that function to regenerate the primes P and Q and perform Rabin-Miller primality tests on them. This is very computationally expensive, to the point that running the DSA selftest caused significant performance problems in some scenarios.
The fix is to instead use `SYMCRYPT_DLGROUP_FIPS_NONE`; since we're using a hardcoded, known-good key, we do not need to perform the additional validation on it.
Also added error injection to selftests that were missing it, and added basic performance measurement to the selftests when they are run as part of the unit test, so that we can catch selftest performance issues more easily.1 parent bc66c79 commit 9ab13e2
File tree
6 files changed
+147
-138
lines changed- lib
- unittest
- inc
- lib
6 files changed
+147
-138
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | 57 | | |
61 | 58 | | |
62 | 59 | | |
| |||
499 | 496 | | |
500 | 497 | | |
501 | 498 | | |
502 | | - | |
| 499 | + | |
503 | 500 | | |
504 | 501 | | |
505 | 502 | | |
506 | 503 | | |
507 | 504 | | |
508 | 505 | | |
509 | | - | |
510 | | - | |
511 | | - | |
512 | | - | |
513 | | - | |
514 | | - | |
515 | | - | |
516 | | - | |
517 | | - | |
518 | | - | |
519 | | - | |
520 | | - | |
521 | | - | |
522 | | - | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
523 | 509 | | |
524 | 510 | | |
525 | 511 | | |
| |||
531 | 517 | | |
532 | 518 | | |
533 | 519 | | |
534 | | - | |
| 520 | + | |
535 | 521 | | |
536 | 522 | | |
537 | 523 | | |
| |||
544 | 530 | | |
545 | 531 | | |
546 | 532 | | |
547 | | - | |
| 533 | + | |
548 | 534 | | |
549 | 535 | | |
550 | 536 | | |
| |||
558 | 544 | | |
559 | 545 | | |
560 | 546 | | |
561 | | - | |
562 | | - | |
| 547 | + | |
| 548 | + | |
563 | 549 | | |
564 | 550 | | |
565 | 551 | | |
| |||
592 | 578 | | |
593 | 579 | | |
594 | 580 | | |
595 | | - | |
| 581 | + | |
596 | 582 | | |
597 | 583 | | |
598 | 584 | | |
| |||
606 | 592 | | |
607 | 593 | | |
608 | 594 | | |
609 | | - | |
| 595 | + | |
610 | 596 | | |
611 | 597 | | |
612 | 598 | | |
| |||
620 | 606 | | |
621 | 607 | | |
622 | 608 | | |
623 | | - | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
624 | 612 | | |
625 | 613 | | |
626 | 614 | | |
| |||
647 | 635 | | |
648 | 636 | | |
649 | 637 | | |
| 638 | + | |
| 639 | + | |
650 | 640 | | |
651 | 641 | | |
652 | 642 | | |
| |||
672 | 662 | | |
673 | 663 | | |
674 | 664 | | |
675 | | - | |
676 | | - | |
| 665 | + | |
| 666 | + | |
677 | 667 | | |
678 | 668 | | |
679 | 669 | | |
| |||
687 | 677 | | |
688 | 678 | | |
689 | 679 | | |
690 | | - | |
691 | | - | |
| 680 | + | |
| 681 | + | |
692 | 682 | | |
693 | 683 | | |
694 | 684 | | |
| |||
700 | 690 | | |
701 | 691 | | |
702 | 692 | | |
703 | | - | |
| 693 | + | |
704 | 694 | | |
705 | 695 | | |
706 | 696 | | |
| |||
732 | 722 | | |
733 | 723 | | |
734 | 724 | | |
| 725 | + | |
| 726 | + | |
735 | 727 | | |
736 | 728 | | |
737 | 729 | | |
| |||
768 | 760 | | |
769 | 761 | | |
770 | 762 | | |
771 | | - | |
| 763 | + | |
772 | 764 | | |
773 | 765 | | |
774 | 766 | | |
| |||
801 | 793 | | |
802 | 794 | | |
803 | 795 | | |
| 796 | + | |
| 797 | + | |
804 | 798 | | |
805 | 799 | | |
806 | 800 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
8 | 91 | | |
9 | 92 | | |
10 | 93 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
| |||
51 | 52 | | |
52 | 53 | | |
53 | 54 | | |
| 55 | + | |
54 | 56 | | |
55 | 57 | | |
56 | 58 | | |
| |||
159 | 161 | | |
160 | 162 | | |
161 | 163 | | |
| 164 | + | |
162 | 165 | | |
163 | 166 | | |
164 | 167 | | |
| |||
1377 | 1380 | | |
1378 | 1381 | | |
1379 | 1382 | | |
| 1383 | + | |
| 1384 | + | |
1380 | 1385 | | |
1381 | 1386 | | |
1382 | 1387 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
11 | | - | |
12 | 10 | | |
13 | 11 | | |
14 | 12 | | |
15 | 13 | | |
16 | 14 | | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | 15 | | |
102 | 16 | | |
103 | 17 | | |
| |||
1197 | 1111 | | |
1198 | 1112 | | |
1199 | 1113 | | |
1200 | | - | |
1201 | | - | |
1202 | | - | |
1203 | 1114 | | |
1204 | 1115 | | |
1205 | 1116 | | |
| |||
0 commit comments