Commit 2327d4c
committed
data race: avoid unprotected access to sb.file
79575d8 (included in klog v1.130.0) added a small data race with regards to
accessing the syncBuffer.file field when calling Sync.
We can eliminate the entire redirectBuffer interface that led to this mistake
and instead work directly with syncBuffer for flushing and syncing.
To avoid allocating a slice inside flushAll, a fixed-sized struct is
returned. A benchmark confirms that flushAll+syncAll can be called without
allocations.1 parent 16c7d26 commit 2327d4c
2 files changed
+81
-61
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
404 | 404 | | |
405 | 405 | | |
406 | 406 | | |
407 | | - | |
408 | | - | |
409 | | - | |
410 | | - | |
411 | | - | |
412 | | - | |
413 | | - | |
414 | 407 | | |
415 | 408 | | |
416 | 409 | | |
| |||
486 | 479 | | |
487 | 480 | | |
488 | 481 | | |
489 | | - | |
| 482 | + | |
490 | 483 | | |
491 | 484 | | |
492 | 485 | | |
| |||
831 | 824 | | |
832 | 825 | | |
833 | 826 | | |
834 | | - | |
835 | | - | |
836 | | - | |
837 | | - | |
838 | | - | |
839 | | - | |
840 | | - | |
841 | | - | |
842 | | - | |
843 | | - | |
844 | | - | |
845 | | - | |
846 | | - | |
847 | | - | |
848 | | - | |
849 | | - | |
850 | | - | |
851 | 827 | | |
852 | 828 | | |
853 | 829 | | |
854 | 830 | | |
855 | 831 | | |
856 | | - | |
857 | | - | |
858 | | - | |
859 | | - | |
| 832 | + | |
860 | 833 | | |
861 | 834 | | |
862 | 835 | | |
| |||
868 | 841 | | |
869 | 842 | | |
870 | 843 | | |
871 | | - | |
872 | | - | |
873 | | - | |
874 | | - | |
| 844 | + | |
875 | 845 | | |
876 | 846 | | |
877 | 847 | | |
| |||
1011 | 981 | | |
1012 | 982 | | |
1013 | 983 | | |
1014 | | - | |
1015 | | - | |
| 984 | + | |
| 985 | + | |
1016 | 986 | | |
1017 | 987 | | |
1018 | 988 | | |
| |||
1029 | 999 | | |
1030 | 1000 | | |
1031 | 1001 | | |
1032 | | - | |
1033 | | - | |
1034 | | - | |
1035 | | - | |
1036 | 1002 | | |
1037 | 1003 | | |
1038 | 1004 | | |
| |||
1224 | 1190 | | |
1225 | 1191 | | |
1226 | 1192 | | |
1227 | | - | |
| 1193 | + | |
1228 | 1194 | | |
1229 | 1195 | | |
1230 | | - | |
| 1196 | + | |
1231 | 1197 | | |
1232 | 1198 | | |
1233 | 1199 | | |
1234 | 1200 | | |
1235 | | - | |
1236 | | - | |
| 1201 | + | |
| 1202 | + | |
| 1203 | + | |
| 1204 | + | |
| 1205 | + | |
1237 | 1206 | | |
1238 | 1207 | | |
1239 | 1208 | | |
1240 | | - | |
1241 | | - | |
| 1209 | + | |
| 1210 | + | |
| 1211 | + | |
| 1212 | + | |
1242 | 1213 | | |
1243 | | - | |
1244 | 1214 | | |
1245 | 1215 | | |
1246 | 1216 | | |
1247 | 1217 | | |
1248 | | - | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
1249 | 1224 | | |
1250 | 1225 | | |
1251 | 1226 | | |
1252 | | - | |
| 1227 | + | |
1253 | 1228 | | |
1254 | | - | |
1255 | | - | |
1256 | | - | |
1257 | | - | |
| 1229 | + | |
| 1230 | + | |
1258 | 1231 | | |
1259 | 1232 | | |
1260 | 1233 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
73 | 74 | | |
74 | 75 | | |
75 | 76 | | |
76 | | - | |
| 77 | + | |
77 | 78 | | |
78 | 79 | | |
79 | 80 | | |
| |||
82 | 83 | | |
83 | 84 | | |
84 | 85 | | |
85 | | - | |
86 | | - | |
| 86 | + | |
| 87 | + | |
87 | 88 | | |
88 | 89 | | |
89 | 90 | | |
| |||
540 | 541 | | |
541 | 542 | | |
542 | 543 | | |
543 | | - | |
| 544 | + | |
544 | 545 | | |
545 | 546 | | |
546 | 547 | | |
547 | 548 | | |
548 | 549 | | |
549 | | - | |
550 | | - | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
551 | 555 | | |
552 | 556 | | |
553 | 557 | | |
| |||
811 | 815 | | |
812 | 816 | | |
813 | 817 | | |
814 | | - | |
| 818 | + | |
815 | 819 | | |
816 | 820 | | |
817 | 821 | | |
818 | 822 | | |
819 | 823 | | |
820 | 824 | | |
821 | | - | |
822 | | - | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
| 829 | + | |
| 830 | + | |
| 831 | + | |
| 832 | + | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
| 846 | + | |
| 847 | + | |
| 848 | + | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
| 863 | + | |
| 864 | + | |
| 865 | + | |
| 866 | + | |
| 867 | + | |
| 868 | + | |
| 869 | + | |
823 | 870 | | |
824 | 871 | | |
825 | 872 | | |
| |||
0 commit comments