blob: fe5a5a07d51a70c8e97e06af02db62f4b2570daf (
plain)
1
2
3
4
5
6
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
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
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
|
.. SPDX-License-Identifier: (GPL-2.0+ OR CC-BY-4.0)
.. See the bottom of this file for additional redistribution information.
.. include:: ../disclaimer-zh_TW.rst
:Original: Documentation/admin-guide/reporting-issues.rst
:è¯è€…:
å³æƒ³æˆ Wu XiangCheng <bobwxc@email.cn>
胡皓文 Hu Haowen <src.res.211@gmail.com>
å ±å‘Šå•é¡Œ
+++++++++
簡明指å—ï¼ˆäº¦å³ å¤ªé•·ä¸çœ‹ï¼‰
==========================
您é¢è‡¨çš„是å¦çˆ²åŒç³»åˆ—穩定版或長期支æŒå…§æ ¸çš„æ™®é€šå…§æ ¸çš„è¿´æ¸ï¼Ÿæ˜¯å¦ä»ç„¶å—支æŒï¼Ÿ
è«‹æœç´¢ `LKMLå…§æ ¸éƒµä»¶åˆ—è¡¨ <https://lore.kernel.org/lkml/>`_ å’Œ
`Linux穩定版郵件列表 <https://lore.kernel.org/stable/>`_ å˜æª”ä¸åŒ¹é…çš„å ±å‘Šä¸¦
åŠ å…¥è¨Žè«–ã€‚å¦‚æžœæ‰¾ä¸åˆ°åŒ¹é…çš„å ±å‘Šï¼Œè«‹å®‰è£è©²ç³»åˆ—的最新版本。如果它ä»ç„¶å‡ºç¾å•é¡Œï¼Œ
è«‹å ±å‘Šçµ¦ç©©å®šç‰ˆéƒµä»¶åˆ—è¡¨ï¼ˆstable@vger.kernel.org)並抄é€å›žæ¸éƒµä»¶åˆ—表
(regressions@lists.linux.dev);ç†æƒ³æƒ…æ³ä¸‹ï¼Œé‚„å¯ä»¥æŠ„é€ç¶è·è€…和相關å系統的
郵件列表。
在所有其他情æ³ä¸‹ï¼Œè«‹å„˜å¯èƒ½çŒœæ¸¬æ˜¯å“ªå€‹å…§æ ¸éƒ¨åˆ†å°Žè‡´äº†å•é¡Œã€‚查看MAINTAINERS文件,
çžè§£é–‹ç™¼äººå“¡å¸Œæœ›å¦‚何得知å•é¡Œï¼Œå¤§å¤šæ•¸æƒ…æ³ä¸‹ï¼Œå ±å‘Šå•é¡Œéƒ½æ˜¯é€šéŽé›»å郵件和抄é€
ç›¸é—œéƒµä»¶åˆ—è¡¨é€²è¡Œçš„ã€‚æª¢æŸ¥å ±å‘Šç›®çš„åœ°çš„å˜æª”ä¸æ˜¯å¦å·²æœ‰åŒ¹é…çš„å ±å‘Šï¼›ä¹Ÿè«‹æœç´¢
`LKML <https://lore.kernel.org/lkml/>`_ 和網絡。如果找ä¸åˆ°å¯åŠ 入的討論,請
å®‰è£ `æœ€æ–°çš„ä¸»ç·šå…§æ ¸ <https://kernel.org/>`_ 。如果ä»å˜åœ¨å•é¡Œï¼Œè«‹ç™¼é€å ±å‘Šã€‚
å•é¡Œå·²ç¶“解決了,但是您希望看到它在一個ä»ç„¶æ”¯æŒçš„穩定版或長期支æŒç³»åˆ—ä¸å¾—到
解決?請安è£å…¶æœ€æ–°ç‰ˆæœ¬ã€‚如果它出ç¾äº†å•é¡Œï¼Œé‚£éº¼åœ¨ä¸»ç·šä¸æœç´¢ä¿®å¾©å®ƒçš„更改,並
檢查是å¦æ£åœ¨å›žå‚³ï¼ˆbackporting)或者已放棄;如果兩者都沒有,那麼å¯è©¢å•è™•ç†
更改的人員。
**通用æ醒** :當安è£å’Œæ¸¬è©¦ä¸Šè¿°å…§æ ¸æ™‚,請確ä¿å®ƒæ˜¯æ™®é€šçš„(å³ï¼šæ²’有補ä¸ï¼Œä¹Ÿæ²’
æœ‰ä½¿ç”¨é™„åŠ æ¨¡å¡Šï¼‰ã€‚é‚„è¦ç¢ºä¿å®ƒæ˜¯åœ¨ä¸€å€‹æ£å¸¸çš„環境ä¸æ§‹å»ºå’Œé‹è¡Œï¼Œä¸¦ä¸”在å•é¡Œç™¼ç”Ÿ
之å‰æ²’有被污染(tainted)。
ç•¶ä½ åŒæ™‚é¢è‡¨Linuxå…§æ ¸çš„å¤šå€‹å•é¡Œæ™‚ï¼Œè«‹åˆ†åˆ¥å ±å‘Šã€‚åœ¨ç·¨å¯«å ±å‘Šæ™‚ï¼Œè¦æ¶µè“‹èˆ‡å•é¡Œ
相關的所有信æ¯ï¼Œå¦‚ä½¿ç”¨çš„å…§æ ¸å’Œç™¼è¡Œç‰ˆã€‚å¦‚æžœç¢°è¦‹è¿´æ¸ï¼Œè«‹æŠŠå ±å‘ŠæŠ„é€å›žæ¸éƒµä»¶åˆ—表
(regressions@lists.linux.dev)。也請試試用二分法找出æºé ;如果æˆåŠŸæ‰¾åˆ°ï¼Œè«‹
åœ¨å ±å‘Šä¸å¯«ä¸Šå®ƒçš„æ交ID並抄é€sign-off-byéˆä¸çš„所有人。
ä¸€æ—¦å ±å‘Šç™¼å‡ºï¼Œè«‹å›žç”任何出ç¾çš„å•é¡Œï¼Œä¸¦å„˜å¯èƒ½åœ°æ供幫助。這包括通éŽä¸æ™‚é‡æ–°
測試新版本併發é€ç‹€æ…‹æ›´æ–°ä¾†æŽ¨å‹•é€²å±•ã€‚
如何å‘å…§æ ¸ç¶è·äººå“¡å ±å‘Šå•é¡Œçš„é€æ¥æŒ‡å—
=====================================
上é¢çš„簡明指å—概述çžå¦‚何å‘Linuxå…§æ ¸é–‹ç™¼äººå“¡å ±å‘Šå•é¡Œã€‚å°æ–¼å·²ç¶“熟悉å‘自由和開
æºè»Ÿä»¶ï¼ˆFLOSSï¼‰é …ç›®å ±å‘Šå•é¡Œçš„人來說,這å¯èƒ½æ˜¯ä»–們所需è¦çš„全部內容。å°æ–¼å…¶ä»–
人,本部分更爲詳細,並一æ¥ä¸€æ¥åœ°æ述。爲了便於閱讀,它ä»ç„¶å„˜é‡ç°¡æ½”,並çœç•¥
了許多細節;這些在é€æ¥æŒ‡å—後的åƒè€ƒç« 節ä¸é€²è¡Œäº†æè¿°ï¼Œè©²ç« ç¯€æ›´è©³ç´°åœ°è§£é‡‹äº†æ¯
個æ¥é©Ÿã€‚
注æ„:本節涉åŠçš„æ–¹é¢æ¯”簡明指å—å¤šï¼Œé †åºä¹Ÿç¨æœ‰ä¸åŒã€‚這符åˆä½ 的利益,以確ä¿æ‚¨
儘早æ„è˜åˆ°çœ‹èµ·ä¾†åƒLinuxå…§æ ¸æ¯›ç—…çš„å•é¡Œå¯èƒ½å¯¦éš›ä¸Šæ˜¯ç”±å…¶ä»–åŽŸå› å¼•èµ·çš„ã€‚é€™äº›æ¥é©Ÿ
å¯ä»¥ç¢ºä¿ä½ 最終ä¸æœƒè¦ºå¾—在這一éŽç¨‹ä¸æŠ•å…¥çš„時間是浪費:
* 您是å¦é¢è‡¨ç¡¬ä»¶æˆ–軟件供應商æ供的Linuxå…§æ ¸çš„å•é¡Œï¼Ÿé‚£éº¼åŸºæœ¬ä¸Šæ‚¨æœ€å¥½åœæ¢é–±è®€
本文檔,轉而å‘æ‚¨çš„ä¾›æ‡‰å•†å ±å‘Šå•é¡Œï¼Œé™¤éžæ‚¨é¡˜æ„自己安è£æœ€æ–°çš„Linux版本。尋找
和解決å•é¡Œå¾€å¾€éœ€è¦å¾Œè€…。
* 使用您喜愛的網絡æœç´¢å¼•æ“Žå°ç¾æœ‰å ±å‘Šé€²è¡Œç²—ç•¥æœç´¢ï¼›æ¤å¤–,請檢查
`Linuxå…§æ ¸éƒµä»¶åˆ—è¡¨ï¼ˆLKML) <https://lore.kernel.org/lkml/>`_ çš„å˜æª”。如果
找到匹é…çš„å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°å ±å‘Šã€‚
* çœ‹çœ‹ä½ æ£åœ¨è™•ç†çš„å•é¡Œæ˜¯å¦çˆ²è¿´æ¸å•é¡Œã€å®‰å…¨å•é¡Œæˆ–éžå¸¸åš´é‡çš„å•é¡Œï¼šé€™äº›éƒ½æ˜¯éœ€
è¦åœ¨æŽ¥ä¸‹ä¾†çš„一些æ¥é©Ÿä¸ç‰¹åˆ¥è™•ç†çš„“高優先級å•é¡Œâ€ã€‚
* 確ä¿ä¸æ˜¯å…§æ ¸ç’°å¢ƒå°Žè‡´äº†æ‚¨é¢è‡¨çš„å•é¡Œã€‚
* 創建一個新的備份,並將系統修復和æ¢å¾©å·¥å…·æ”¾åœ¨æ‰‹é‚Šã€‚
* 確ä¿æ‚¨çš„系統ä¸æœƒé€šéŽå‹•æ…‹æ§‹å»ºé¡å¤–çš„å…§æ ¸æ¨¡å¡Šä¾†å¢žå¼·å…¶å…§æ ¸ï¼ŒåƒDKMS這樣的解決
方案å¯èƒ½åœ¨æ‚¨ä¸çŸ¥æƒ…的情æ³ä¸‹å°±åœ¨æœ¬åœ°é€²è¡Œäº†é€™æ¨£çš„工作。
* 當å•é¡Œç™¼ç”Ÿæ™‚ï¼Œæª¢æŸ¥æ‚¨çš„å…§æ ¸æ˜¯å¦è¢«â€œæ±¡æŸ“â€ï¼Œå› çˆ²ä½¿å…§æ ¸è¨ç½®é€™å€‹æ¨™èªŒçš„事件å¯èƒ½
會導致您é¢è‡¨çš„å•é¡Œã€‚
* 粗略地寫下如何é‡ç¾é€™å€‹å•é¡Œã€‚如果您åŒæ™‚處ç†å¤šå€‹å•é¡Œï¼Œè«‹çˆ²æ¯å€‹å•é¡Œå–®ç¨å¯«æ³¨
釋,並確ä¿å®ƒå€‘在新啓動的系統上ç¨ç«‹å‡ºç¾ã€‚這是必è¦çš„ï¼Œå› çˆ²æ¯å€‹å•é¡Œéƒ½éœ€è¦åˆ†
åˆ¥å ±å‘Šçµ¦å…§æ ¸é–‹ç™¼äººå“¡ï¼Œé™¤éžå®ƒå€‘åš´é‡ç³¾çºåœ¨ä¸€èµ·ã€‚
* 如果您æ£é¢è‡¨ç©©å®šç‰ˆæˆ–長期支æŒç‰ˆæœ¬ç·šçš„è¿´æ¸ï¼ˆä¾‹å¦‚從5.10.4更新到5.10.5時出ç¾
æ•…éšœï¼‰ï¼Œè«‹æŸ¥çœ‹å¾Œæ–‡â€œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„è¿´æ¸â€å°ç¯€ã€‚
* 定ä½å¯èƒ½å¼•èµ·å•é¡Œçš„驅動程åºæˆ–å…§æ ¸åç³»çµ±ã€‚æ‰¾å‡ºå…¶é–‹ç™¼äººå“¡æœŸæœ›çš„å ±å‘Šçš„æ–¹å¼å’Œ
ä½ç½®ã€‚注æ„:大多數情æ³ä¸‹ä¸æœƒæ˜¯ bugzilla.kernel.orgï¼Œå› çˆ²å•é¡Œé€šå¸¸éœ€è¦é€š
éŽéƒµä»¶ç™¼é€çµ¦ç¶è·äººå“¡å’Œå…¬å…±éƒµä»¶åˆ—表。
* 在缺陷追蹤器或å•é¡Œç›¸é—œéƒµä»¶åˆ—表的å˜æª”ä¸å¾¹åº•æœç´¢å¯èƒ½èˆ‡æ‚¨çš„å•é¡ŒåŒ¹é…çš„å ±å‘Šã€‚
å¦‚æžœä½ ç™¼ç¾äº†ä¸€äº›ç›¸é—œè¨Žè«–ï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°çš„å ±å‘Šã€‚
在完æˆé€™äº›æº–å‚™ä¹‹å¾Œï¼Œä½ å°‡é€²å…¥ä¸»è¦éƒ¨åˆ†ï¼š
* 除éžæ‚¨å·²ç¶“在é‹è¡Œæœ€æ–°çš„“主線â€Linuxå…§æ ¸ï¼Œå¦å‰‡æœ€å¥½åœ¨å ±å‘Šæµç¨‹å‰å®‰è£å®ƒã€‚在æŸäº›
情æ³ä¸‹ï¼Œä½¿ç”¨æœ€æ–°çš„“穩定版â€Linuxé€²è¡Œæ¸¬è©¦å’Œå ±å‘Šä¹Ÿæ˜¯å¯ä»¥æŽ¥å—的替代方案;在
åˆä½µçª—å£æœŸé–“,這實際上å¯èƒ½æ˜¯æœ€å¥½çš„方法,但在開發階段最好還是暫åœå¹¾å¤©ã€‚ç„¡è«–
ä½ é¸æ“‡ä»€éº¼ç‰ˆæœ¬ï¼Œæœ€å¥½ä½¿ç”¨â€œæ™®é€šâ€æ§‹å»ºã€‚忽略這些建è°æœƒå¤§å¤§å¢žåŠ æ‚¨çš„å ±å‘Šè¢«æ‹’çµ•
或忽略的風險。
* 確ä¿æ‚¨å‰›å‰›å®‰è£çš„å…§æ ¸åœ¨é‹è¡Œæ™‚ä¸æœƒâ€œæ±¡æŸ“â€è‡ªå·±ã€‚
* 在您剛剛安è£çš„å…§æ ¸ä¸å¾©ç¾é€™å€‹å•é¡Œã€‚如果它沒有出ç¾ï¼Œè«‹æŸ¥çœ‹ä¸‹æ–¹åªç™¼ç”Ÿåœ¨
穩定版和長期支æŒå…§æ ¸çš„å•é¡Œçš„說明。
* å„ªåŒ–ä½ çš„ç†è¨˜ï¼šè©¦ç€æ‰¾åˆ°ä¸¦å¯«å‡ºæœ€ç›´æŽ¥çš„復ç¾å•é¡Œçš„方法。確ä¿æœ€çµ‚çµæžœåŒ…å«æ‰€æœ‰
é‡è¦çš„細節,åŒæ™‚讓第一次è½èªªçš„人容易閱讀和ç†è§£ã€‚如果您在æ¤éŽç¨‹ä¸å¸åˆ°äº†ä¸€
些æ±è¥¿ï¼Œè«‹è€ƒæ…®å†æ¬¡æœç´¢é—œæ–¼è©²å•é¡Œçš„ç¾æœ‰å ±å‘Šã€‚
* 如果失敗涉åŠâ€œpanicâ€ã€â€œOopsâ€ã€â€œwarningâ€æˆ–“BUGâ€ï¼Œè«‹è€ƒæ…®è§£ç¢¼å…§æ ¸æ—¥èªŒä»¥æŸ¥æ‰¾è§¸
發錯誤的代碼行。
* 如果您的å•é¡Œæ˜¯è¿´æ¸å•é¡Œï¼Œè«‹å„˜å¯èƒ½ç¸®å°å¼•å…¥å•é¡Œæ™‚的範åœã€‚
* 通éŽè©³ç´°æè¿°å•é¡Œä¾†é–‹å§‹ç·¨å¯«å ±å‘Šã€‚記得包括以下æ¢ç›®ï¼šæ‚¨çˆ²å¾©ç¾è€Œå®‰è£çš„最新內
æ ¸ç‰ˆæœ¬ã€ä½¿ç”¨çš„Linux發行版以åŠé—œæ–¼å¦‚何復ç¾è©²å•é¡Œçš„說明。如果å¯èƒ½ï¼Œå°‡å…§æ ¸
構建é…置(.config)和 ``dmesg`` 的輸出放在網上的æŸå€‹åœ°æ–¹ï¼Œä¸¦éˆæŽ¥åˆ°å®ƒã€‚包
å«æˆ–上傳所有其他å¯èƒ½ç›¸é—œçš„ä¿¡æ¯ï¼Œå¦‚Oops的輸出/截圖或來自 ``lspci`` 的輸出
ã€‚ä¸€æ—¦ä½ å¯«å®Œäº†é€™å€‹ä¸»è¦éƒ¨åˆ†ï¼Œè«‹åœ¨ä¸Šæ–¹æ’入一個æ£å¸¸é•·åº¦çš„段è½å¿«é€Ÿæ¦‚è¿°å•é¡Œå’Œ
影響。å†åœ¨æ¤ä¹‹ä¸Šæ·»åŠ 一個簡單æè¿°å•é¡Œçš„å¥å,以得到人們的閱讀。ç¾åœ¨çµ¦å‡ºä¸€
個更çŸçš„æ述性標題或主題。然後就å¯ä»¥åƒMAINTAINERSæ–‡ä»¶å‘Šè¨´ä½ çš„é‚£æ¨£ç™¼é€æˆ–
æäº¤å ±å‘Šäº†ï¼Œé™¤éžä½ 在處ç†ä¸€å€‹â€œé«˜å„ªå…ˆç´šå•é¡Œâ€ï¼šå®ƒå€‘需è¦æŒ‰ç…§ä¸‹é¢â€œé«˜å„ªå…ˆç´šå•
題的特殊處ç†â€æ‰€è¿°ç‰¹åˆ¥é—œç…§ã€‚
* ç‰å¾…別人的åæ‡‰ï¼Œç¹¼çºŒæŽ¨é€²äº‹æƒ…ï¼Œç›´åˆ°ä½ èƒ½å¤ æŽ¥å—這樣或那樣的çµæžœã€‚å› æ¤ï¼Œè«‹å…¬
é–‹å’ŒåŠæ™‚地回應任何詢å•ã€‚測試æ出的修復。ç©æ¥µåœ°æ¸¬è©¦ï¼šè‡³å°‘é‡æ–°æ¸¬è©¦æ¯å€‹æ–°ä¸»
線版本的首個候é¸ç‰ˆæœ¬ï¼ˆRCï¼‰ï¼Œä¸¦å ±å‘Šä½ çš„çµæžœã€‚如果出ç¾æ‹–延,就å‹å¥½åœ°æ醒一
ä¸‹ã€‚å¦‚æžœä½ æ²’æœ‰å¾—åˆ°ä»»ä½•å¹«åŠ©æˆ–è€…æœªèƒ½æ»¿æ„,請試ç€è‡ªå·±å¹«åŠ©è‡ªå·±ã€‚
å ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„è¿´æ¸
----------------------------------
如果您發ç¾äº†ç©©å®šç‰ˆæˆ–長期支æŒå…§æ ¸ç‰ˆæœ¬ç·šä¸çš„è¿´æ¸å•é¡Œä¸¦æŒ‰ä¸Šè¿°æµç¨‹è·³åˆ°é€™è£ï¼Œé‚£éº¼
請閱讀本å°ç¯€ã€‚å³ä¾‹å¦‚您在從5.10.4更新到5.10.5時出ç¾äº†å•é¡Œï¼ˆå¾ž5.9.15到5.10.5則
ä¸æ˜¯ï¼‰ã€‚開發人員希望儘快修復æ¤é¡žè¿´æ¸ï¼Œå› æ¤æœ‰ä¸€å€‹ç°¡åŒ–æµç¨‹ä¾†å ±å‘Šå®ƒå€‘:
* æª¢æŸ¥å…§æ ¸é–‹ç™¼äººå“¡æ˜¯å¦ä»ç„¶ç¶è·ä½ 關心的Linuxå…§æ ¸ç‰ˆæœ¬ç·šï¼šåŽ» `kernel.org 的首é
<https://kernel.org/>`_ ,確ä¿æ¤ç‰¹å®šç‰ˆæœ¬ç·šçš„最新版沒有“[EOL]â€æ¨™è¨˜ã€‚
* 檢查 `Linux穩定版郵件列表 <https://lore.kernel.org/stable/>`_ ä¸çš„ç¾æœ‰å ±å‘Šã€‚
* 從特定的版本線安è£æœ€æ–°ç‰ˆæœ¬ä½œçˆ²ç´”æ·¨å…§æ ¸ã€‚ç¢ºä¿é€™å€‹å…§æ ¸æ²’有被污染,並且ä»ç„¶
å˜åœ¨å•é¡Œï¼Œå› 爲å•é¡Œå¯èƒ½å·²ç¶“在那è£è¢«ä¿®å¾©äº†ã€‚如果您第一次發ç¾ä¾›æ‡‰å•†å…§æ ¸çš„å•é¡Œï¼Œ
請檢查已知最新版本的普通構建是å¦å¯ä»¥æ£å¸¸é‹è¡Œã€‚
* å‘Linux穩定版郵件列表發é€ä¸€å€‹ç°¡çŸçš„å•é¡Œå ±å‘Šï¼ˆstable@vger.kernel.org)並抄é€
Linuxè¿´æ¸éƒµä»¶åˆ—表(regressions@lists.linux.devï¼‰ï¼›å¦‚æžœä½ æ‡·ç–‘æ˜¯ç”±æŸå系統
引起的,請抄é€å…¶ç¶è·äººå“¡å’Œå系統郵件列表。大致æè¿°å•é¡Œï¼Œä¸¦è§£é‡‹å¦‚何復ç¾ã€‚
講清楚首個出ç¾å•é¡Œçš„版本和最後一個工作æ£å¸¸çš„版本。然後ç‰å¾…進一æ¥çš„指示。
下é¢çš„åƒè€ƒç« 節部分詳細解釋了這些æ¥é©Ÿä¸çš„æ¯ä¸€æ¥ã€‚
å ±å‘Šåªç™¼ç”Ÿåœ¨è¼ƒèˆŠå…§æ ¸ç‰ˆæœ¬ç·šçš„å•é¡Œ
----------------------------------
è‹¥æ‚¨å˜—è©¦äº†ä¸Šè¿°çš„æœ€æ–°ä¸»ç·šå…§æ ¸ï¼Œä½†æœªèƒ½åœ¨é‚£è£å¾©ç¾å•é¡Œï¼Œé‚£éº¼æœ¬å°ç¯€é©ç”¨æ–¼æ‚¨ï¼›ä»¥ä¸‹
æµç¨‹æœ‰åŠ©æ–¼ä½¿å•é¡Œåœ¨ä»ç„¶æ”¯æŒçš„穩定版或長期支æŒç‰ˆæœ¬ç·šï¼Œæˆ–者定期基於最新穩定版或
長期支æŒå…§æ ¸çš„ä¾›æ‡‰å•†å…§æ ¸ä¸å¾—到修復。如果是這種情æ³ï¼Œè«‹åŸ·è¡Œä»¥ä¸‹æ¥é©Ÿï¼š
* è«‹åšå¥½æº–備,接下來的幾個æ¥é©Ÿå¯èƒ½ç„¡æ³•åœ¨èˆŠç‰ˆæœ¬ä¸è§£æ±ºå•é¡Œï¼šä¿®å¾©å¯èƒ½å¤ªå¤§æˆ–太
冒險,無法移æ¤åˆ°é‚£è£ã€‚
* 執行å‰ç¯€â€œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„è¿´æ¸â€ä¸çš„å‰ä¸‰å€‹æ¥é©Ÿã€‚
* 在Linuxå…§æ ¸ç‰ˆæœ¬æŽ§åˆ¶ç³»çµ±ä¸æœç´¢ä¿®å¾©ä¸»ç·šå•é¡Œçš„æ›´æ”¹ï¼Œå› çˆ²å®ƒçš„æ交消æ¯å¯èƒ½æœƒ
å‘Šè¨´ä½ ä¿®å¾©æ˜¯å¦å·²ç¶“計劃好了支æŒã€‚å¦‚æžœä½ æ²’æœ‰æ‰¾åˆ°ï¼Œæœç´¢é©ç•¶çš„郵件列表,尋找
討論æ¤é¡žå•é¡Œæˆ–åŒè¡Œè©•è°å¯èƒ½ä¿®å¾©çš„帖å;然後檢查討論是å¦èªçˆ²ä¿®å¾©ä¸é©åˆæ”¯æŒã€‚
如果支æŒæ ¹æœ¬ä¸è¢«è€ƒæ…®ï¼ŒåŠ 入最新的討論,詢å•æ˜¯å¦æœ‰å¯èƒ½ã€‚
* å‰é¢çš„æ¥é©Ÿä¹‹ä¸€æ‡‰è©²æœƒçµ¦å‡ºä¸€å€‹è§£æ±ºæ–¹æ¡ˆã€‚如果ä»æœªèƒ½æˆåŠŸï¼Œè«‹å‘å¯èƒ½å¼•èµ·å•é¡Œçš„
å系統的ç¶è·äººå“¡è©¢å•å»ºè°ï¼›æŠ„é€ç‰¹å®šå系統的郵件列表以åŠç©©å®šç‰ˆéƒµä»¶åˆ—表
下é¢çš„åƒè€ƒç« 節部分詳細解釋了這些æ¥é©Ÿä¸çš„æ¯ä¸€æ¥ã€‚
åƒè€ƒç« 節:å‘å…§æ ¸ç¶è·è€…å ±å‘Šå•é¡Œ
===============================
上é¢çš„詳細指å—ç°¡è¦åœ°åˆ—出了所有主è¦æ¥é©Ÿï¼Œé€™å°å¤§å¤šæ•¸äººä¾†èªªæ‡‰è©²è¶³å¤ 了。但有時,
å³ä½¿æ˜¯æœ‰ç¶“驗的用戶也å¯èƒ½æƒ³çŸ¥é“如何實際執行這些æ¥é©Ÿä¹‹ä¸€ã€‚這就是本節的目的,
å› çˆ²å®ƒå°‡æ供關於上述æ¯å€‹æ¥é©Ÿçš„更多細節。請將æ¤ä½œçˆ²åƒè€ƒæ–‡æª”:å¯ä»¥å¾žé 到尾
閱讀它。但它主è¦æ˜¯çˆ²äº†ç€è¦½å’ŒæŸ¥æ‰¾å¦‚何實際執行這些æ¥é©Ÿçš„詳細信æ¯ã€‚
在深入挖掘細節之å‰ï¼Œæˆ‘æƒ³å…ˆçµ¦ä½ ä¸€äº›ä¸€èˆ¬æ€§å»ºè°ï¼š
* Linuxå…§æ ¸é–‹ç™¼äººå“¡å¾ˆæ¸…æ¥šé€™å€‹éŽç¨‹å¾ˆè¤‡é›œï¼Œæ¯”其他的FLOSSé …ç›®è¦æ±‚更多。我們很
希望讓它更簡單。但這需è¦åœ¨ä¸åŒçš„地方以åŠä¸€äº›åŸºç¤Žè¨æ–½ä¸Šä»˜è«¸åŠªåŠ›ï¼Œé€™äº›åŸºç¤Ž
è¨æ–½éœ€è¦æŒçºŒçš„ç¶è·ï¼›å°šæœªæœ‰äººç«™å‡ºä¾†åšé€™äº›å·¥ä½œï¼Œæ‰€ä»¥ç›®å‰æƒ…æ³å°±æ˜¯é€™æ¨£ã€‚
* 與æŸäº›ä¾›æ‡‰å•†ç°½è¨‚çš„ä¿è‰æˆ–支æŒåˆåŒä¸¦ä¸èƒ½ä½¿æ‚¨æœ‰æ¬Šè¦æ±‚上游Linuxå…§æ ¸ç¤¾å€çš„é–‹
發人員進行修復:這樣的åˆåŒå®Œå…¨åœ¨Linuxå…§æ ¸ã€å…¶é–‹ç™¼ç¤¾å€å’Œæœ¬æ–‡æª”的範åœä¹‹å¤–。
這就是爲什麼在這種情æ³ä¸‹ï¼Œä½ ä¸èƒ½è¦æ±‚任何契約ä¿è‰ï¼Œå³ä½¿é–‹ç™¼äººå“¡è™•ç†çš„å•
é¡Œå°ä¾›æ‡‰å•†æœ‰æ•ˆã€‚如果您想主張您的權利,使用供應商的支æŒæ¸ é“代替。當這樣åš
çš„æ™‚å€™ï¼Œä½ å¯èƒ½æƒ³æå‡ºä½ å¸Œæœ›çœ‹åˆ°é€™å€‹å•é¡Œåœ¨ä¸Šæ¸¸Linuxå…§æ ¸ä¸ä¿®å¾©ï¼›å¯ä»¥é€™æ˜¯ç¢º
ä¿æœ€çµ‚修復將被ç´å…¥æ‰€æœ‰Linux發行版的唯一方法來鼓勵他們。
* 如果您從未å‘FLOSSé …ç›®å ±å‘ŠéŽä»»ä½•å•é¡Œï¼Œé‚£éº¼æ‚¨æ‡‰è©²è€ƒæ…®é–±è®€ `å¦‚ä½•æœ‰æ•ˆåœ°å ±å‘Š
缺陷 <https://www.chiark.greenend.org.uk/~sgtatham/bugs.html>`_ , `如何
以明智的方å¼æå• <http://www.catb.org/esr/faqs/smart-questions.html>`_ ,
å’Œ `如何æ出好å•é¡Œ <https://jvns.ca/blog/good-questions/>`_ 。
解決這些å•é¡Œä¹‹å¾Œï¼Œå¯ä»¥åœ¨ä¸‹é¢æ‰¾åˆ°å¦‚何æ£ç¢ºåœ°å‘Linuxå…§æ ¸å ±å‘Šå•é¡Œçš„詳細信æ¯ã€‚
確ä¿æ‚¨ä½¿ç”¨çš„是上游Linuxå…§æ ¸
----------------------------
*您是å¦é¢è‡¨ç¡¬ä»¶æˆ–軟件供應商æ供的Linuxå…§æ ¸çš„å•é¡Œï¼Ÿé‚£éº¼åŸºæœ¬ä¸Šæ‚¨æœ€å¥½åœæ¢é–±
讀本文檔,轉而å‘æ‚¨çš„ä¾›æ‡‰å•†å ±å‘Šå•é¡Œï¼Œé™¤éžæ‚¨é¡˜æ„自己安è£æœ€æ–°çš„Linux版本。
尋找和解決å•é¡Œå¾€å¾€éœ€è¦å¾Œè€…。*
與大多數程åºå“¡ä¸€æ¨£ï¼ŒLinuxå…§æ ¸é–‹ç™¼äººå“¡ä¸å–œæ¡èŠ±æ™‚間處ç†ä»–們ç¶è·çš„æºä»£ç¢¼ä¸æ ¹æœ¬
ä¸æœƒç™¼ç”Ÿçš„å•é¡Œçš„å ±å‘Šã€‚é€™éš»æœƒæµªè²»æ¯å€‹äººçš„æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½ çš„æ™‚é–“ã€‚ä¸å¹¸çš„是,當
涉åŠåˆ°å…§æ ¸æ™‚,這樣的情æ³å¾ˆå®¹æ˜“ç™¼ç”Ÿï¼Œä¸¦ä¸”å¸¸å¸¸å°Žè‡´é›™æ–¹æ°£é¤’ã€‚é€™æ˜¯å› çˆ²å¹¾ä¹Žæ‰€æœ‰é
è£åœ¨è¨å‚™ï¼ˆè‡ºå¼æ©Ÿã€ç†è¨˜æœ¬é›»è…¦ã€æ™ºèƒ½æ‰‹æ©Ÿã€è·¯ç”±å™¨ç‰ï¼‰ä¸Šçš„Linuxå…§æ ¸ï¼Œä»¥åŠå¤§å¤šæ•¸
ç”±Linux發行商æä¾›çš„å…§æ ¸ï¼Œéƒ½èˆ‡ç”±kernel.org發行的官方Linuxå…§æ ¸ç›¸è·ç”šé :從Linux
開發的角度來看,這些供應商æä¾›çš„å…§æ ¸é€šå¸¸æ˜¯å¤è€çš„或者經éŽäº†å¤§é‡ä¿®æ”¹ï¼Œé€šå¸¸å…©é»ž
兼具。
å¤§å¤šæ•¸ä¾›æ‡‰å•†å…§æ ¸éƒ½ä¸é©åˆç”¨ä¾†å‘Linuxå…§æ ¸é–‹ç™¼äººå“¡å ±å‘Šå•é¡Œï¼šæ‚¨åœ¨å…¶ä¸é‡åˆ°çš„å•é¡Œ
å¯èƒ½å·²ç¶“ç”±Linuxå…§æ ¸é–‹ç™¼äººå“¡åœ¨æ•¸æœˆæˆ–æ•¸å¹´å‰ä¿®å¾©ï¼›æ¤å¤–,供應商的修改和增強å¯èƒ½
會導致您é¢è‡¨çš„å•é¡Œï¼Œå³ä½¿å®ƒå€‘看起來很å°æˆ–者完全ä¸ç›¸é—œã€‚這就是爲什麼您應該å‘
ä¾›æ‡‰å•†å ±å‘Šé€™äº›å…§æ ¸çš„å•é¡Œã€‚å®ƒçš„é–‹ç™¼è€…æ‡‰è©²æŸ¥çœ‹å ±å‘Šï¼Œå¦‚æžœå®ƒæ˜¯ä¸€å€‹ä¸Šæ¸¸å•é¡Œï¼Œç›´æŽ¥
æ–¼ä¸Šæ¸¸ä¿®å¾©æˆ–å°‡å ±å‘Šè½‰ç™¼åˆ°é‚£è£ã€‚在實è¸ä¸ï¼Œé€™æœ‰æ™‚è¡Œä¸é€šã€‚å› æ¤ï¼Œæ‚¨å¯èƒ½éœ€è¦è€ƒæ…®
通éŽè‡ªå·±å®‰è£æœ€æ–°çš„Linuxå…§æ ¸å…§æ ¸ä¾†ç¹žéŽä¾›æ‡‰å•†ã€‚如果如果您é¸æ“‡æ¤æ–¹æ³•ï¼Œé‚£éº¼æœ¬æŒ‡
å—後é¢çš„æ¥é©Ÿå°‡è§£é‡‹å¦‚何在排除了其他å¯èƒ½å°Žè‡´æ‚¨çš„å•é¡Œçš„åŽŸå› å¾ŒåŸ·è¡Œæ¤æ“作。
注æ„å‰æ®µä½¿ç”¨çš„詞語是“大多數â€ï¼Œå› 爲有時候開發人員實際上願æ„處ç†ä¾›æ‡‰å•†å…§æ ¸å‡ºç¾
çš„å•é¡Œå ±å‘Šã€‚他們是å¦é€™éº¼åšå¾ˆå¤§ç¨‹åº¦ä¸Šå–決於開發人員和相關å•é¡Œã€‚如果發行版åª
æ ¹æ“šæœ€è¿‘çš„Linux版本å°å…§æ ¸é€²è¡Œäº†è¼ƒå°ä¿®æ”¹ï¼Œé‚£éº¼æ©Ÿæœƒå°±æ¯”較大;例如å°æ–¼Debian
GNU/Linux Sid或Fedora Rawhide所æä¾›çš„ä¸»ç·šå…§æ ¸ã€‚ä¸€äº›é–‹ç™¼äººå“¡é‚„å°‡æŽ¥å—基於最新
ç©©å®šå…§æ ¸çš„ç™¼è¡Œç‰ˆå…§æ ¸å•é¡Œå ±å‘Šï¼Œåªè¦å®ƒæ”¹å‹•ä¸å¤§ï¼›ä¾‹å¦‚Arch Linuxã€å¸¸è¦Fedora版本
å’ŒopenSUSE Turboweed。但是請記ä½ï¼Œæ‚¨æœ€å¥½ä½¿ç”¨ä¸»ç·šLinux,並é¿å…在æ¤æµç¨‹ä¸ä½¿ç”¨
ç©©å®šç‰ˆå…§æ ¸ï¼Œå¦‚â€œå®‰è£ä¸€å€‹æ–°çš„å…§æ ¸é€²è¡Œæ¸¬è©¦â€ä¸€ç¯€ä¸æ‰€è©³è¿°ã€‚
當然,您å¯ä»¥å¿½ç•¥æ‰€æœ‰é€™äº›å»ºè°ï¼Œä¸¦å‘上éŠLinuxé–‹ç™¼äººå“¡å ±å‘ŠèˆŠçš„æˆ–ç¶“éŽå¤§é‡ä¿®æ”¹çš„
ä¾›æ‡‰å•†å…§æ ¸çš„å•é¡Œã€‚但是注æ„ï¼Œé€™æ¨£çš„å ±å‘Šç¶“å¸¸è¢«æ‹’çµ•æˆ–å¿½è¦–ï¼Œæ‰€ä»¥è‡ªè¡Œå°å¿ƒè€ƒæ…®ä¸€ä¸‹ã€‚
ä¸éŽé€™é‚„æ˜¯æ¯”æ ¹æœ¬ä¸å ±å‘Šå•é¡Œè¦å¥½ï¼šæœ‰æ™‚å€™é€™æ¨£çš„å ±å‘Šæœƒç›´æŽ¥æˆ–é–“æŽ¥åœ°å¹«åŠ©è§£æ±ºä¹‹å¾Œçš„
å•é¡Œã€‚
æœç´¢ç¾æœ‰å ±å‘Šï¼ˆç¬¬ä¸€éƒ¨åˆ†ï¼‰
-------------------------
*使用您喜愛的網絡æœç´¢å¼•æ“Žå°ç¾æœ‰å ±å‘Šé€²è¡Œç²—ç•¥æœç´¢ï¼›æ¤å¤–,請檢查Linuxå…§æ ¸
郵件列表(LKML)的å˜æª”。如果找到匹é…çš„å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°å ±å‘Šã€‚*
å ±å‘Šä¸€å€‹åˆ¥äººå·²ç¶“æ出的å•é¡Œï¼Œå°æ¯å€‹äººä¾†èªªéƒ½æ˜¯æµªè²»æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½œçˆ²å ±å‘Šäººçš„ä½ ã€‚
所以徹底檢查是å¦æœ‰äººå·²ç¶“å ±å‘Šäº†é€™å€‹å•é¡Œï¼Œé€™å°ä½ 自己是有利的。在æµç¨‹ä¸çš„這一æ¥ï¼Œ
å¯ä»¥åªåŸ·è¡Œä¸€å€‹ç²—略的æœç´¢ï¼šä¸€æ—¦æ‚¨çŸ¥é“您的å•é¡Œéœ€è¦å ±å‘Šåˆ°å“ªè£ï¼Œç¨å¾Œçš„æ¥é©Ÿå°‡å‘Šè¨´
您如何詳細æœç´¢ã€‚儘管如æ¤ï¼Œä¸è¦å€‰ä¿ƒå®Œæˆé€™ä¸€æ¥ï¼Œå®ƒå¯ä»¥ç¯€çœæ‚¨çš„時間和減少麻煩。
åªéœ€å…ˆç”¨ä½ 最喜æ¡çš„æœç´¢å¼•æ“Žåœ¨äº’è¯ç¶²ä¸Šæœç´¢ã€‚然後å†æœç´¢Linuxå…§æ ¸éƒµä»¶åˆ—è¡¨ï¼ˆLKML)
å˜æª”。
如果æœç´¢çµæžœå¯¦åœ¨å¤ªå¤šï¼Œå¯ä»¥è€ƒæ…®è®“ä½ çš„æœç´¢å¼•æ“Žå°‡æœç´¢æ™‚間範åœé™åˆ¶åœ¨éŽåŽ»çš„一個
æœˆæˆ–ä¸€å¹´ã€‚è€Œä¸”ç„¡è«–ä½ åœ¨å“ªè£æœç´¢ï¼Œä¸€å®šè¦ç”¨æ°ç•¶çš„æœç´¢é—œéµè©žï¼›ä¹Ÿè¦è®ŠåŒ–幾次關éµ
詞。åŒæ™‚,試ç€å¾žåˆ¥äººçš„角度看å•é¡Œï¼šé€™å°‡å¹«åŠ©ä½ 想出其他的關éµè©žã€‚å¦å¤–,一定ä¸
è¦åŒæ™‚使用éŽå¤šçš„é—œéµè©žã€‚記ä½æœç´¢æ™‚è¦åŒæ™‚嘗試包å«å’Œä¸åŒ…å«å…§æ ¸é©…動程åºçš„å稱
或å—影響的硬件組件的å稱ç‰ä¿¡æ¯ã€‚但其確切的å“牌å稱(比如說“è¯ç¢©ç´…é” Radeon
RX 5700 XT Gaming OCâ€ï¼‰å¾€å¾€å¹«åŠ©ä¸å¤§ï¼Œå› 爲它太具體了。相å,嘗試æœç´¢è¡“語,如
型號(Radeon 5700 或 Radeon 5000ï¼‰å’Œæ ¸å¿ƒä»£è™Ÿï¼ˆâ€œNaviâ€æˆ–“Navi10â€ï¼‰ï¼Œä»¥åŠåŒ…å«
å’Œä¸åŒ…å«å…¶è£½é€ 商(“AMDâ€ï¼‰ã€‚
å¦‚æžœä½ ç™¼ç¾äº†é—œæ–¼ä½ çš„å•é¡Œçš„ç¾æœ‰å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–ï¼Œå› çˆ²ä½ å¯èƒ½æœƒæ供有價值的é¡
外信æ¯ã€‚這一點很é‡è¦ï¼Œå³ä½¿æ˜¯åœ¨ä¿®å¾©ç¨‹åºå·²ç¶“æº–å‚™å¥½æˆ–è™•æ–¼æœ€å¾ŒéšŽæ®µï¼Œå› çˆ²é–‹ç™¼äºº
å“¡å¯èƒ½æœƒå°‹æ‰¾èƒ½å¤ æä¾›é¡å¤–ä¿¡æ¯æˆ–測試建è°ä¿®å¾©ç¨‹åºçš„äººã€‚è·³åˆ°â€œç™¼ä½ˆå ±å‘Šå¾Œçš„è²¬ä»»â€
一節,çžè§£æœ‰é—œå¦‚何æ£ç¢ºåƒèˆ‡çš„細節。
注æ„,æœç´¢ `bugzilla.kernel.org <https://bugzilla.kernel.org/>`_ 網站å¯èƒ½
也是一個好主æ„ï¼Œå› çˆ²é€™å¯èƒ½æœƒæ供有價值的見解或找到匹é…çš„å ±å‘Šã€‚å¦‚æžœæ‚¨ç™¼ç¾å¾Œè€…,
請記ä½ï¼šå¤§å¤šæ•¸å系統都希望在ä¸åŒçš„ä½ç½®å ±å‘Šï¼Œå¦‚下é¢â€œä½ 需è¦å°‡å•é¡Œå ±å‘Šåˆ°ä½•è™•â€
一節ä¸æ‰€è¿°ã€‚å› æ¤æœ¬æ‡‰è™•ç†é€™å€‹å•é¡Œçš„開發人員甚至å¯èƒ½ä¸çŸ¥é“bugzilla的工單。所以
請檢查工單ä¸çš„å•é¡Œæ˜¯å¦å·²ç¶“æŒ‰ç…§æœ¬æ–‡æª”æ‰€è¿°å¾—åˆ°å ±å‘Šï¼Œå¦‚æžœæ²’æœ‰ï¼Œè«‹è€ƒæ…®é€™æ¨£åšã€‚
高優先級的å•é¡Œï¼Ÿ
-----------------
*çœ‹çœ‹ä½ æ£åœ¨è™•ç†çš„å•é¡Œæ˜¯å¦æ˜¯è¿´æ¸å•é¡Œã€å®‰å…¨å•é¡Œæˆ–éžå¸¸åš´é‡çš„å•é¡Œï¼šé€™äº›éƒ½æ˜¯
需è¦åœ¨æŽ¥ä¸‹ä¾†çš„一些æ¥é©Ÿä¸ç‰¹åˆ¥è™•ç†çš„“高優先級å•é¡Œâ€ã€‚*
Linus Torvalds和主è¦çš„Linuxå…§æ ¸é–‹ç™¼äººå“¡å¸Œæœ›çœ‹åˆ°ä¸€äº›å•é¡Œå„˜å¿«å¾—åˆ°è§£æ±ºï¼Œå› æ¤åœ¨
å ±å‘ŠéŽç¨‹ä¸æœ‰ä¸€äº›â€œé«˜å„ªå…ˆç´šå•é¡Œâ€çš„處ç†ç•¥æœ‰ä¸åŒã€‚有三種情æ³ç¬¦åˆæ¢ä»¶:è¿´æ¸ã€å®‰å…¨
å•é¡Œå’Œéžå¸¸åš´é‡çš„å•é¡Œã€‚
如果æŸå€‹æ‡‰ç”¨ç¨‹åºæˆ–實際用例在原先的Linuxå…§æ ¸ä¸Šé‹è¡Œè‰¯å¥½ï¼Œä½†åœ¨ä½¿ç”¨é¡žä¼¼é…置編è¯çš„
較新版本上效果更差ã€æˆ–è€…æ ¹æœ¬ä¸èƒ½ç”¨ï¼Œé‚£éº¼ä½ 就需è¦è™•ç†è¿´æ¸å•é¡Œã€‚
Documentation/admin-guide/reporting-regressions.rst å°æ¤é€²è¡Œäº†æ›´è©³ç´°çš„解釋。
它還æä¾›äº†å¾ˆå¤šä½ å¯èƒ½æƒ³çŸ¥é“的關於迴æ¸çš„其他信æ¯ï¼›ä¾‹å¦‚,它解釋çžå¦‚何將您的å•é¡Œ
æ·»åŠ åˆ°è¿´æ¸è·Ÿè¹¤åˆ—表ä¸ï¼Œä»¥ç¢ºä¿å®ƒä¸æœƒè¢«å¿½ç•¥ã€‚
什麼是安全å•é¡Œç•™çµ¦æ‚¨è‡ªå·±åˆ¤æ–·ã€‚在繼續之å‰ï¼Œè«‹è€ƒæ…®é–±è®€
Documentation/translations/zh_CN/admin-guide/security-bugs.rst ,
å› çˆ²å®ƒæä¾›çžå¦‚何最æ°ç•¶åœ°è™•ç†å®‰å…¨å•é¡Œçš„é¡å¤–細節。
當發生了完全無法接å—的糟糕事情時,æ¤å•é¡Œå°±æ˜¯ä¸€å€‹â€œéžå¸¸åš´é‡çš„å•é¡Œâ€ã€‚例如,
Linuxå…§æ ¸ç ´å£žäº†å®ƒè™•ç†çš„數據或æ壞了它é‹è¡Œçš„ç¡¬ä»¶ã€‚ç•¶å…§æ ¸çªç„¶é¡¯ç¤ºéŒ¯èª¤æ¶ˆæ¯
(“kernel panicâ€ï¼‰ä¸¦åœæ¢å·¥ä½œï¼Œæˆ–è€…æ ¹æœ¬æ²’æœ‰ä»»ä½•åœæ¢ä¿¡æ¯æ™‚,您也在處ç†ä¸€å€‹åš´é‡
çš„å•é¡Œã€‚注æ„:ä¸è¦æ··æ·†â€œpanicâ€ï¼ˆå…§æ ¸åœæ¢è‡ªèº«çš„致命錯誤)和“Oopsâ€ï¼ˆå¯æ¢å¾©éŒ¯èª¤ï¼‰ï¼Œ
å› çˆ²é¡¯ç¤ºå¾Œè€…ä¹‹å¾Œå…§æ ¸ä»ç„¶åœ¨é‹è¡Œã€‚
確ä¿ç’°å¢ƒå¥åº·
--------------
*確ä¿ä¸æ˜¯å…§æ ¸æ‰€è™•ç’°å¢ƒå°Žè‡´äº†ä½ 所é¢è‡¨çš„å•é¡Œã€‚*
看起來很åƒå…§æ ¸å•é¡Œçš„å•é¡Œæœ‰æ™‚是由構建或é‹è¡Œæ™‚環境引起的。很難完全排除這種å•
é¡Œï¼Œä½†ä½ æ‡‰è©²å„˜é‡æ¸›å°‘這種å•é¡Œï¼š
* æ§‹å»ºå…§æ ¸æ™‚ï¼Œè«‹ä½¿ç”¨ç¶“éŽé©—è‰çš„å·¥å…·ï¼Œå› çˆ²ç·¨è¯å™¨æˆ–二進制文件ä¸çš„錯誤å¯èƒ½æœƒå°Ž
è‡´å…§æ ¸å‡ºç¾éŒ¯èª¤è¡Œçˆ²ã€‚
* 確ä¿æ‚¨çš„計算機組件在其è¨è¨ˆè¦ç¯„å…§é‹è¡Œï¼›é€™å°è™•ç†å™¨ã€å…§å˜å’Œä¸»æ¿å°¤çˆ²é‡è¦ã€‚å›
æ¤ï¼Œç•¶é¢è‡¨æ½›åœ¨çš„å…§æ ¸å•é¡Œæ™‚,åœæ¢ä½Žé›»å£“æˆ–è¶…é »ã€‚
* 儘é‡ç¢ºä¿ä¸æ˜¯ç¡¬ä»¶æ•…éšœå°Žè‡´äº†ä½ çš„å•é¡Œã€‚例如,內å˜æ壞會導致大é‡çš„å•é¡Œï¼Œé€™äº›
å•é¡Œæœƒè¡¨ç¾çˆ²çœ‹èµ·ä¾†åƒå…§æ ¸å•é¡Œã€‚
* å¦‚æžœä½ æ£åœ¨è™•ç†ä¸€å€‹æ–‡ä»¶ç³»çµ±å•é¡Œï¼Œä½ å¯èƒ½éœ€è¦ç”¨ ``fsck`` 檢查一下文件系統,
å› çˆ²å®ƒå¯èƒ½æœƒä»¥æŸç¨®æ–¹å¼è¢«æ壞,從而導致無法é æœŸçš„å…§æ ¸è¡Œçˆ²ã€‚
* 在處ç†è¿´æ¸å•é¡Œæ™‚,è¦ç¢ºä¿æ²’æœ‰åœ¨æ›´æ–°å…§æ ¸çš„åŒæ™‚發生了其他變化。例如,這個å•
é¡Œå¯èƒ½æ˜¯ç”±åŒæ™‚更新的其他軟件引起的。也有å¯èƒ½æ˜¯åœ¨ä½ 第一次é‡å•“é€²å…¥æ–°å…§æ ¸æ™‚ï¼Œ
æŸå€‹ç¡¬ä»¶å·§åˆåœ°å£žäº†ã€‚更新系統 BIOS 或改變 BIOS è¨ç½®ä¸çš„æŸäº›å…§å®¹ä¹Ÿæœƒå°Žè‡´
一些看起來很åƒå…§æ ¸è¿´æ¸çš„å•é¡Œã€‚
爲緊急情æ³åšå¥½æº–å‚™
-------------------
*創建一個全新的備份,並將系統修復和還原工具放在手邊*
我得æ醒您,您æ£åœ¨å’Œè¨ˆç®—機打交é“,計算機有時會出ç¾æ„想ä¸åˆ°çš„事情,尤其是當
您折騰其æ“ä½œç³»çµ±çš„å…§æ ¸ç‰é—œéµéƒ¨ä»¶æ™‚ã€‚è€Œé€™å°±æ˜¯ä½ åœ¨é€™å€‹éŽç¨‹ä¸è¦åšçš„äº‹æƒ…ã€‚å› æ¤ï¼Œ
一定è¦å‰µå»ºä¸€å€‹å…¨æ–°çš„備份;還è¦ç¢ºä¿ä½ 手é 有修復或é‡è£æ“作系統的所有工具,
以åŠæ¢å¾©å‚™ä»½æ‰€éœ€çš„一切。
確ä¿ä½ çš„å…§æ ¸ä¸æœƒè¢«å¢žå¼·
------------------------
*確ä¿æ‚¨çš„系統ä¸æœƒé€šéŽå‹•æ…‹æ§‹å»ºé¡å¤–çš„å…§æ ¸æ¨¡å¡Šä¾†å¢žå¼·å…¶å…§æ ¸ï¼ŒåƒDKMS這樣的解
決方案å¯èƒ½åœ¨æ‚¨ä¸çŸ¥æƒ…的情æ³ä¸‹å°±åœ¨æœ¬åœ°é€²è¡Œäº†é€™æ¨£çš„工作。*
å¦‚æžœå…§æ ¸ä»¥ä»»ä½•æ–¹å¼å¾—到增強,那麼å•é¡Œå ±å‘Šè¢«å¿½ç•¥æˆ–æ‹’çµ•çš„é¢¨éšªå°±æœƒæ€¥åŠ‡å¢žåŠ ã€‚é€™å°±
是爲什麼您應該刪除或ç¦ç”¨åƒakmodså’ŒDKMS這樣的機制:這些機制會自動構建é¡å¤–å…§æ ¸
模塊,例如當您安è£æ–°çš„Linuxå…§æ ¸æˆ–ç¬¬ä¸€æ¬¡å¼•å°Žå®ƒæ™‚ã€‚ä¹Ÿè¦è¨˜å¾—åŒæ™‚刪除他們å¯èƒ½å®‰è£
的任何模塊。然後é‡æ–°å•“å‹•å†ç¹¼çºŒã€‚
注æ„ï¼Œä½ å¯èƒ½ä¸çŸ¥é“ä½ çš„ç³»çµ±æ£åœ¨ä½¿ç”¨é€™äº›è§£æ±ºæ–¹æ¡ˆä¹‹ä¸€ï¼šç•¶ä½ å®‰è£ Nvidia 專有圖
形驅動程åºã€VirtualBox æˆ–å…¶ä»–éœ€è¦ Linux å…§æ ¸ä»¥å¤–çš„æ¨¡å¡Šæ”¯æŒçš„軟件時,它們通
常會éœé»˜è¨ç½®ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ å¯èƒ½éœ€è¦å¸è¼‰é€™äº›è»Ÿä»¶çš„軟件包,以擺脫任何第三方
å…§æ ¸æ¨¡å¡Šã€‚
檢查“污染â€æ¨™èªŒ
----------------
*當å•é¡Œç™¼ç”Ÿæ™‚ï¼Œæª¢æŸ¥æ‚¨çš„å…§æ ¸æ˜¯å¦è¢«â€œæ±¡æŸ“â€ï¼Œå› çˆ²ä½¿å…§æ ¸è¨ç½®é€™å€‹æ¨™èªŒçš„事件å¯
能會導致您é¢è‡¨çš„å•é¡Œã€‚*
當æŸäº›å¯èƒ½æœƒå°Žè‡´çœ‹èµ·ä¾†å®Œå…¨ä¸ç›¸é—œçš„å¾ŒçºŒéŒ¯èª¤çš„äº‹æƒ…ç™¼ç”Ÿæ™‚ï¼Œå…§æ ¸æœƒç”¨â€œæ±¡æŸ“
(taint)â€æ¨™èªŒæ¨™è¨˜è‡ªå·±ã€‚å¦‚æžœæ‚¨çš„å…§æ ¸å—到污染,那麼您é¢è‡¨çš„å¯èƒ½æ˜¯é€™æ¨£çš„錯誤。
å› æ¤åœ¨æŠ•å…¥æ›´å¤šæ™‚間到這個éŽç¨‹ä¸ä¹‹å‰ï¼Œå„˜æ—©æŽ’除æ¤æƒ…æ³å¯èƒ½å°ä½ 有好處。這是這個
æ¥é©Ÿå‡ºç¾åœ¨é€™è£çš„å”¯ä¸€åŽŸå› ï¼Œå› çˆ²é€™å€‹éŽç¨‹ç¨å¾Œæœƒå‘Šè¨´æ‚¨å®‰è£æœ€æ–°çš„ä¸»ç·šå…§æ ¸ï¼›ç„¶å¾Œ
您將需è¦å†æ¬¡æª¢æŸ¥æ±¡æŸ“æ¨™èªŒï¼Œå› çˆ²ç•¶å®ƒå‡ºå•é¡Œçš„æ™‚å€™å…§æ ¸å ±å‘Šæœƒé—œæ³¨å®ƒã€‚
在æ£åœ¨é‹è¡Œçš„ç³»çµ±ä¸Šæª¢æŸ¥å…§æ ¸æ˜¯å¦æ±¡æŸ“éžå¸¸å®¹æ˜“:如果 ``cat /proc/sys/kernel/tainted``
返回“0â€ï¼Œé‚£éº¼å…§æ ¸æ²’有被污染,一切æ£å¸¸ã€‚在æŸäº›æƒ…æ³ä¸‹ç„¡æ³•æª¢æŸ¥è©²æ–‡ä»¶ï¼›é€™å°±æ˜¯
çˆ²ä»€éº¼ç•¶å…§æ ¸å ±å‘Šå…§éƒ¨å•é¡Œï¼ˆâ€œkernel bugâ€ï¼‰ã€å¯æ¢å¾©éŒ¯èª¤ï¼ˆâ€œkernel Oopsâ€ï¼‰æˆ–åœæ¢
æ“作å‰ä¸å¯æ¢å¾©çš„錯誤(“kernel panicâ€ï¼‰æ™‚,它也會æ到污染狀態。當其ä¸ä¸€å€‹éŒ¯
誤發生時,查看打å°çš„錯誤消æ¯çš„é ‚éƒ¨ï¼Œæœç´¢ä»¥â€œCPU:â€é–‹é 的行。如果發ç¾å•é¡Œæ™‚å…§
æ ¸æœªè¢«æ±¡æŸ“ï¼Œé‚£éº¼å®ƒæ‡‰è©²ä»¥â€œNot infectedâ€çµæŸï¼›å¦‚æžœä½ çœ‹åˆ°â€œTainted:â€ä¸”後跟一些
ç©ºæ ¼å’Œå—æ¯ï¼Œé‚£å°±è¢«æ±¡æŸ“了。
å¦‚æžœä½ çš„å…§æ ¸è¢«æ±¡æŸ“äº†ï¼Œè«‹é–±è®€ Documentation/translations/zh_CN/admin-guide/tainted-kernels.rst
ä»¥æ‰¾å‡ºåŽŸå› ã€‚è¨æ³•æ¶ˆé™¤æ±¡æŸ“å› ç´ ã€‚é€šå¸¸æ˜¯ç”±ä»¥ä¸‹ä¸‰ç¨®å› ç´ ä¹‹ä¸€å¼•èµ·çš„ï¼š
1. 發生了一個å¯æ¢å¾©çš„錯誤(“kernel Oopsâ€ï¼‰ï¼Œå…§æ ¸æ±¡æŸ“äº†è‡ªå·±ï¼Œå› çˆ²å…§æ ¸çŸ¥é“在
æ¤ä¹‹å¾Œå®ƒå¯èƒ½æœƒå‡ºç¾å¥‡æ€ªçš„行爲錯亂。在這種情æ³ä¸‹ï¼Œæª¢æŸ¥æ‚¨çš„å…§æ ¸æˆ–ç³»çµ±æ—¥èªŒï¼Œ
並尋找以下列文å—é–‹é 的部分::
Oops: 0000 [#1] SMP
如方括號ä¸çš„“#1â€æ‰€ç¤ºï¼Œé€™æ˜¯è‡ªå•“動以來的第一次Oops。æ¯å€‹Oopså’Œæ¤å¾Œç™¼ç”Ÿçš„
任何其他å•é¡Œéƒ½å¯èƒ½æ˜¯é¦–個Oops的後續å•é¡Œï¼Œå³ä½¿é€™å…©å€‹å•é¡Œçœ‹èµ·ä¾†å®Œå…¨ä¸ç›¸é—œã€‚
通éŽæ¶ˆé™¤é¦–個Oopsçš„åŽŸå› ä¸¦åœ¨ä¹‹å¾Œå¾©ç¾è©²å•é¡Œï¼Œå¯ä»¥æŽ’除這種情æ³ã€‚有時僅僅
é‡æ–°å•“å‹•å°±è¶³å¤ äº†ï¼Œæœ‰æ™‚æ›´æ”¹é…置後é‡æ–°å•“å‹•å¯ä»¥æ¶ˆé™¤Oops。但是在這個æµç¨‹ä¸
ä¸è¦èŠ±è²»å¤ªå¤šæ™‚é–“åœ¨é€™ä¸€é»žä¸Šï¼Œå› çˆ²å¼•èµ·Oopsçš„åŽŸå› å¯èƒ½å·²ç¶“在您ç¨å¾Œå°‡æŒ‰æµç¨‹
安è£çš„æ–°Linuxå…§æ ¸ç‰ˆæœ¬ä¸ä¿®å¾©äº†ã€‚
2. 您的系統使用的軟件安è£äº†è‡ªå·±çš„å…§æ ¸æ¨¡å¡Šï¼Œä¾‹å¦‚Nvidia的專有圖形驅動程åºæˆ–
VirtualBoxã€‚ç•¶å…§æ ¸å¾žå¤–éƒ¨æºï¼ˆå³ä½¿å®ƒå€‘是開æºçš„ï¼‰åŠ è¼‰æ¤é¡žæ¨¡å¡Šæ™‚,它會污染
自己:它們有時會在ä¸ç›¸é—œçš„å…§æ ¸å€åŸŸå°Žè‡´éŒ¯èª¤ï¼Œå¾žè€Œå¯èƒ½å°Žè‡´æ‚¨é¢è‡¨çš„å•é¡Œã€‚
å› æ¤ï¼Œç•¶æ‚¨æƒ³è¦å‘Linuxå…§æ ¸é–‹ç™¼äººå“¡å ±å‘Šå•é¡Œæ™‚ï¼Œæ‚¨å¿…é ˆé˜»æ¢é€™äº›æ¨¡å¡ŠåŠ 載。
大多數情æ³ä¸‹æœ€ç°¡å–®çš„方法是:臨時å¸è¼‰é€™äº›è»Ÿä»¶ï¼ŒåŒ…括它們å¯èƒ½å·²ç¶“安è£çš„ä»»
何模塊。之後é‡æ–°å•“動。
3. ç•¶å…§æ ¸åŠ è¼‰é§ç•™åœ¨Linuxå…§æ ¸æºä»£ç¢¼staging樹ä¸çš„模塊時,它也會污染自身。這
是一個特殊的å€åŸŸï¼Œä»£ç¢¼ï¼ˆä¸»è¦æ˜¯é©…動程åºï¼‰é‚„沒有é”到æ£å¸¸Linuxå…§æ ¸çš„è³ªé‡
æ¨™æº–ã€‚ç•¶æ‚¨å ±å‘Šæ¤ç¨®æ¨¡å¡Šçš„å•é¡Œæ™‚ï¼Œå…§æ ¸å—到污染顯然是沒有å•é¡Œçš„ï¼›åªéœ€ç¢ºä¿
å•é¡Œæ¨¡å¡Šæ˜¯é€ æˆæ±¡æŸ“çš„å”¯ä¸€åŽŸå› ã€‚å¦‚æžœå•é¡Œç™¼ç”Ÿåœ¨ä¸€å€‹ä¸ç›¸é—œçš„å€åŸŸï¼Œé‡æ–°å•“å‹•
並通éŽæŒ‡å®š ``foo.blacklist=1`` ä½œçˆ²å…§æ ¸åƒæ•¸è‡¨æ™‚阻æ¢è©²æ¨¡å¡Šè¢«åŠ 載(用有
å•é¡Œçš„模塊å替æ›â€œfooâ€ï¼‰ã€‚
記錄如何é‡ç¾å•é¡Œ
------------------
*粗略地寫下如何é‡ç¾é€™å€‹å•é¡Œã€‚如果您åŒæ™‚處ç†å¤šå€‹å•é¡Œï¼Œè«‹çˆ²æ¯å€‹å•é¡Œå–®ç¨å¯«
註釋,並確ä¿å®ƒå€‘在新啓動的系統上ç¨ç«‹å‡ºç¾ã€‚這是必è¦çš„ï¼Œå› çˆ²æ¯å€‹å•é¡Œéƒ½éœ€
è¦åˆ†åˆ¥å ±å‘Šçµ¦å…§æ ¸é–‹ç™¼äººå“¡ï¼Œé™¤éžå®ƒå€‘åš´é‡ç³¾çºåœ¨ä¸€èµ·ã€‚*
å¦‚æžœä½ åŒæ™‚處ç†å¤šå€‹å•é¡Œï¼Œå¿…é ˆåˆ†åˆ¥å ±å‘Šæ¯å€‹å•é¡Œï¼Œå› 爲它們å¯èƒ½ç”±ä¸åŒçš„開發人員
處ç†ã€‚åœ¨ä¸€ä»½å ±å‘Šä¸æ述多種å•é¡Œï¼Œä¹Ÿæœƒè®“å…¶ä»–äººé›£ä»¥å°‡å…¶åˆ†é–‹ã€‚å› æ¤åªæœ‰åœ¨å•é¡Œåš´
é‡ç³¾çºçš„情æ³ä¸‹ï¼Œæ‰èƒ½å°‡å•é¡Œåˆä½µåœ¨ä¸€ä»½å ±å‘Šä¸ã€‚
æ¤å¤–ï¼Œåœ¨å ±å‘ŠéŽç¨‹ä¸ï¼Œä½ å¿…é ˆæ¸¬è©¦è©²å•é¡Œæ˜¯å¦ç™¼ç”Ÿåœ¨å…¶ä»–å…§æ ¸ç‰ˆæœ¬ä¸Šã€‚å› æ¤ï¼Œå¦‚果您
知é“如何在一個新啓動的系統上快速é‡ç¾å•é¡Œï¼Œå°‡ä½¿æ‚¨çš„å·¥ä½œæ›´åŠ è¼•é¬†ã€‚
注æ„ï¼šå ±å‘Šåªç™¼ç”ŸéŽä¸€æ¬¡çš„å•é¡Œå¾€å¾€æ˜¯æ²’有çµæžœçš„ï¼Œå› çˆ²å®ƒå€‘å¯èƒ½æ˜¯ç”±æ–¼å®‡å®™è¼»å°„å°Ž
致的ä½ç¿»è½‰ã€‚æ‰€ä»¥ä½ æ‡‰è©²å˜—è©¦é€šéŽé‡ç¾å•é¡Œä¾†æŽ’除這種情æ³ï¼Œç„¶å¾Œå†ç¹¼çºŒã€‚å¦‚æžœä½ æœ‰
è¶³å¤ çš„ç¶“é©—ä¾†å€åˆ†ç”±æ–¼ç¡¬ä»¶æ•…障引起的一次性錯誤和難以é‡ç¾çš„ç½•è¦‹å…§æ ¸å•é¡Œï¼Œå¯ä»¥
忽略這個建è°ã€‚
穩定版或長期支æŒå…§æ ¸çš„è¿´æ¸ï¼Ÿ
-----------------------------
*如果您æ£é¢è‡¨ç©©å®šç‰ˆæˆ–長期支æŒç‰ˆæœ¬ç·šçš„è¿´æ¸ï¼ˆä¾‹å¦‚從5.10.4更新到5.10.5時出ç¾
æ•…éšœï¼‰ï¼Œè«‹æŸ¥çœ‹å¾Œæ–‡â€œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„è¿´æ¸â€å°ç¯€ã€‚*
穩定版和長期支æŒå…§æ ¸ç‰ˆæœ¬ç·šä¸çš„è¿´æ¸æ˜¯Linux開發人員éžå¸¸å¸Œæœ›è§£æ±ºçš„å•é¡Œï¼Œé€™æ¨£çš„
å•é¡Œç”šè‡³æ¯”主線開發分支ä¸çš„è¿´æ¸æ›´ä¸æ‡‰å‡ºç¾ï¼Œå› 爲它們會很快影響到很多人。開發人員
希望儘快çžè§£æ¤é¡žå•é¡Œï¼Œå› æ¤æœ‰ä¸€å€‹ç°¡åŒ–æµç¨‹ä¾†å ±å‘Šé€™äº›å•é¡Œã€‚注æ„ï¼Œä½¿ç”¨æ›´æ–°å…§æ ¸ç‰ˆ
本線的迴æ¸ï¼ˆæ¯”如從5.9.15切æ›åˆ°5.10.5時出ç¾æ•…障)ä¸ç¬¦åˆæ¢ä»¶ã€‚
ä½ éœ€è¦å°‡å•é¡Œå ±å‘Šåˆ°ä½•è™•
------------------------
*定ä½å¯èƒ½å¼•èµ·å•é¡Œçš„驅動程åºæˆ–å…§æ ¸åç³»çµ±ã€‚æ‰¾å‡ºå…¶é–‹ç™¼äººå“¡æœŸæœ›çš„å ±å‘Šçš„æ–¹å¼
å’Œä½ç½®ã€‚注æ„:大多數情æ³ä¸‹ä¸æœƒæ˜¯bugzilla.kernel.orgï¼Œå› çˆ²å•é¡Œé€šå¸¸éœ€è¦é€š
éŽéƒµä»¶ç™¼é€çµ¦ç¶è·äººå“¡å’Œå…¬å…±éƒµä»¶åˆ—表。*
å°‡å ±å‘Šç™¼é€çµ¦åˆé©çš„人是至關é‡è¦çš„ï¼Œå› çˆ²Linuxå…§æ ¸æ˜¯ä¸€å€‹å¤§é …ç›®ï¼Œå¤§å¤šæ•¸é–‹ç™¼äººå“¡
åªç†Ÿæ‚‰å…¶ä¸çš„一å°éƒ¨åˆ†ã€‚例如,相當多的程åºå“¡åªé—œå¿ƒä¸€å€‹é©…動程åºï¼Œæ¯”如一個WiFi
芯片驅動程åºï¼›å®ƒçš„開發人員å¯èƒ½å°ç–é 的或ä¸ç›¸é—œçš„“å系統â€ï¼ˆå¦‚TCPå †æ£§ã€
PCIe/PCIå系統ã€å…§å˜ç®¡ç†æˆ–文件系統)的內部知è˜çžè§£å¾ˆå°‘或完全ä¸çžè§£ã€‚
å•é¡Œåœ¨æ–¼ï¼šLinuxå…§æ ¸ç¼ºå°‘ä¸€å€‹ï¼Œå¯ä»¥ç°¡å–®åœ°å°‡å•é¡Œæ¸æª”並讓需è¦äº†è§£å®ƒçš„開發人員了
解它的,ä¸å¿ƒåŒ–ç¼ºé™·è·Ÿè¹¤å™¨ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ å¿…é ˆæ‰¾åˆ°æ£ç¢ºçš„é€”å¾‘ä¾†è‡ªå·±å ±å‘Šå•é¡Œã€‚
您å¯ä»¥åœ¨è…³æœ¬çš„幫助下åšåˆ°é€™ä¸€é»žï¼ˆè¦‹ä¸‹æ–‡ï¼‰ï¼Œä½†å®ƒä¸»è¦é‡å°çš„æ˜¯å…§æ ¸é–‹ç™¼äººå“¡å’Œå°ˆ
家。å°æ–¼å…¶ä»–人來說,MAINTAINERS(ç¶è·äººå“¡ï¼‰æ–‡ä»¶æ˜¯æ›´å¥½çš„é¸æ“‡ã€‚
如何閱讀MAINTAINERSç¶è·è€…文件
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
爲了說明如何使用 :ref:`MAINTAINERS <maintainers>` 文件,讓我們å‡è¨æ‚¨çš„ç†è¨˜
本電腦ä¸çš„WiFiåœ¨æ›´æ–°å…§æ ¸å¾Œçªç„¶å‡ºç¾äº†éŒ¯èª¤è¡Œçˆ²ã€‚這種情æ³ä¸‹å¯èƒ½æ˜¯WiFié©…å‹•çš„å•
題。顯然,它也å¯èƒ½ç”±æ–¼é©…動基於的æŸäº›ä»£ç¢¼ï¼Œä½†é™¤éžä½ 懷疑有這樣的æ±è¥¿æœƒé™„ç€åœ¨
驅動程åºä¸Šã€‚如果真的是其他的å•é¡Œï¼Œé©…動程åºçš„開發人員會讓åˆé©çš„人蔘與進來。
éºæ†¾çš„是,沒有通用且簡單的辦法來檢查哪個代碼驅動了特定硬件組件。
在WiFi驅動出ç¾å•é¡Œçš„情æ³ä¸‹ï¼Œä½ å¯èƒ½æƒ³æŸ¥çœ‹ ``lspci -k`` çš„è¼¸å‡ºï¼Œå› çˆ²å®ƒåˆ—å‡ºäº†
PCI/PCIe總線上的è¨å‚™å’Œé©…å‹•å®ƒçš„å…§æ ¸æ¨¡å¡Š::
[user@something ~]$ lspci -k
[...]
3a:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
Subsystem: Bigfoot Networks, Inc. Device 1535
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci
[...]
ä½†å¦‚æžœä½ çš„WiFi芯片通éŽUSB或其他內部總線連接,這種方法就行ä¸é€šäº†ã€‚在這種情æ³
下,您å¯èƒ½éœ€è¦æª¢æŸ¥æ‚¨çš„WiFi管ç†å™¨æˆ– ``ip link`` 的輸出。尋找有å•é¡Œçš„網絡接å£
çš„å稱,它å¯èƒ½é¡žä¼¼æ–¼â€œwlp58s0â€ã€‚æ¤å稱å¯ä»¥ç”¨ä¾†æ‰¾åˆ°é©…動它的模塊::
[user@something ~]$ realpath --relative-to=/sys/module//sys/class/net/wlp58s0/device/driver/module
ath10k_pci
如果這些技巧ä¸èƒ½é€²ä¸€æ¥å¹«åŠ©æ‚¨ï¼Œè«‹å˜—試在網上æœç´¢å¦‚何縮å°ç›¸é—œé©…動程åºæˆ–å系統
的範åœã€‚å¦‚æžœä½ ä¸ç¢ºå®šæ˜¯å“ªä¸€å€‹ï¼šè©¦ç€çŒœä¸€ä¸‹ï¼Œå³ä½¿ä½ 猜得ä¸å¥½ï¼Œä¹Ÿæœƒæœ‰äººæœƒå¹«åŠ©ä½
的。
一旦您知é“了相應的驅動程åºæˆ–å系統,您就希望在MAINTAINERS文件ä¸æœç´¢å®ƒã€‚如果
是“ath10k_pciâ€ï¼Œæ‚¨ä¸æœƒæ‰¾åˆ°ä»»ä½•æ±è¥¿ï¼Œå› 爲åç¨±å¤ªå…·é«”äº†ã€‚æœ‰æ™‚ä½ éœ€è¦åœ¨ç¶²ä¸Šå°‹æ‰¾
幫助;但在æ¤ä¹‹å‰ï¼Œè«‹å˜—試使用一個ç¨çŸæˆ–修改éŽçš„å稱來æœç´¢MAINTAINERS文件,å›
çˆ²é€™æ¨£ä½ å¯èƒ½æœƒç™¼ç¾é¡žä¼¼é€™æ¨£çš„æ±è¥¿::
QUALCOMM ATHEROS ATH10K WIRELESS DRIVER
Mail: A. Some Human <shuman@example.com>
Mailing list: ath10k@lists.infradead.org
Status: Supported
Web-page: https://wireless.wiki.kernel.org/en/users/Drivers/ath10k
SCM: git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
Files: drivers/net/wireless/ath/ath10k/
注æ„:如果您閱讀在Linuxæºä»£ç¢¼æ¨¹çš„æ ¹ç›®éŒ„ä¸æ‰¾åˆ°çš„原始ç¶è·è€…文件,則行æ述將是
縮寫。例如,“Mail:(郵件)â€å°‡æ˜¯â€œM:â€ï¼Œâ€œMailing list:(郵件列表)â€å°‡æ˜¯â€œLâ€ï¼Œ
“Status:(狀態)â€å°‡æ˜¯â€œS:â€ã€‚æ¤æ–‡ä»¶é ‚部有一段解釋了這些和其他縮寫。
首先查看“Statusâ€ç‹€æ…‹è¡Œã€‚ç†æƒ³æƒ…æ³ä¸‹ï¼Œå®ƒæ‡‰è©²å¾—到“Supported(支æŒï¼‰â€æˆ–
“Maintained(ç¶è·ï¼‰â€ã€‚如果狀態爲“Obsolete(éŽæ™‚的)â€ï¼Œé‚£éº¼ä½ 在使用一些éŽæ™‚çš„
方法,需è¦è½‰æ›åˆ°æ–°çš„解決方案上。有時候,åªæœ‰åœ¨æ„Ÿåˆ°æœ‰å‹•åŠ›æ™‚,纔會有人爲代碼
æ供“Odd Fixesâ€ã€‚如果碰見“Orphanâ€ï¼Œä½ 就完全ä¸èµ°é‹äº†ï¼Œå› 爲å†ä¹Ÿæ²’有人關心代碼
了,åªå‰©ä¸‹é€™äº›é¸é …:準備好與å•é¡Œå…±å˜ï¼Œè‡ªå·±ä¿®å¾©å®ƒï¼Œæˆ–者找一個願æ„修復它的程åºå“¡ã€‚
檢查狀態後,尋找以“bug:â€é–‹é çš„ä¸€è¡Œï¼šå®ƒå°‡å‘Šè¨´ä½ åœ¨å“ªè£å¯ä»¥æ‰¾åˆ°å系統特定的缺
陷跟蹤器來æäº¤ä½ çš„å•é¡Œã€‚上é¢çš„例å沒有æ¤è¡Œã€‚å¤§å¤šæ•¸éƒ¨åˆ†éƒ½æ˜¯é€™æ¨£ï¼Œå› çˆ² Linux
å…§æ ¸çš„é–‹ç™¼å®Œå…¨æ˜¯ç”±éƒµä»¶é©…å‹•çš„ã€‚å¾ˆå°‘æœ‰å系統使用缺陷跟蹤器,且其ä¸åªæœ‰ä¸€éƒ¨åˆ†
ä¾è³´æ–¼ bugzilla.kernel.org。
在這種以åŠå…¶ä»–很多情æ³ä¸‹ï¼Œä½ å¿…é ˆå°‹æ‰¾ä»¥â€œMail:â€é–‹é 的行。這些行æ到了特定代碼
çš„ç¶è·è€…çš„åå—和電å郵件地å€ã€‚也å¯ä»¥æŸ¥æ‰¾ä»¥â€œMailing list:â€é–‹é 的行,它告訴ä½
é–‹ç™¼ä»£ç¢¼çš„å…¬å…±éƒµä»¶åˆ—è¡¨ã€‚ä½ çš„å ±å‘Šä¹‹å¾Œéœ€è¦é€šéŽéƒµä»¶ç™¼åˆ°é€™äº›åœ°å€ã€‚å¦å¤–,å°æ–¼æ‰€æœ‰
通éŽé›»å郵件發é€çš„å•é¡Œå ±å‘Šï¼Œä¸€å®šè¦æŠ„é€ Linux Kernel Mailing List(LKML)
<linux-kernel@vger.kernel.org>。在以後通éŽéƒµä»¶ç™¼é€å•é¡Œå ±å‘Šæ™‚,ä¸è¦éºæ¼ä»»ä½•
一個郵件列表!ç¶è·è€…都是大忙人,å¯èƒ½æœƒæŠŠä¸€äº›å·¥ä½œç•™çµ¦å系統特定列表上的其他開
發者;而 LKML 很é‡è¦ï¼Œå› 爲需è¦ä¸€å€‹å¯ä»¥æ‰¾åˆ°æ‰€æœ‰å•é¡Œå ±å‘Šçš„地方。
藉助腳本找到ç¶è·è€…
~~~~~~~~~~~~~~~~~~~~
å°æ–¼æ‰‹é 有Linuxæºç¢¼çš„人來說,有第二個å¯ä»¥æ‰¾åˆ°åˆé©çš„å ±å‘Šåœ°é»žçš„é¸æ“‡ï¼šè…³æœ¬
“scripts/get_maintainer.plâ€ï¼Œå®ƒå˜—試找到所有è¦è¯ç¹«çš„人。它會查詢MAINTAINERS
文件,並需è¦ç”¨ç›¸é—œæºä»£ç¢¼çš„路徑來調用。å°æ–¼ç·¨è¯æˆæ¨¡å¡Šçš„驅動程åºï¼Œç¶“常å¯ä»¥ç”¨
這樣的命令找到::
$ modinfo ath10k_pci | grep filename | sed 's!/lib/modules/.*/kernel/!!; s!filename:!!; s!\.ko\(\|\.xz\)!!'
drivers/net/wireless/ath/ath10k/ath10k_pci.ko
將其ä¸çš„部分內容傳éžçµ¦è…³æœ¬::
$ ./scripts/get_maintainer.pl -f drivers/net/wireless/ath/ath10k*
Some Human <shuman@example.com> (supporter:QUALCOMM ATHEROS ATH10K WIRELESS DRIVER)
Another S. Human <asomehuman@example.com> (maintainer:NETWORKING DRIVERS)
ath10k@lists.infradead.org (open list:QUALCOMM ATHEROS ATH10K WIRELESS DRIVER)
linux-wireless@vger.kernel.org (open list:NETWORKING DRIVERS (WIRELESS))
netdev@vger.kernel.org (open list:NETWORKING DRIVERS)
linux-kernel@vger.kernel.org (open list)
ä¸è¦æŠŠä½ çš„å ±å‘Šç™¼çµ¦æ‰€æœ‰çš„äººã€‚ç™¼é€çµ¦ç¶è·è€…,腳本稱之爲“supporter:â€ï¼›å¦å¤–抄é€
ä»£ç¢¼æœ€ç›¸é—œçš„éƒµä»¶åˆ—è¡¨ï¼Œä»¥åŠ Linux å…§æ ¸éƒµä»¶åˆ—è¡¨ï¼ˆLKML)。在æ¤ä¾‹ä¸ï¼Œä½ 需è¦å°‡å ±
告發é€çµ¦ “Some Human <shuman@example.com>†,並抄é€
“ath10k@lists.infradead.orgâ€å’Œâ€œlinux-kernel@vger.kernel.orgâ€ã€‚
注æ„ï¼šå¦‚æžœä½ ç”¨ git 克隆了 Linux æºä»£ç¢¼ï¼Œä½ å¯èƒ½éœ€è¦ç”¨--git å†æ¬¡èª¿ç”¨
get_maintainer.pl。腳本會查看æ交æ·å²ï¼Œä»¥æ‰¾åˆ°æœ€è¿‘哪些人蔘與了相關代碼的編寫,
å› çˆ²ä»–å€‘å¯èƒ½æœƒæ供幫助。但è¦å°å¿ƒä½¿ç”¨é€™äº›çµæžœï¼Œå› çˆ²å®ƒå¾ˆå®¹æ˜“è®“ä½ èª¤å…¥æ§é€”。
例如,這種情æ³å¸¸å¸¸æœƒç™¼ç”Ÿåœ¨å¾ˆå°‘被修改的地方(比如è€èˆŠçš„或未ç¶è·çš„驅動程åºï¼‰ï¼š
有時這樣的代碼會在樹級清ç†æœŸé–“è¢«æ ¹æœ¬ä¸é—œå¿ƒæ¤é©…動程åºçš„開發者修改。
æœç´¢ç¾æœ‰å ±å‘Šï¼ˆç¬¬äºŒéƒ¨åˆ†ï¼‰
--------------------------
*在缺陷追蹤器或å•é¡Œç›¸é—œéƒµä»¶åˆ—表的å˜æª”ä¸å¾¹åº•æœç´¢å¯èƒ½èˆ‡æ‚¨çš„å•é¡ŒåŒ¹é…çš„å ±å‘Šã€‚
如果找到匹é…çš„å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°å ±å‘Šã€‚*
如å‰æ‰€è¿°ï¼šå ±å‘Šä¸€å€‹åˆ¥äººå·²ç¶“æ出的å•é¡Œï¼Œå°æ¯å€‹äººä¾†èªªéƒ½æ˜¯æµªè²»æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½œçˆ²å ±å‘Š
äººçš„ä½ ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ æ‡‰è©²å†æ¬¡æœç´¢ç¾æœ‰çš„å ±å‘Šã€‚ç¾åœ¨ä½ 已經知é“å•é¡Œéœ€è¦å ±å‘Šåˆ°å“ªè£ã€‚
如果是郵件列表,那麼一般在 `lore.kernel.org <https://lore.kernel.org/>`_ å¯ä»¥
找到相應å˜æª”。
但有些列表é‹è¡Œåœ¨å…¶ä»–地方。例如å‰é¢æ¥é©Ÿä¸ç•¶ä¾‹åçš„ath10k WiFi驅動程åºå°±æ˜¯é€™ç¨®
情æ³ã€‚ä½†æ˜¯ä½ é€šå¸¸å¯ä»¥åœ¨ç¶²ä¸Šå¾ˆå®¹æ˜“地找到這些列表的檔案。例如æœç´¢â€œarchive
ath10k@lists.infradead.orgâ€ï¼Œå°‡å¼•å°Žæ‚¨åˆ°ath10k郵件列表的信æ¯é ,該é é¢é ‚部éˆæŽ¥
到其 `列表å˜æª” <https://lists.infradead.org/pipermail/ath10k/>`_ 。éºæ†¾çš„是,
這個列表和其他一些列表缺ä¹æœç´¢å…¶å˜æª”的功能。在這種情æ³ä¸‹å¯ä»¥ä½¿ç”¨å¸¸è¦çš„互è¯ç¶²
æœç´¢å¼•æ“Žï¼Œä¸¦æ·»åŠ 類似“site:lists.infadead.org/pipermail/ath10k/â€é€™
樣的æœç´¢æ¢ä»¶ï¼Œé€™æœƒæŠŠçµæžœé™åˆ¶åœ¨è©²éˆæŽ¥ä¸çš„檔案。
也請進一æ¥æœç´¢ç¶²çµ¡ã€LKMLå’Œbugzilla.kernel.orgç¶²ç«™ã€‚å¦‚æžœä½ çš„å ±å‘Šéœ€è¦ç™¼é€åˆ°ç¼ºé™·
跟蹤器ä¸ï¼Œé‚£éº¼æ‚¨å¯èƒ½é‚„需è¦æª¢æŸ¥å系統的郵件列表å˜æª”ï¼Œå› çˆ²å¯èƒ½æœ‰äººåªåœ¨é‚£è£å ±å‘Šäº†å®ƒã€‚
有關如何æœç´¢ä»¥åŠåœ¨æ‰¾åˆ°åŒ¹é…å ±å‘Šæ™‚å¦‚ä½•æ“作的詳細信æ¯ï¼Œè«‹åƒé–±ä¸Šé¢çš„“æœç´¢ç¾æœ‰å ±å‘Š
(第一部分)â€ã€‚
ä¸è¦æ€¥ç€å®Œæˆå ±å‘ŠéŽç¨‹çš„這一æ¥ï¼šèŠ±30到60分é˜ç”šè‡³æ›´å¤šçš„時間å¯ä»¥çˆ²ä½ å’Œå…¶ä»–äººç¯€çœ /
減少相當多的時間和麻煩。
安è£ä¸€å€‹æ–°çš„å…§æ ¸é€²è¡Œæ¸¬è©¦
--------------------------
*除éžæ‚¨å·²ç¶“在é‹è¡Œæœ€æ–°çš„“主線â€Linuxå…§æ ¸ï¼Œå¦å‰‡æœ€å¥½åœ¨å ±å‘Šæµç¨‹å‰å®‰è£å®ƒã€‚在
æŸäº›æƒ…æ³ä¸‹ï¼Œä½¿ç”¨æœ€æ–°çš„“穩定版â€Linuxé€²è¡Œæ¸¬è©¦å’Œå ±å‘Šä¹Ÿæ˜¯å¯ä»¥æŽ¥å—的替代方案;
在åˆä½µçª—å£æœŸé–“,這實際上å¯èƒ½æ˜¯æœ€å¥½çš„方法,但在開發階段最好還是暫åœå¹¾å¤©ã€‚
ç„¡è«–ä½ é¸æ“‡ä»€éº¼ç‰ˆæœ¬ï¼Œæœ€å¥½ä½¿ç”¨â€œæ™®é€šâ€æ§‹å»ºã€‚忽略這些建è°æœƒå¤§å¤§å¢žåŠ æ‚¨çš„å ±å‘Š
被拒絕或忽略的風險。*
æ£å¦‚第一æ¥çš„詳細解釋ä¸æ‰€æ到的:與大多數程åºå“¡ä¸€æ¨£ï¼Œèˆ‡å¤§å¤šæ•¸ç¨‹åºå“¡ä¸€æ¨£ï¼ŒLinux
å…§æ ¸é–‹ç™¼äººå“¡ä¸å–œæ¡èŠ±æ™‚間處ç†ä»–們ç¶è·çš„æºä»£ç¢¼ä¸æ ¹æœ¬ä¸æœƒç™¼ç”Ÿçš„å•é¡Œçš„å ±å‘Šã€‚é€™éš»
會浪費æ¯å€‹äººçš„æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½ çš„æ™‚é–“ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼åœ¨å ±å‘Šå•é¡Œä¹‹å‰ï¼Œæ‚¨å¿…é ˆå…ˆç¢ºèª
å•é¡Œä»ç„¶å˜åœ¨æ–¼æœ€æ–°çš„上游代碼ä¸ï¼Œé€™ç¬¦åˆæ¯å€‹äººçš„利益。您å¯ä»¥å¿½ç•¥æ¤å»ºè°ï¼Œä½†å¦‚å‰
所述:這樣åšæœƒæ¥µå¤§åœ°å¢žåŠ å•é¡Œå ±å‘Šè¢«æ‹’絕或被忽略的風險。
å…§æ ¸â€œæœ€æ–°ä¸Šæ¸¸â€çš„範åœé€šå¸¸æŒ‡ï¼š
* 安è£ä¸€å€‹ä¸»ç·šå…§æ ¸ï¼›æœ€æ–°çš„ç©©å®šç‰ˆå…§æ ¸ä¹Ÿå¯ä»¥æ˜¯ä¸€å€‹é¸æ“‡ï¼Œä½†å¤§å¤šæ•¸æ™‚候都最好é¿å…。
長期支æŒå…§æ ¸ï¼ˆæœ‰æ™‚稱爲“LTSå…§æ ¸â€ï¼‰ä¸é©åˆæ¤æµç¨‹ã€‚下一å°ç¯€å°‡æ›´è©³ç´°åœ°è§£é‡‹æ‰€æœ‰
這些。
* 下一å°ç¯€æè¿°ç²å–和安è£é€™æ¨£ä¸€å€‹å…§æ ¸çš„方法。它還指出了使用é ç·¨è¯å…§æ ¸æ˜¯å¯ä»¥çš„,
ä½†æ™®é€šçš„å…§æ ¸æ›´å¥½ï¼Œé€™æ„味ç€ï¼šå®ƒæ˜¯ç›´æŽ¥ä½¿ç”¨å¾ž `kernel.org <https://kernel.org/>`_
ç²å¾—çš„Linuxæºä»£ç¢¼æ§‹å»ºä¸¦ä¸”沒有任何方å¼ä¿®æ”¹æˆ–增強。
é¸æ“‡é©åˆæ¸¬è©¦çš„版本
~~~~~~~~~~~~~~~~~~~~
å‰å¾€ `kernel.org <https://kernel.org/>`_ 來決定使用哪個版本。忽略那個寫ç€
“Latest release最新版本â€çš„å·¨å¤§é»ƒè‰²æŒ‰éˆ•ï¼Œå¾€ä¸‹çœ‹æœ‰ä¸€å€‹è¡¨æ ¼ã€‚åœ¨è¡¨æ ¼çš„é ‚éƒ¨ï¼Œä½ æœƒ
看到一行以“mainlineâ€é–‹é çš„å—樣,大多數情æ³ä¸‹å®ƒæœƒæŒ‡å‘一個版本號類似“5.8-rc2â€
çš„é ç™¼ä½ˆç‰ˆæœ¬ã€‚å¦‚æžœæ˜¯é€™æ¨£çš„è©±ï¼Œä½ å°‡éœ€è¦ä½¿ç”¨é€™å€‹ä¸»ç·šå…§æ ¸é€²è¡Œæ¸¬è©¦ã€‚ä¸è¦è®““rcâ€
åš‡åˆ°ä½ ï¼Œé€™äº›â€œé–‹ç™¼ç‰ˆå…§æ ¸â€å¯¦éš›ä¸Šéžå¸¸å¯é â€”â€”è€Œä¸”ä½ å·²ç¶“æŒ‰ç…§ä¸Šé¢çš„指示åšäº†å‚™ä»½ï¼Œ
ä¸æ˜¯å—Žï¼Ÿ
大概æ¯ä¹åˆ°å週,“mainlineâ€å¯èƒ½æœƒçµ¦ä½ 指出一個版本號類似“5.7â€çš„æ£å¼ç‰ˆæœ¬ã€‚如果
碰見這種情æ³ï¼Œè«‹è€ƒæ…®æš«åœå ±å‘ŠéŽç¨‹ï¼Œç›´åˆ°ä¸‹ä¸€å€‹ç‰ˆæœ¬çš„第一個é 發佈(5.8-rc1)出
ç¾åœ¨ `kernel.org <https://kernel.org/>`_ ä¸Šã€‚é€™æ˜¯å› çˆ² Linux 的開發週期æ£åœ¨
兩週的“åˆä½µçª—å£â€å…§ã€‚大部分的改動和所有干擾性的改動都會在這段時間內被åˆä½µåˆ°
下一個版本ä¸ã€‚在æ¤æœŸé–“使用主線是比較å±éšªçš„ã€‚å…§æ ¸é–‹ç™¼è€…é€šå¸¸ä¹Ÿå¾ˆå¿™ï¼Œå¯èƒ½æ²’有
多餘的時間來處ç†å•é¡Œå ±å‘Šã€‚這也是很有å¯èƒ½åœ¨åˆä½µçª—å£ä¸æ‡‰ç”¨äº†è¨±å¤šä¿®æ”¹ä¾†ä¿®å¾©ä½
所é¢è‡¨çš„å•é¡Œï¼›é€™å°±æ˜¯çˆ²ä»€éº¼ä½ å¾ˆå¿«å°±å¾—ç”¨ä¸€å€‹æ–°çš„å…§æ ¸ç‰ˆæœ¬é‡æ–°æ¸¬è©¦ï¼Œå°±åƒä¸‹é¢â€œç™¼
å¸ƒå ±å‘Šå¾Œçš„è²¬ä»»â€ä¸€ç¯€ä¸æ‰€è¿°çš„那樣。
這就是爲什麼è¦ç‰åˆ°åˆä½µçª—å£çµæŸå¾Œçº”去åšã€‚ä½†æ˜¯å¦‚æžœä½ è™•ç†çš„是一些ä¸æ‡‰è©²ç‰å¾…çš„
æ±è¥¿ï¼Œå‰‡ç„¡éœ€é€™æ¨£åšã€‚在這種情æ³ä¸‹ï¼Œå¯ä»¥è€ƒæ…®é€šéŽ git ç²å–æœ€æ–°çš„ä¸»ç·šå…§æ ¸ï¼ˆè¦‹ä¸‹
文),或者使用 kernel.org 上æ供的最新穩定版本。如果 mainline å› çˆ²æŸäº›åŽŸå›
ä¸ç„¡æ³•æ£å¸¸å·¥ä½œï¼Œé‚£éº¼ä½¿ç”¨å®ƒä¹Ÿæ˜¯å¯ä»¥æŽ¥å—的。總的來說:用它來é‡ç¾å•é¡Œä¹Ÿæ¯”完全
ä¸å ±å‘Šå•é¡Œè¦å¥½ã€‚
最好é¿å…在åˆä½µçª—å£å¤–ä½¿ç”¨æœ€æ–°çš„ç©©å®šç‰ˆå…§æ ¸ï¼Œå› çˆ²æ‰€æœ‰ä¿®å¾©éƒ½å¿…é ˆé¦–å…ˆæ‡‰ç”¨æ–¼ä¸»ç·šã€‚
é€™å°±æ˜¯çˆ²ä»€éº¼æª¢æŸ¥æœ€æ–°çš„ä¸»ç·šå…§æ ¸æ˜¯å¦‚æ¤é‡è¦ï¼šä½ 希望看到在舊版本線修復的任何å•é¡Œ
需è¦å…ˆåœ¨ä¸»ç·šä¿®å¾©ï¼Œç„¶å¾Œæ‰èƒ½å¾—到回傳,這å¯èƒ½éœ€è¦å¹¾å¤©æˆ–幾周。å¦ä¸€å€‹åŽŸå› 是:您
希望的修復å°æ–¼å›žå‚³ä¾†èªªå¯èƒ½å¤ªé›£æˆ–å¤ªå†’éšªï¼›å› æ¤å†æ¬¡å ±å‘Šå•é¡Œä¸å¤ªå¯èƒ½æ”¹è®Šä»»ä½•äº‹æƒ…。
這些方é¢ä¹Ÿéƒ¨åˆ†è¡¨æ˜Žäº†çˆ²ä»€éº¼é•·æœŸæ”¯æŒå…§æ ¸ï¼ˆæœ‰æ™‚稱爲“LTSå…§æ ¸â€ï¼‰ä¸é©åˆå ±å‘Šæµç¨‹ï¼š
它們與當å‰ä»£ç¢¼çš„è·é›¢å¤ªé ã€‚å› æ¤ï¼Œå…ˆåŽ»æ¸¬è©¦ä¸»ç·šï¼Œç„¶å¾Œå†æŒ‰æµç¨‹èµ°ï¼šå¦‚果主線沒有
出ç¾å•é¡Œï¼Œæµç¨‹å°‡æŒ‡å°Žæ‚¨å¦‚何在舊版本線ä¸ä¿®å¾©å®ƒã€‚
如何ç²å¾—æ–°çš„ Linux å…§æ ¸
~~~~~~~~~~~~~~~~~~~~~~~~~
ä½ å¯ä»¥ä½¿ç”¨é ç·¨è¯æˆ–自編è¯çš„å…§æ ¸é€²è¡Œæ¸¬è©¦ï¼›å¦‚æžœä½ é¸æ“‡å¾Œè€…,å¯ä»¥ä½¿ç”¨ git ç²å–æº
代碼,或者下載其 tar å˜æª”包。
**使用é ç·¨è¯çš„å…§æ ¸** :這往往是最快速ã€æœ€ç°¡å–®ã€æœ€å®‰å…¨çš„æ–¹æ³•â€”â€”å°¤å…¶æ˜¯åœ¨ä½ ä¸ç†Ÿ
悉 Linux å…§æ ¸çš„æƒ…æ³ä¸‹ã€‚å•é¡Œæ˜¯ï¼šç™¼è¡Œå•†æˆ–é™„åŠ å˜å„²åº«æ供的大多數版本都是從修改
éŽçš„Linuxæºä»£ç¢¼æ§‹å»ºçš„ã€‚å› æ¤å®ƒå€‘ä¸æ˜¯æ™®é€šçš„,通常ä¸é©åˆæ–¼æ¸¬è©¦å’Œå•é¡Œå ±å‘Šï¼šé€™äº›
更改å¯èƒ½æœƒå°Žè‡´æ‚¨é¢è‡¨çš„å•é¡Œæˆ–以æŸç¨®æ–¹å¼å½±éŸ¿å•é¡Œã€‚
但是如果您使用的是æµè¡Œçš„Linux發行版,那麼您就很幸é‹äº†ï¼šå°æ–¼å¤§éƒ¨åˆ†çš„發行版,
您å¯ä»¥åœ¨ç¶²ä¸Šæ‰¾åˆ°åŒ…å«æœ€æ–°ä¸»ç·šæˆ–穩定版本Linuxå…§æ ¸åŒ…çš„å˜å„²åº«ã€‚使用這些是完全å¯
以的,åªè¦å¾žå˜å„²åº«çš„æè¿°ä¸ç¢ºèªå®ƒå€‘是普通的或者至少接近普通。æ¤å¤–,請確ä¿è»Ÿä»¶
包包å«kernel.org上æä¾›çš„æœ€æ–°ç‰ˆæœ¬å…§æ ¸ã€‚å¦‚æžœé€™äº›è»Ÿä»¶åŒ…çš„æ™‚é–“è¶…éŽä¸€é€±ï¼Œé‚£éº¼å®ƒå€‘
å¯èƒ½å°±ä¸åˆé©äº†ï¼Œå› çˆ²æ–°çš„ä¸»ç·šå’Œç©©å®šç‰ˆå…§æ ¸é€šå¸¸è‡³å°‘æ¯é€±ç™¼ä½ˆä¸€æ¬¡ã€‚
請注æ„,您以後å¯èƒ½éœ€è¦æ‰‹å‹•æ§‹å»ºè‡ªå·±çš„å…§æ ¸ï¼šæœ‰æ™‚é€™æ˜¯èª¿è©¦æˆ–æ¸¬è©¦ä¿®å¾©ç¨‹åºæ‰€å¿…需的,
如後文所述。還è¦æ³¨æ„,é ç·¨è¯çš„å…§æ ¸å¯èƒ½ç¼ºå°‘在出ç¾panicã€Oopsã€warning或BUG時
è§£ç¢¼å…§æ ¸æ‰“å°çš„消æ¯æ‰€éœ€çš„調試符號;如果您計劃解碼這些消æ¯ï¼Œæœ€å¥½è‡ªå·±ç·¨è¯å…§æ ¸
(有關詳細信æ¯ï¼Œè«‹åƒé–±æœ¬å°ç¯€çµå°¾å’Œâ€œè§£ç¢¼å¤±æ•—ä¿¡æ¯â€å°ç¯€ï¼‰ã€‚
**使用git** :熟悉 git 的開發者和有經驗的 Linux 用戶通常最好直接從
`kernel.org 上的官方開發倉庫
<https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/>`_
ä¸ç²å–最新的 Linux å…§æ ¸æºä»£ç¢¼ã€‚這些很å¯èƒ½æ¯”最新的主線é 發佈版本更新一些。ä¸
用擔心:它們和æ£å¼çš„é 發佈版本一樣å¯é ,除éžå…§æ ¸çš„開發週期目å‰æ£è™•æ–¼åˆä½µçª—
å£ä¸ã€‚ä¸éŽå³ä¾¿å¦‚æ¤ï¼Œå®ƒå€‘也是相當å¯é 的。
**常è¦æ–¹æ³•** :ä¸ç†Ÿæ‚‰ git 的人通常最好從 `kernel.org <https://kernel.org/>`_
下載æºç¢¼çš„tar å˜æª”包。
å¦‚ä½•å¯¦éš›æ§‹å»ºä¸€å€‹å…§æ ¸ä¸¦ä¸åœ¨é€™è£æè¿°ï¼Œå› çˆ²è¨±å¤šç¶²ç«™å·²ç¶“è§£é‡‹äº†å¿…è¦çš„æ¥é©Ÿã€‚如果
ä½ æ˜¯æ–°æ‰‹ï¼Œå¯ä»¥è€ƒæ…®æŒ‰ç…§é‚£äº›å»ºè°ä½¿ç”¨ ``make localmodconfig`` 來åšï¼Œå®ƒå°‡å˜—試ç²
å–ä½ ç•¶å‰å…§æ ¸çš„é…ç½®ï¼Œç„¶å¾Œæ ¹æ“šä½ çš„ç³»çµ±é€²è¡Œä¸€äº›èª¿æ•´ã€‚é€™æ¨£åšä¸¦ä¸èƒ½ä½¿ç·¨è¯å‡ºä¾†çš„
å…§æ ¸æ›´å¥½ï¼Œä½†å¯ä»¥æ›´å¿«åœ°ç·¨è¯ã€‚
注æ„:如果您æ£åœ¨è™•ç†ä¾†è‡ªå…§æ ¸çš„panncã€Oopsã€warning或BUG,請在é…ç½®å…§æ ¸æ™‚å˜—è©¦
啓用 CONFIG_KALLSYMS é¸é …。æ¤å¤–,還å¯ä»¥å•“用 CONFIG_DEBUG_KERNEL å’Œ
CONFIG_DEBUG_INFO;後者是相關é¸é …,但åªæœ‰å•“用å‰è€…æ‰èƒ½é–‹å•“。請注æ„,
CONFIG_DEBUG_INFO 會需è¦æ›´å¤šå„²å˜ç©ºé–“ä¾†æ§‹å»ºå…§æ ¸ã€‚ä½†é€™æ˜¯å€¼å¾—çš„ï¼Œå› çˆ²é€™äº›é¸é …å°‡
å…許您ç¨å¾Œç²¾ç¢ºå®šä½è§¸ç™¼å•é¡Œçš„確切代碼行。下é¢çš„“解碼失敗信æ¯â€ä¸€ç¯€å°æ¤é€²è¡Œäº†æ›´
詳細的解釋。
但請記ä½ï¼šå§‹çµ‚記錄é‡åˆ°çš„å•é¡Œï¼Œä»¥é˜²é›£ä»¥é‡ç¾ã€‚發é€æœªè§£ç¢¼çš„å ±å‘Šç¸½æ¯”ä¸å ±å‘Šè¦å¥½ã€‚
檢查“污染â€æ¨™èªŒ
----------------
*確ä¿æ‚¨å‰›å‰›å®‰è£çš„å…§æ ¸åœ¨é‹è¡Œæ™‚ä¸æœƒâ€œæ±¡æŸ“â€è‡ªå·±ã€‚*
æ£å¦‚上é¢å·²ç¶“詳細介紹éŽçš„:當發生一些å¯èƒ½æœƒå°Žè‡´ä¸€äº›çœ‹èµ·ä¾†å®Œå…¨ä¸ç›¸é—œçš„後續錯
èª¤çš„äº‹æƒ…æ™‚ï¼Œå…§æ ¸æœƒè¨ç½®ä¸€å€‹â€œæ±¡æŸ“â€æ¨™èªŒã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ éœ€è¦æª¢æŸ¥ä½ 剛剛安è£çš„å…§
æ ¸æ˜¯å¦æœ‰è¨ç½®æ¤æ¨™èªŒã€‚如果有的話,幾乎在任何情æ³ä¸‹ä½ 都需è¦åœ¨å ±å‘Šå•é¡Œä¹‹å‰å…ˆæ¶ˆ
除它。詳細的æ“作方法請看上é¢çš„ç« ç¯€ã€‚
ç”¨æ–°å…§æ ¸é‡ç¾å•é¡Œ
------------------
*在您剛剛安è£çš„å…§æ ¸ä¸å¾©ç¾é€™å€‹å•é¡Œã€‚如果它沒有出ç¾ï¼Œè«‹æŸ¥çœ‹ä¸‹æ–¹åªç™¼ç”Ÿåœ¨
穩定版和長期支æŒå…§æ ¸çš„å•é¡Œçš„說明。*
檢查這個å•é¡Œæ˜¯å¦ç™¼ç”Ÿåœ¨ä½ 剛剛安è£çš„æ–° Linux å…§æ ¸ç‰ˆæœ¬ä¸Šã€‚å¦‚æžœæ–°å…§æ ¸å·²ç¶“ä¿®å¾©äº†ï¼Œ
å¯ä»¥è€ƒæ…®ä½¿ç”¨æ¤ç‰ˆæœ¬ç·šï¼Œæ”¾æ£„å ±å‘Šå•é¡Œã€‚但是請記ä½ï¼Œåªè¦å®ƒæ²’有在 `kernel.org
<https://kernel.org/>`_ 的穩定版和長期版(以åŠç”±é€™äº›ç‰ˆæœ¬è¡ç”Ÿå‡ºä¾†çš„å» å•†å…§æ ¸ï¼‰
ä¸å¾—到修復,其他用戶å¯èƒ½ä»ç„¶æœƒå—åˆ°å®ƒçš„å›°æ“¾ã€‚å¦‚æžœä½ å–œæ¡ä½¿ç”¨å…¶ä¸çš„一個,或
者åªæ˜¯æƒ³å¹«åŠ©å®ƒå€‘的用戶,請å‰å¾€ä¸‹é¢çš„â€œå ±å‘Šåªç™¼ç”Ÿåœ¨è¼ƒèˆŠå…§æ ¸ç‰ˆæœ¬ç·šçš„å•é¡Œâ€ä¸€ç¯€ã€‚
優化復ç¾å•é¡Œçš„æè¿°
--------------------
*å„ªåŒ–ä½ çš„ç†è¨˜ï¼šè©¦ç€æ‰¾åˆ°ä¸¦å¯«å‡ºæœ€ç›´æŽ¥çš„復ç¾å•é¡Œçš„方法。確ä¿æœ€çµ‚çµæžœåŒ…å«æ‰€
有é‡è¦çš„細節,åŒæ™‚讓第一次è½èªªçš„人容易閱讀和ç†è§£ã€‚如果您在æ¤éŽç¨‹ä¸å¸åˆ°
了一些æ±è¥¿ï¼Œè«‹è€ƒæ…®å†æ¬¡æœç´¢é—œæ–¼è©²å•é¡Œçš„ç¾æœ‰å ±å‘Šã€‚*
éŽæ–¼è¤‡é›œçš„å ±å‘Šæœƒè®“åˆ¥äººå¾ˆé›£ç†è§£ã€‚å› æ¤è«‹å„˜é‡æ‰¾åˆ°ä¸€å€‹å¯ä»¥ç›´æŽ¥æè¿°ã€æ˜“於以書é¢
å½¢å¼ç†è§£çš„å†ç¾æ–¹æ³•ã€‚包å«æ‰€æœ‰é‡è¦çš„細節,但åŒæ™‚也è¦å„˜é‡ä¿æŒç°¡çŸã€‚
在這在å‰é¢çš„æ¥é©Ÿä¸ï¼Œä½ 很å¯èƒ½å·²ç¶“çžè§£äº†ä¸€äº›é—œæ–¼ä½ 所é¢è‡¨çš„å•é¡Œçš„點。利用這些
知è˜ï¼Œå†æ¬¡æœç´¢å¯ä»¥è½‰è€ŒåŠ 入的ç¾æœ‰å ±å‘Šã€‚
解碼失敗信æ¯
-------------
*如果失敗涉åŠâ€œpanicâ€ã€â€œOopsâ€ã€â€œwarningâ€æˆ–“BUGâ€ï¼Œè«‹è€ƒæ…®è§£ç¢¼å…§æ ¸æ—¥èªŒä»¥æŸ¥æ‰¾
觸發錯誤的代碼行。*
ç•¶å…§æ ¸æª¢æ¸¬åˆ°å…§éƒ¨å•é¡Œæ™‚,它會記錄一些有關已執行代碼的信æ¯ã€‚這使得在æºä»£ç¢¼ä¸ç²¾
確定ä½è§¸ç™¼å•é¡Œçš„行並顯示如何調用它æˆçˆ²å¯èƒ½ã€‚但åªæœ‰åœ¨é…ç½®å…§æ ¸æ™‚å•“ç”¨äº†
CONFIG_DEBUG_INFO å’Œ CONFIG_KALLSYMSé¸é …時,這種方法æ‰èµ·æ•ˆã€‚如果已啓用æ¤é¸é …,
è«‹è€ƒæ…®è§£ç¢¼å…§æ ¸æ—¥èªŒä¸çš„ä¿¡æ¯ã€‚這將使我們更容易ç†è§£æ˜¯ä»€éº¼å°Žè‡´äº†â€œpanicâ€ã€â€œOopsâ€ã€
“warningâ€æˆ–“BUGâ€ï¼Œå¾žè€Œå¢žåŠ 了有人æ供修復的幾率。
解碼å¯ä»¥é€šéŽLinuxæºä»£ç¢¼æ¨¹ä¸çš„腳本來完æˆã€‚如果您é‹è¡Œçš„å…§æ ¸æ˜¯ä¹‹å‰è‡ªå·±ç·¨è¯çš„,
這樣這樣調用它::
[user@something ~]$ sudo dmesg | ./linux-5.10.5/scripts/decode_stacktrace.sh ./linux-5.10.5/vmlinux
/usr/lib/debug/lib/modules/5.10.10-4.1.x86_64/vmlinux /usr/src/kernels/5.10.10-4.1.x86_64/
如果您é‹è¡Œçš„æ˜¯æ‰“åŒ…å¥½çš„æ™®é€šå…§æ ¸ï¼Œå‰‡å¯èƒ½éœ€è¦å®‰è£å¸¶æœ‰èª¿è©¦ç¬¦è™Ÿçš„相應包。然後按以下
æ–¹å¼èª¿ç”¨è…³æœ¬ï¼ˆå¦‚果發行版未打包,則å¯èƒ½éœ€è¦å¾žLinuxæºä»£ç¢¼ç²å–)::
[user@something ~]$ sudo dmesg | ./linux-5.10.5/scripts/decode_stacktrace.sh \
/usr/lib/debug/lib/modules/5.10.10-4.1.x86_64/vmlinux /usr/src/kernels/5.10.10-4.1.x86_64/
è…³æœ¬å°‡è§£ç¢¼å¦‚ä¸‹çš„æ—¥èªŒè¡Œï¼Œé€™äº›æ—¥èªŒè¡Œé¡¯ç¤ºå…§æ ¸åœ¨ç™¼ç”ŸéŒ¯èª¤æ™‚æ£åœ¨åŸ·è¡Œçš„代碼的地å€::
[ 68.387301] RIP: 0010:test_module_init+0x5/0xffa [test_module]
解碼之後,這些行將變æˆé€™æ¨£::
[ 68.387301] RIP: 0010:test_module_init (/home/username/linux-5.10.5/test-module/test-module.c:16) test_module
在本例ä¸ï¼ŒåŸ·è¡Œçš„代碼是從文件“~/linux-5.10.5/test-module/test-module.câ€æ§‹å»ºçš„,
錯誤出ç¾åœ¨ç¬¬16行的指令ä¸ã€‚
該腳本也會如æ¤è§£ç¢¼ä»¥â€œCall traceâ€é–‹é 的部分ä¸æ到的地å€ï¼Œè©²éƒ¨åˆ†é¡¯ç¤ºå‡ºç¾å•é¡Œçš„
函數的路徑。æ¤å¤–ï¼Œè…³æœ¬é‚„æœƒé¡¯ç¤ºå…§æ ¸æ£åœ¨åŸ·è¡Œçš„代碼部分的彙編輸出。
注æ„ï¼Œå¦‚æžœä½ æ²’æ³•åšåˆ°é€™ä¸€é»žï¼Œåªéœ€è·³éŽé€™ä¸€æ¥ï¼Œä¸¦åœ¨å ±å‘Šä¸èªªæ˜ŽåŽŸå› ã€‚å¦‚æžœä½ å¹¸é‹çš„
話,å¯èƒ½ç„¡éœ€è§£ç¢¼ã€‚如果需è¦çš„è©±ï¼Œä¹Ÿè¨±æœ‰äººæœƒå¹«ä½ åšé€™ä»¶äº‹æƒ…。還è¦æ³¨æ„,這åªæ˜¯è§£
ç¢¼å…§æ ¸å †æ£§è·Ÿè¹¤çš„å¹¾ç¨®æ–¹æ³•ä¹‹ä¸€ã€‚æœ‰æ™‚éœ€è¦æŽ¡å–ä¸åŒçš„æ¥é©Ÿä¾†æª¢ç´¢ç›¸é—œçš„詳細信æ¯ã€‚
別擔心,如果您碰到的情æ³éœ€è¦é€™æ¨£åšï¼Œé–‹ç™¼äººå“¡æœƒå‘Šè¨´æ‚¨è©²æ€Žéº¼åšã€‚
å°è¿´æ¸çš„特別關照
-----------------
*如果您的å•é¡Œæ˜¯è¿´æ¸å•é¡Œï¼Œè«‹å„˜å¯èƒ½ç¸®å°å¼•å…¥å•é¡Œæ™‚的範åœã€‚*
Linux 首å¸é–‹ç™¼è€… Linus Torvalds èªçˆ² Linux å…§æ ¸æ°¸é ä¸æ‡‰æƒ¡åŒ–,這就是爲什麼他
èªçˆ²è¿´æ¸æ˜¯ä¸å¯æŽ¥å—的,並希望看到它們被迅速修復。這就是爲什麼引入了迴æ¸çš„改
動導致的å•é¡Œè‹¥ç„¡æ³•é€šéŽå…¶ä»–æ–¹å¼å¿«é€Ÿè§£æ±ºï¼Œé€šå¸¸æœƒè¢«è¿…é€Ÿæ’¤éŠ·ã€‚å› æ¤ï¼Œå ±å‘Šè¿´æ¸æœ‰
點åƒâ€œçŽ‹ç‚¸â€ï¼Œæœƒè¿…速得到修復。但è¦åšåˆ°é€™ä¸€é»žï¼Œéœ€è¦çŸ¥é“導致迴æ¸çš„變化。通常情
æ³ä¸‹ï¼Œè¦ç”±å ±å‘Šè€…來追查罪éç¦é¦–ï¼Œå› çˆ²ç¶è·è€…往往沒有時間或手é è¨ç½®ä¸ä¾¿ä¾†è‡ªè¡Œ
é‡ç¾å®ƒã€‚
有一個å«åšâ€œäºŒåˆ†â€çš„éŽç¨‹å¯ä»¥ä¾†å°‹æ‰¾è®ŠåŒ–,這在
Documentation/translations/zh_CN/admin-guide/bug-bisect.rst 文檔ä¸é€²è¡Œäº†è©³ç´°
çš„æ述,這個éŽç¨‹é€šå¸¸éœ€è¦ä½ 構建å到二åå€‹å…§æ ¸é¡åƒï¼Œæ¯æ¬¡éƒ½å˜—試在構建下一個é¡åƒ
之å‰é‡ç¾å•é¡Œã€‚是的,這需è¦èŠ±è²»ä¸€äº›æ™‚間,但ä¸ç”¨æ“”心,它比大多數人想象的è¦å¿«å¾—多。
多虧了“binary search二分æœç´¢â€ï¼Œé€™å°‡å¼•å°Žä½ 在æºä»£ç¢¼ç®¡ç†ç³»çµ±ä¸æ‰¾åˆ°å°Žè‡´è¿´æ¸çš„æ交。
ä¸€æ—¦ä½ æ‰¾åˆ°å®ƒï¼Œå°±åœ¨ç¶²ä¸Šæœç´¢å…¶ä¸»é¡Œã€æ交ID和縮çŸçš„æ交ID(æ交IDçš„å‰12個å—符)。
如果有的話,這將引導您找到關於它的ç¾æœ‰å ±å‘Šã€‚
需è¦æ³¨æ„的是,二分法需è¦ä¸€é»žç«…門,ä¸æ˜¯æ¯å€‹äººéƒ½æ‡‚得訣竅,也需è¦ç›¸ç•¶å¤šçš„努力,
ä¸æ˜¯æ¯å€‹äººéƒ½é¡˜æ„投入。儘管如æ¤ï¼Œé‚„是強烈建è°è‡ªå·±é€²è¡Œä¸€æ¬¡äºŒåˆ†ã€‚å¦‚æžœä½ çœŸçš„
ä¸èƒ½æˆ–者ä¸æƒ³èµ°é€™æ¢è·¯ï¼Œè‡³å°‘è¦æ‰¾å‡ºæ˜¯å“ªå€‹ä¸»ç·šå…§æ ¸å¼•å…¥çš„è¿´æ¸ã€‚比如說從 5.5.15
切æ›åˆ° 5.8.4 的時候出ç¾äº†ä¸€äº›å•é¡Œï¼Œé‚£éº¼è‡³å°‘å¯ä»¥å˜—試一下相近的所有的主線版本
(5.6ã€5.7 å’Œ 5.8)來檢查它是什麼時候出ç¾çš„。除éžä½ 想在一個穩定版或長期支æŒ
å…§æ ¸ä¸æ‰¾åˆ°ä¸€å€‹è¿´æ¸ï¼Œå¦å‰‡è¦é¿å…測試那些編號有三段的版本(5.6.12ã€5.7.8),å›
爲那會使çµæžœé›£ä»¥è§£é‡‹ï¼Œå¯èƒ½æœƒè®“ä½ çš„æ¸¬è©¦è®Šå¾—ç„¡ç”¨ã€‚ä¸€æ—¦ä½ æ‰¾åˆ°äº†å¼•å…¥è¿´æ¸çš„主è¦
版本,就å¯ä»¥æ”¾å¿ƒåœ°ç¹¼çºŒå ±å‘Šäº†ã€‚但請記ä½ï¼šåœ¨ä¸çŸ¥é“罪éç¦é¦–的情æ³ä¸‹ï¼Œé–‹ç™¼äººå“¡
是å¦èƒ½å¤ æ供幫助å–決於手é çš„å•é¡Œã€‚有時他們å¯èƒ½æœƒå¾žå ±å‘Šä¸ç¢ºèªæ˜¯ä»€éº¼å‡ºç¾äº†å•
題,並能修復它;有時他們å¯èƒ½ç„¡æ³•æ供幫助,除éžä½ 進行二分。
當處ç†è¿´æ¸å•é¡Œæ™‚,請確ä¿ä½ 所é¢è‡¨çš„å•é¡ŒçœŸçš„æ˜¯ç”±å…§æ ¸å¼•èµ·çš„ï¼Œè€Œä¸æ˜¯ç”±å…¶ä»–æ±è¥¿
引起的,如上文所述。
在整個éŽç¨‹ä¸ï¼Œè«‹è¨˜ä½ï¼šåªæœ‰ç•¶èˆŠå…§æ ¸å’Œæ–°å…§æ ¸çš„é…置相似時,å•é¡Œçº”ç®—è¿´æ¸ã€‚這å¯ä»¥
é€šéŽ ``make olddefconfig`` 來實ç¾ï¼Œè©³ç´°è§£é‡‹åƒè¦‹
Documentation/admin-guide/reporting-regressions.rst ;它還æ供了大é‡å…¶ä»–您
å¯èƒ½å¸Œæœ›çžè§£çš„有關回æ¸çš„ä¿¡æ¯ã€‚
撰寫併發é€å ±å‘Š
---------------
*通éŽè©³ç´°æè¿°å•é¡Œä¾†é–‹å§‹ç·¨å¯«å ±å‘Šã€‚記得包括以下æ¢ç›®ï¼šæ‚¨çˆ²å¾©ç¾è€Œå®‰è£çš„最新
å…§æ ¸ç‰ˆæœ¬ã€ä½¿ç”¨çš„Linux發行版以åŠé—œæ–¼å¦‚何復ç¾è©²å•é¡Œçš„說明。如果å¯èƒ½ï¼Œå°‡å…§
æ ¸æ§‹å»ºé…置(.config)和 ``dmesg`` 的輸出放在網上的æŸå€‹åœ°æ–¹ï¼Œä¸¦éˆæŽ¥åˆ°å®ƒã€‚
包å«æˆ–上傳所有其他å¯èƒ½ç›¸é—œçš„ä¿¡æ¯ï¼Œå¦‚Oops的輸出/截圖或來自 ``lspci``
çš„è¼¸å‡ºã€‚ä¸€æ—¦ä½ å¯«å®Œäº†é€™å€‹ä¸»è¦éƒ¨åˆ†ï¼Œè«‹åœ¨ä¸Šæ–¹æ’入一個æ£å¸¸é•·åº¦çš„段è½å¿«é€Ÿæ¦‚
è¿°å•é¡Œå’Œå½±éŸ¿ã€‚å†åœ¨æ¤ä¹‹ä¸Šæ·»åŠ 一個簡單æè¿°å•é¡Œçš„å¥å,以得到人們的閱讀。
ç¾åœ¨çµ¦å‡ºä¸€å€‹æ›´çŸçš„æ述性標題或主題。然後就å¯ä»¥åƒMAINTAINERSæ–‡ä»¶å‘Šè¨´ä½ çš„
那樣發é€æˆ–æäº¤å ±å‘Šäº†ï¼Œé™¤éžä½ 在處ç†ä¸€å€‹â€œé«˜å„ªå…ˆç´šå•é¡Œâ€ï¼šå®ƒå€‘需è¦æŒ‰ç…§ä¸‹é¢
“高優先級å•é¡Œçš„特殊處ç†â€æ‰€è¿°ç‰¹åˆ¥é—œç…§ã€‚*
ç¾åœ¨ä½ å·²ç¶“æº–å‚™å¥½äº†ä¸€åˆ‡ï¼Œæ˜¯æ™‚å€™å¯«ä½ çš„å ±å‘Šäº†ã€‚ä¸Šæ–‡å‰è¨€ä¸éˆæŽ¥çš„三篇文檔å°å¦‚何
å¯«å ±å‘Šåšäº†éƒ¨åˆ†è§£é‡‹ã€‚這就是爲什麼本文將åªæåˆ°ä¸€äº›åŸºæœ¬çš„å…§å®¹ä»¥åŠ Linux å…§æ ¸ç‰¹
有的æ±è¥¿ã€‚
有一點是符åˆé€™å…©é¡žçš„ï¼šä½ çš„å ±å‘Šä¸æœ€é—œéµçš„部分是標題/主題ã€ç¬¬ä¸€å¥è©±å’Œç¬¬ä¸€æ®µã€‚
é–‹ç™¼è€…ç¶“å¸¸æœƒæ”¶åˆ°è¨±å¤šéƒµä»¶ã€‚å› æ¤ï¼Œä»–們往往åªæ˜¯èŠ±å¹¾ç§’é˜çš„時間ç€è¦½ä¸€ä¸‹éƒµä»¶ï¼Œç„¶
後å†æ±ºå®šç¹¼çºŒä¸‹ä¸€å°æˆ–ä»”ç´°æŸ¥çœ‹ã€‚å› æ¤ï¼Œä½ å ±å‘Šçš„é–‹é è¶Šå¥½ï¼Œæœ‰äººç ”ç©¶ä¸¦å¹«åŠ©ä½ çš„æ©Ÿ
æœƒå°±è¶Šå¤§ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ æ‡‰è©²æš«æ™‚å¿½ç•¥ä»–å€‘ï¼Œå…ˆå¯«å‡ºè©³ç´°çš„å ±å‘Šã€‚;-)
æ¯ä»½å ±å‘Šéƒ½æ‡‰æåŠçš„äº‹é …
~~~~~~~~~~~~~~~~~~~~~~~~
詳細æè¿°ä½ çš„å•é¡Œæ˜¯å¦‚ä½•ç™¼ç”Ÿåœ¨ä½ å®‰è£çš„æ–°ç´”æ·¨å…§æ ¸ä¸Šçš„ã€‚è©¦ç€åŒ…å«ä½ 之å‰å¯«çš„和優
化éŽçš„分æ¥èªªæ˜Žï¼Œæ¦‚è¿°ä½ å’Œå…¶ä»–äººå¦‚ä½•é‡ç¾é€™å€‹å•é¡Œï¼›åœ¨æ¥µå°‘數無法é‡ç¾çš„情æ³ä¸‹ï¼Œ
儘é‡æè¿°ä½ åšäº†ä»€éº¼ä¾†è§¸ç™¼å®ƒã€‚
還應包括其他人爲了解該å•é¡ŒåŠå…¶ç’°å¢ƒè€Œå¯èƒ½éœ€è¦çš„所有相關信æ¯ã€‚實際需è¦çš„æ±è¥¿
在很大程度上å–決於具體å•é¡Œï¼Œä½†æœ‰äº›äº‹é …ä½ ç¸½æ˜¯æ‡‰è©²åŒ…æ‹¬åœ¨å…§ï¼š
* ``cat /proc/version`` 的輸出,其ä¸åŒ…å« Linux å…§æ ¸ç‰ˆæœ¬è™Ÿå’Œæ§‹å»ºæ™‚çš„ç·¨è¯å™¨ã€‚
* 機器æ£åœ¨é‹è¡Œçš„ Linux 發行版( ``hostnamectl | grep “Operating System“`` )
* CPU å’Œæ“作系統的架構( ``uname -mi`` )
* 如果您æ£åœ¨è™•ç†è¿´æ¸ï¼Œä¸¦é€²è¡Œäº†äºŒåˆ†ï¼Œè«‹æåŠå°Žè‡´è¿´æ¸çš„變更的主題和æ交ID。
許多情æ³ä¸‹ï¼Œè®“è®€ä½ å ±å‘Šçš„äººå¤šçžè§£å…©ä»¶äº‹ä¹Ÿæ˜¯æ˜Žæ™ºä¹‹èˆ‰ï¼š
* 用於構建 Linux å…§æ ¸çš„é…置(“.configâ€æ–‡ä»¶ï¼‰
* å…§æ ¸çš„ä¿¡æ¯ï¼Œä½ 從 ``dmesg`` 得到的信æ¯å¯«åˆ°ä¸€å€‹æ–‡ä»¶è£ã€‚確ä¿å®ƒä»¥åƒâ€œLinux
version 5.8-1 (foobar@example.com) (gcc (GCC) 10.2.1, GNU ld version
2.34) #1 SMP Mon Aug 3 14:54:37 UTC 2020â€é€™æ¨£çš„行開始,如果沒有,那麼第
一次啓動階段的é‡è¦ä¿¡æ¯å·²ç¶“被丟棄了。在這種情æ³ä¸‹ï¼Œå¯ä»¥è€ƒæ…®ä½¿ç”¨
``journalctl -b 0 -k`` ï¼›æˆ–è€…ä½ ä¹Ÿå¯ä»¥é‡å•“,é‡ç¾é€™å€‹å•é¡Œï¼Œç„¶å¾Œèª¿ç”¨
``dmesg`` 。
é€™å…©å€‹æ–‡ä»¶å¾ˆå¤§ï¼Œæ‰€ä»¥ç›´æŽ¥æŠŠå®ƒå€‘æ”¾åˆ°ä½ çš„å ±å‘Šä¸æ˜¯å€‹å£žä¸»æ„ã€‚å¦‚æžœä½ æ˜¯åœ¨ç¼ºé™·è·Ÿè¹¤
器ä¸æ交å•é¡Œï¼Œé‚£éº¼å°‡å®ƒå€‘é™„åŠ åˆ°å·¥å–®ä¸ã€‚å¦‚æžœä½ é€šéŽéƒµä»¶å ±å‘Šå•é¡Œï¼Œä¸è¦ç”¨é™„件附
ä¸Šå®ƒå€‘ï¼Œå› çˆ²é‚£æœƒä½¿éƒµä»¶è®Šå¾—å¤ªå¤§ï¼Œå¯ä»¥æŒ‰ä¸‹åˆ—之一åšï¼š
* 將文件上傳到æŸå€‹å…¬é–‹çš„åœ°æ–¹ï¼ˆä½ çš„ç¶²ç«™ï¼Œå…¬å…±æ–‡ä»¶ç²˜è²¼æœå‹™ï¼Œåœ¨
`bugzilla.kernel.org <https://bugzilla.kernel.org/>`_ 上創建的工單……),
ä¸¦åœ¨ä½ çš„å ±å‘Šä¸æ”¾ä¸ŠéŠæŽ¥ã€‚ç†æƒ³æƒ…æ³ä¸‹è«‹ä½¿ç”¨å…許這些文件ä¿å˜å¾ˆå¤šå¹´çš„地方,å›
爲它們å¯èƒ½åœ¨å¾ˆå¤šå¹´å¾Œå°åˆ¥äººæœ‰ç”¨ï¼›ä¾‹å¦‚ 5 年或 10 年後,一個開發者æ£åœ¨ä¿®æ”¹
一些代碼,而這些代碼æ£æ˜¯çˆ²äº†ä¿®å¾©ä½ çš„å•é¡Œã€‚
* æŠŠæ–‡ä»¶æ”¾åœ¨ä¸€é‚Šï¼Œç„¶å¾Œèªªæ˜Žä½ æœƒåœ¨ä»–äººå›žè¦†æ™‚å†å–®ç¨ç™¼é€ã€‚åªè¦è¨˜å¾—å ±å‘Šç™¼å‡ºåŽ»å¾Œï¼Œ
真æ£åšåˆ°é€™ä¸€é»žå°±å¯ä»¥äº†ã€‚;-)
æ供這些æ±è¥¿å¯èƒ½æ˜¯æ˜Žæ™ºçš„
~~~~~~~~~~~~~~~~~~~~~~~~~~
æ ¹æ“šå•é¡Œçš„ä¸åŒï¼Œä½ å¯èƒ½éœ€è¦æ供更多的背景數據。這è£æœ‰ä¸€äº›é—œæ–¼æ供什麼比較好
的建è°ï¼š
* å¦‚æžœä½ è™•ç†çš„æ˜¯å…§æ ¸çš„â€œwarningâ€ã€â€œOOPSâ€æˆ–“panicâ€ï¼Œè«‹åŒ…å«å®ƒã€‚å¦‚æžœä½ ä¸èƒ½è¤‡è£½
粘貼它,試ç€ç”¨netconsole網絡終端é 程跟蹤或者至少æ‹ä¸€å¼µå±å¹•çš„照片。
* 如果å•é¡Œå¯èƒ½èˆ‡ä½ çš„é›»è…¦ç¡¬ä»¶æœ‰é—œï¼Œè«‹èªªæ˜Žä½ ä½¿ç”¨çš„æ˜¯ä»€éº¼ç³»çµ±ã€‚ä¾‹å¦‚ï¼Œå¦‚æžœä½ çš„
顯å¡æœ‰å•é¡Œï¼Œè«‹æåŠå®ƒçš„è£½é€ å•†ï¼Œé¡¯å¡çš„型號,以åŠä½¿ç”¨çš„芯片。如果是ç†è¨˜æœ¬é›»
腦,請æåŠå®ƒçš„型號å稱,但儘é‡ç¢ºä¿æ„義明確。例如“戴爾 XPS 13â€å°±ä¸å¾ˆæ˜Žç¢ºï¼Œ
å› çˆ²å®ƒå¯èƒ½æ˜¯ 2012 年的那款,那款除了看起來和ç¾åœ¨éŠ·å”®çš„沒有什麼ä¸åŒä¹‹å¤–,
兩者沒有任何共åŒä¹‹è™•ã€‚å› æ¤ï¼Œåœ¨é€™ç¨®æƒ…æ³ä¸‹ï¼Œè¦åŠ 上準確的型號,例如 2019
年內推出的 XPS 13 型號爲“9380â€æˆ–“7390â€ã€‚åƒâ€œè¯æƒ³ Thinkpad T590â€é€™æ¨£çš„åå—
也有些å«ç³Šä¸æ¸…:這款ç†è¨˜æœ¬æœ‰å¸¶ç¨ç«‹é¡¯å¡å’Œä¸å¸¶çš„å型號,所以è¦å„˜é‡æ‰¾åˆ°æº–確
的型號å稱或註明主è¦éƒ¨ä»¶ã€‚
* 說明æ£åœ¨ä½¿ç”¨çš„ç›¸é—œè»Ÿä»¶ã€‚å¦‚æžœä½ åœ¨åŠ è¼‰æ¨¡å¡Šæ™‚é‡åˆ°äº†å•é¡Œï¼Œä½ è¦èªªæ˜Žæ£åœ¨ä½¿ç”¨çš„
kmodã€systemd å’Œ udev 的版本。如果其ä¸ä¸€å€‹ DRM 驅動出ç¾å•é¡Œï¼Œä½ è¦èªªæ˜Ž
libdrm å’Œ Mesa 的版本;還è¦èªªæ˜Žä½ çš„ Wayland åˆæˆå™¨æˆ– X-Server åŠå…¶é©…動。
å¦‚æžœä½ æœ‰æ–‡ä»¶ç³»çµ±å•é¡Œï¼Œè«‹è¨»æ˜Žç›¸æ‡‰çš„文件系統實用程åºçš„版本(e2fsprogs,
btrfs-progs, xfsprogs……)。
* å¾žå…§æ ¸ä¸æ”¶é›†å¯èƒ½æœ‰ç”¨çš„é¡å¤–ä¿¡æ¯ã€‚例如, ``lspci -nn`` 的輸出å¯ä»¥å¹«åŠ©åˆ¥äºº
è˜åˆ¥ä½ ä½¿ç”¨çš„ç¡¬ä»¶ã€‚å¦‚æžœä½ çš„ç¡¬ä»¶æœ‰å•é¡Œï¼Œä½ 甚至å¯ä»¥çµ¦å‡º ``sudo lspci -vvv``
çš„çµæžœï¼Œå› 爲它æ供了組件是如何é…置的信æ¯ã€‚å°æ–¼ä¸€äº›å•é¡Œï¼Œå¯èƒ½æœ€å¥½åŒ…å«
``/proc/cpuinfo`` , ``/proc/ioports`` , ``/proc/iomem`` ,
``/proc/modules`` 或 ``/proc/scsi/scsi`` ç‰æ–‡ä»¶çš„內容。一些å系統還æ
供了收集相關信æ¯çš„工具。 ``alsa-info.sh`` `å°±æ˜¯é€™æ¨£ä¸€å€‹å·¥å…·ï¼Œå®ƒæ˜¯éŸ³é »/è²
音å系統開發者æ供的 <https://www.alsa-project.org/wiki/AlsaInfo>`_ 。
這些例åæ‡‰è©²æœƒçµ¦ä½ ä¸€äº›çŸ¥è˜é»žï¼Œè®“ä½ çŸ¥é“附上什麼數據å¯èƒ½æ˜¯æ˜Žæ™ºçš„ï¼Œä½†ä½ è‡ªå·±ä¹Ÿ
è¦æƒ³ä¸€æƒ³ï¼Œå“ªäº›æ•¸æ“šå°åˆ¥äººæœƒæœ‰å¹«åŠ©ã€‚ä¸è¦å¤ªæ“”心忘記一些æ±è¥¿ï¼Œå› 爲開發人員會è¦
求æ供他們需è¦çš„é¡å¤–細節。但從一開始就把所有é‡è¦çš„æ±è¥¿éƒ½æä¾›å‡ºä¾†ï¼Œæœƒå¢žåŠ åˆ¥
人仔細查看的機會。
é‡è¦éƒ¨åˆ†ï¼šå ±å‘Šçš„é–‹é
~~~~~~~~~~~~~~~~~~~~~~
ç¾åœ¨ä½ å·²ç¶“æº–å‚™å¥½äº†å ±å‘Šçš„è©³ç´°éƒ¨åˆ†ï¼Œè®“æˆ‘å€‘é€²å…¥æœ€é‡è¦çš„部分:開é å¹¾å¥ã€‚ç¾åœ¨åˆ°
å ±å‘Šçš„æœ€å‰é¢ï¼Œåœ¨ä½ 剛纔寫的部分之å‰åŠ 上類似“The detailed description:â€ï¼ˆè©³ç´°
æ述)這樣的內容,並在最å‰é¢æ’入兩個新行。ç¾åœ¨å¯«ä¸€å€‹æ£å¸¸é•·åº¦çš„段è½ï¼Œå¤§è‡´æ¦‚
述這個å•é¡Œã€‚去掉所有枯燥的細節,把é‡é»žæ”¾åœ¨è®€è€…需è¦çŸ¥é“çš„é—œéµéƒ¨åˆ†ï¼Œä»¥è®“人了
è§£é€™æ˜¯æ€Žéº¼å›žäº‹ï¼›å¦‚æžœä½ èªçˆ²é€™å€‹ç¼ºé™·å½±éŸ¿äº†å¾ˆå¤šç”¨æˆ¶ï¼Œå°±æ一下這點來å¸å¼•å¤§å®¶é—œ
注。
åšå¥½é€™ä¸€é»žå¾Œï¼Œåœ¨é ‚部å†æ’入兩行,寫一å¥è©±çš„摘è¦ï¼Œå¿«é€Ÿè§£é‡‹å ±å‘Šçš„內容。之後ä½
è¦æ›´åŠ æŠ½è±¡ï¼Œçˆ²å ±å‘Šå¯«ä¸€å€‹æ›´çŸçš„主題/標題。
ç¾åœ¨ä½ å·²ç¶“å¯«å¥½äº†é€™éƒ¨åˆ†ï¼Œè«‹èŠ±é»žæ™‚é–“ä¾†å„ªåŒ–å®ƒï¼Œå› çˆ²å®ƒæ˜¯ä½ çš„å ±å‘Šä¸æœ€é‡è¦çš„部分:
很多人會先讀這部分,然後纔會決定是å¦å€¼å¾—花時間閱讀其他部分。
ç¾åœ¨å°±åƒ :ref:`MAINTAINERS <maintainers>` ç¶è·è€…æ–‡ä»¶å‘Šè¨´ä½ çš„é‚£æ¨£ç™¼é€æˆ–æ交
å ±å‘Šï¼Œé™¤éžå®ƒæ˜¯å‰é¢æ¦‚述的那些“高優先級å•é¡Œâ€ä¹‹ä¸€ï¼šåœ¨é€™ç¨®æƒ…æ³ä¸‹ï¼Œè«‹å…ˆé–±è®€ä¸‹ä¸€
å°ç¯€ï¼Œç„¶å¾Œå†ç™¼é€å ±å‘Šã€‚
高優先級å•é¡Œçš„特殊處ç†
~~~~~~~~~~~~~~~~~~~~~~~~
高優先級å•é¡Œçš„å ±å‘Šéœ€è¦ç‰¹æ®Šè™•ç†ã€‚
**éžå¸¸åš´é‡çš„缺陷** :確ä¿åœ¨ä¸»é¡Œæˆ–工單標題以åŠç¬¬ä¸€æ®µä¸æ˜Žé¡¯æ¨™å‡º severeness
(éžå¸¸åš´é‡çš„)。
**è¿´æ¸** ï¼šå ±å‘Šçš„ä¸»é¡Œæ‡‰ä»¥â€œ[REGRESSION]â€é–‹é 。
如果您æˆåŠŸç”¨äºŒåˆ†æ³•å®šä½äº†å•é¡Œï¼Œè«‹ä½¿ç”¨å¼•å…¥è¿´æ¸ä¹‹æ›´æ”¹çš„標題作爲主題的第二部分。
è«‹åœ¨å ±å‘Šä¸å¯«æ˜Žâ€œç½ªéç¦é¦–â€çš„æ交ID。如果未能æˆåŠŸäºŒåˆ†ï¼Œè«‹åœ¨å ±å‘Šä¸è¬›æ˜Žæœ€å¾Œä¸€å€‹
æ£å¸¸å·¥ä½œçš„版本(例如5.7)和最先發生å•é¡Œçš„版本(例如5.8-rc1)。
通éŽéƒµä»¶ç™¼é€å ±å‘Šæ™‚,請抄é€Linuxè¿´æ¸éƒµä»¶åˆ—表(regressions@lists.linux.dev)。
å¦‚æžœå ±å‘Šéœ€è¦æ交到æŸå€‹web追蹤器,請繼續æ交;並在æ交後,通éŽéƒµä»¶å°‡å ±å‘Šè½‰ç™¼
至迴æ¸åˆ—表;抄é€ç›¸é—œå系統的ç¶è·äººå“¡å’Œéƒµä»¶åˆ—表。請確ä¿å ±å‘Šæ˜¯å…§è¯è½‰ç™¼çš„,ä¸è¦
把它作爲附件。å¦å¤–è«‹åœ¨é ‚éƒ¨æ·»åŠ ä¸€å€‹ç°¡çŸçš„說明,在那è£å¯«ä¸Šå·¥å–®çš„網å€ã€‚
åœ¨éƒµå¯„æˆ–è½‰ç™¼å ±å‘Šæ™‚ï¼Œå¦‚æžœæˆåŠŸäºŒåˆ†ï¼Œéœ€è¦å°‡â€œç½ªéç¦é¦–â€çš„ä½œè€…æ·»åŠ åˆ°æ”¶ä»¶äººä¸ï¼›åŒæ™‚
抄é€signed-off-byéˆä¸çš„æ¯å€‹äººï¼Œæ‚¨å¯ä»¥åœ¨æ交消æ¯çš„末尾找到。
**安全å•é¡Œ** :å°æ–¼é€™ç¨®å•é¡Œï¼Œä½ å°‡å¿…é ˆè©•ä¼°ï¼šå¦‚æžœç´°ç¯€è¢«å…¬é–‹æŠ«éœ²ï¼Œæ˜¯å¦æœƒå°å…¶ä»–
用戶產生çŸæœŸé¢¨éšªã€‚如果ä¸æœƒï¼Œåªéœ€æŒ‰ç…§æ‰€è¿°ç¹¼çºŒå ±å‘Šå•é¡Œã€‚如果有æ¤é¢¨éšªï¼Œä½ 需è¦
ç¨å¾®èª¿æ•´ä¸€ä¸‹å ±å‘Šæµç¨‹ã€‚
* 如果 MAINTAINERS 文件指示您通éŽéƒµä»¶å ±å‘Šå•é¡Œï¼Œè«‹ä¸è¦æŠ„é€ä»»ä½•å…¬å…±éƒµä»¶åˆ—表。
* å¦‚æžœä½ æ‡‰è©²åœ¨ç¼ºé™·è·Ÿè¹¤å™¨ä¸æ交å•é¡Œï¼Œè«‹ç¢ºä¿å°‡å·¥å–®æ¨™è¨˜çˆ²â€œç§æœ‰â€æˆ–“安全å•é¡Œâ€ã€‚
如果缺陷跟蹤器沒有æä¾›ä¿æŒå ±å‘Šç§å¯†æ€§çš„æ–¹æ³•ï¼Œé‚£å°±åˆ¥æƒ³äº†ï¼ŒæŠŠä½ çš„å ±å‘Šä»¥ç§äºº
郵件的形å¼ç™¼é€çµ¦ç¶è·è€…å§ã€‚
在這兩種情æ³ä¸‹ï¼Œéƒ½ä¸€å®šè¦å°‡å ±å‘Šç™¼åˆ° MAINTAINERS 文件ä¸â€œå®‰å…¨è¯çµ¡â€éƒ¨åˆ†åˆ—出的
地å€ã€‚ç†æƒ³çš„情æ³æ˜¯åœ¨ç™¼é€å ±å‘Šçš„時候直接抄é€ä»–們。如果您在缺陷跟蹤器ä¸æ交了
å ±å‘Šï¼Œè«‹å°‡å ±å‘Šçš„æ–‡æœ¬è½‰ç™¼åˆ°é€™äº›åœ°å€ï¼›ä½†è«‹åœ¨å ±å‘Šçš„é ‚éƒ¨åŠ ä¸Šè¨»é‡‹ï¼Œè¡¨æ˜Žæ‚¨æ交了
å ±å‘Šï¼Œä¸¦é™„ä¸Šå·¥å–®éˆæŽ¥ã€‚
更多信æ¯è«‹åƒè¦‹ Documentation/translations/zh_CN/admin-guide/security-bugs.rst 。
ç™¼ä½ˆå ±å‘Šå¾Œçš„è²¬ä»»
------------------
*ç‰å¾…別人的åæ‡‰ï¼Œç¹¼çºŒæŽ¨é€²äº‹æƒ…ï¼Œç›´åˆ°ä½ èƒ½å¤ æŽ¥å—這樣或那樣的çµæžœã€‚å› æ¤ï¼Œè«‹
公開和åŠæ™‚地回應任何詢å•ã€‚測試æ出的修復。ç©æ¥µåœ°æ¸¬è©¦ï¼šè‡³å°‘é‡æ–°æ¸¬è©¦æ¯å€‹
新主線版本的首個候é¸ç‰ˆæœ¬ï¼ˆRCï¼‰ï¼Œä¸¦å ±å‘Šä½ çš„çµæžœã€‚如果出ç¾æ‹–延,就å‹å¥½åœ°
æé†’ä¸€ä¸‹ã€‚å¦‚æžœä½ æ²’æœ‰å¾—åˆ°ä»»ä½•å¹«åŠ©æˆ–è€…æœªèƒ½æ»¿æ„,請試ç€è‡ªå·±å¹«åŠ©è‡ªå·±ã€‚*
å¦‚æžœä½ çš„å ±å‘Šéžå¸¸å„ªç§€ï¼Œè€Œä¸”ä½ çœŸçš„å¾ˆå¹¸é‹ï¼Œé‚£éº¼æŸå€‹é–‹ç™¼è€…å¯èƒ½æœƒç«‹å³ç™¼ç¾å°Žè‡´å•
é¡Œçš„åŽŸå› ï¼›ç„¶å¾Œä»–å€‘å¯èƒ½æœƒå¯«ä¸€å€‹è£œä¸ä¾†ä¿®å¾©ã€æ¸¬è©¦å®ƒï¼Œä¸¦ç›´æŽ¥ç™¼é€çµ¦ä¸»ç·šé›†æˆï¼ŒåŒ
時標記它以便以後回溯到需è¦å®ƒçš„穩定版和長期支æŒå…§æ ¸ã€‚é‚£éº¼ä½ éœ€è¦åšçš„就是回覆
一å¥â€œThank you very muchâ€ï¼ˆéžå¸¸æ„Ÿè¬ï¼‰ï¼Œç„¶å¾Œåœ¨ç™¼ä½ˆå¾Œæ›ä¸Šä¿®å¾©å¥½çš„版本。
但這種ç†æƒ³ç‹€æ³å¾ˆå°‘ç™¼ç”Ÿã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ æŠŠå ±å‘Šæ‹¿å‡ºä¾†ä¹‹å¾Œå·¥ä½œçº”é–‹å§‹ã€‚ä½ è¦åšçš„
事情è¦è¦–情æ³è€Œå®šï¼Œä½†é€šå¸¸æœƒæ˜¯ä¸‹é¢åˆ—å‡ºçš„äº‹æƒ…ã€‚ä½†åœ¨æ·±å…¥ç ”ç©¶ç´°ç¯€ä¹‹å‰ï¼Œé€™è£æœ‰å¹¾
件é‡è¦çš„äº‹æƒ…ï¼Œä½ éœ€è¦è¨˜ä½é€™éƒ¨åˆ†çš„éŽç¨‹ã€‚
關於進一æ¥äº’動的一般建è°
~~~~~~~~~~~~~~~~~~~~~~~~~~
**總是公開回復** ï¼šç•¶ä½ åœ¨ç¼ºé™·è·Ÿè¹¤å™¨ä¸æ交å•é¡Œæ™‚,一定è¦åœ¨é‚£è£å›žè¦†ï¼Œä¸è¦ç§ä¸‹
è¯ç¹«ä»»ä½•é–‹ç™¼è€…。å°æ–¼éƒµä»¶å ±å‘Šï¼Œåœ¨å›žè¦†æ‚¨æ”¶åˆ°çš„任何郵件時,總是使用“全部回覆â€
åŠŸèƒ½ã€‚é€™åŒ…æ‹¬å¸¶æœ‰ä»»ä½•ä½ å¯èƒ½æƒ³è¦æ·»åŠ åˆ°ä½ çš„å ±å‘Šä¸çš„é¡å¤–數據的郵件:進入郵件應
用程åºâ€œå·²ç™¼é€â€æ–‡ä»¶å¤¾ï¼Œä¸¦åœ¨éƒµä»¶ä¸Šä½¿ç”¨â€œå…¨éƒ¨å›žè¦†â€ä¾†å›žå¾©å ±å‘Šã€‚這種方法å¯ä»¥ç¢ºä¿
公共郵件列表和其他所有åƒèˆ‡è€…都能åŠæ™‚çžè§£æƒ…æ³ï¼›å®ƒé‚„能ä¿æŒéƒµä»¶ç·šç¨‹çš„完整性,
這å°æ–¼éƒµä»¶åˆ—表將所有相關郵件æ¸çˆ²ä¸€é¡žæ˜¯éžå¸¸é‡è¦çš„。
åªæœ‰å…©ç¨®æƒ…æ³ä¸é©åˆåœ¨ç¼ºé™·è·Ÿè¹¤å™¨æˆ–“全部回覆â€ä¸ç™¼è¡¨è©•è«–:
* æœ‰äººè®“ä½ ç§ä¸‹ç™¼æ±è¥¿ã€‚
* ä½ è¢«å‘ŠçŸ¥è¦ç™¼é€ä¸€äº›æ±è¥¿ï¼Œä½†æ³¨æ„到其ä¸åŒ…å«éœ€è¦ä¿å¯†çš„æ•æ„Ÿä¿¡æ¯ã€‚在這種情æ³ä¸‹ï¼Œ
å¯ä»¥ç§ä¸‹ç™¼é€çµ¦è¦æ±‚發é€çš„開發者。但è¦åœ¨å·¥å–®æˆ–郵件ä¸è¨»æ˜Žä½ 是這麼åšçš„,這
樣其他人就知é“ä½ å°Šé‡äº†é€™å€‹è¦æ±‚。
**在請求解釋或幫助之å‰å…ˆç ”究一下** :在這部分éŽç¨‹ä¸ï¼Œæœ‰äººå¯èƒ½æœƒå‘Šè¨´ä½ 用尚未
掌æ¡çš„技能åšä¸€äº›äº‹æƒ…ã€‚ä¾‹å¦‚ä½ å¯èƒ½æœƒè¢«è¦æ±‚ä½¿ç”¨ä¸€äº›ä½ å¾žæœªè½èªªéŽçš„測試工具;或
è€…ä½ å¯èƒ½æœƒè¢«è¦æ±‚在 Linux å…§æ ¸æºä»£ç¢¼ä¸Šæ‡‰ç”¨ä¸€å€‹è£œä¸ä¾†æ¸¬è©¦å®ƒæ˜¯å¦æœ‰å¹«åŠ©ã€‚在æŸäº›
情æ³ä¸‹ï¼Œç™¼å€‹å›žè¦†è©¢å•å¦‚何åšå°±å¯ä»¥äº†ã€‚但在走這æ¢è·¯ä¹‹å‰ï¼Œå„˜é‡é€šéŽåœ¨äº’è¯ç¶²ä¸Šæœ
索自行找到ç”案;或者考慮在其他地方詢å•å»ºè°ã€‚比如詢å•æœ‹å‹ï¼Œæˆ–è€…åˆ°ä½ å¹³æ™‚å¸¸åŽ»
çš„èŠå¤©å®¤æˆ–論壇發帖諮詢。
**è¦æœ‰è€å¿ƒ** ï¼šå¦‚æžœä½ çœŸçš„å¾ˆå¹¸é‹ï¼Œä½ å¯èƒ½æœƒåœ¨å¹¾å€‹å°æ™‚內收到å°ä½ çš„å ±å‘Šçš„ç”覆。
但大多數情æ³ä¸‹æœƒèŠ±è²»æ›´å¤šçš„æ™‚é–“ï¼Œå› çˆ²ç¶è·è€…分散在全çƒå„åœ°ï¼Œå› æ¤å¯èƒ½åœ¨ä¸åŒçš„
時å€â€”—在那è£ä»–們已經享å—ç€é 離éµç›¤çš„夜晚。
ä¸€èˆ¬ä¾†èªªï¼Œå…§æ ¸é–‹ç™¼è€…éœ€è¦ä¸€åˆ°äº”å€‹å·¥ä½œæ—¥ä¾†å›žå¾©å ±å‘Šã€‚æœ‰æ™‚æœƒèŠ±è²»æ›´é•·çš„æ™‚é–“ï¼Œå›
爲他們å¯èƒ½æ£å¿™æ–¼åˆä½µçª—å£ã€å…¶ä»–工作ã€åƒåŠ 開發者會è°ï¼Œæˆ–者åªæ˜¯åœ¨äº«å—一個漫長
çš„æš‘å‡ã€‚
“高優先級的å•é¡Œâ€ï¼ˆè¦‹ä¸Šé¢çš„解釋)例外:ç¶è·è€…應該儘快解決這些å•é¡Œï¼›é€™å°±æ˜¯çˆ²
ä»€éº¼ä½ æ‡‰è©²æœ€å¤šç‰å¾…一個星期(如果是緊急的事情,則åªéœ€å…©å¤©ï¼‰ï¼Œç„¶å¾Œå†ç™¼é€å‹å¥½
çš„æ醒。
有時ç¶è·è€…å¯èƒ½æ²’有åŠæ™‚回覆;有時候å¯èƒ½æœƒå‡ºç¾åˆ†æ§ï¼Œä¾‹å¦‚一個å•é¡Œæ˜¯å¦ç¬¦åˆè¿´æ¸
çš„æ¢ä»¶ã€‚在這種情æ³ä¸‹ï¼Œåœ¨éƒµä»¶åˆ—表上æå‡ºä½ çš„é¡§æ…®ï¼Œä¸¦è«‹æ±‚å…¶ä»–äººå…¬é–‹æˆ–ç§ä¸‹å›žå¾©
如何繼續推進。如果失敗了,å¯èƒ½æ‡‰è©²è®“更高級別的ç¶è·è€…介入。如果是 WiFi 驅動,
那就是無線ç¶è·è€…;如果沒有更高級別的ç¶è·è€…,或者其他一切努力都失敗了,那
這å¯èƒ½æ˜¯ä¸€ç¨®ç½•è¦‹çš„ã€å¯ä»¥è®“ Linus Torvalds åƒèˆ‡é€²ä¾†çš„情æ³ã€‚
**主動測試** :æ¯ç•¶ä¸€å€‹æ–°çš„ä¸»ç·šå…§æ ¸ç‰ˆæœ¬çš„ç¬¬ä¸€å€‹é 發佈版本(rc1)發佈的時候,
去檢查一下這個å•é¡Œæ˜¯å¦å¾—到了解決,或者是å¦æœ‰ä»€éº¼é‡è¦çš„變化。在工單ä¸æˆ–在
å›žè¦†å ±å‘Šçš„éƒµä»¶ä¸æåŠçµæžœï¼ˆç¢ºä¿æ‰€æœ‰åƒèˆ‡è¨Žè«–的人都被抄é€ï¼‰ã€‚é€™å°‡è¡¨æ˜Žä½ çš„æ‰¿è«¾
å’Œä½ é¡˜æ„幫忙。如果å•é¡ŒæŒçºŒå˜åœ¨ï¼Œå®ƒä¹Ÿæœƒæ醒開發者確ä¿ä»–們ä¸æœƒå¿˜è¨˜å®ƒã€‚其他一
些ä¸å®šæœŸçš„é‡æ–°æ¸¬è©¦ï¼ˆä¾‹å¦‚用rc3ã€rc5 和最終版本)也是一個好主æ„,但åªæœ‰åœ¨ç›¸é—œ
çš„æ±è¥¿ç™¼ç”Ÿè®ŠåŒ–æˆ–è€…ä½ æ£åœ¨å¯«ä»€éº¼æ±è¥¿çš„時候æ‰å ±å‘Šä½ çš„çµæžœã€‚
這些些常è¦çš„事情就ä¸èªªäº†ï¼Œæˆ‘å€‘ä¾†è«‡è«‡å ±å‘Šå¾Œå¦‚ä½•å¹«åŠ©è§£æ±ºå•é¡Œçš„細節。
查詢和測試請求
~~~~~~~~~~~~~~~
å¦‚æžœä½ çš„å ±å‘Šå¾—åˆ°äº†å›žè¦†å‰‡éœ€å±¥è¡Œä»¥ä¸‹è²¬ä»»ï¼š
**æª¢æŸ¥èˆ‡ä½ æ‰“äº¤é“的人** :大多數情æ³ä¸‹ï¼Œæœƒæ˜¯ç¶è·è€…或特定代碼å€åŸŸçš„開發人員å°
ä½ çš„å ±å‘Šåšå‡ºå›žæ‡‰ã€‚但由於å•é¡Œé€šå¸¸æ˜¯å…¬é–‹å ±å‘Šçš„,所以回覆的å¯èƒ½æ˜¯ä»»ä½•äººâ€”—包括
那些想è¦å¹«å¿™çš„人,但最後å¯èƒ½æœƒç”¨ä»–們的å•é¡Œæˆ–è«‹æ±‚å¼•å°Žä½ å®Œå…¨å離軌é“。這很少
發生,但這是快速上網æœæœçœ‹ä½ æ£åœ¨èˆ‡èª°äº’å‹•æ˜¯æ˜Žæ™ºä¹‹èˆ‰çš„è¨±å¤šåŽŸå› ä¹‹ä¸€ã€‚é€šéŽé€™æ¨£
åšï¼Œä½ 也å¯ä»¥çŸ¥é“ä½ çš„å ±å‘Šæ˜¯å¦è¢«æ£ç¢ºçš„人è½åˆ°ï¼Œå› 爲如果討論沒有導致滿æ„çš„å•é¡Œ
解決方案而淡出,之後å¯èƒ½éœ€è¦æ醒ç¶è·è€…(見下文)。
**查詢數據** ï¼šé€šå¸¸ä½ æœƒè¢«è¦æ±‚測試一些æ±è¥¿æˆ–æ供更多細節。儘快æ供所è¦æ±‚çš„ä¿¡
æ¯ï¼Œå› çˆ²ä½ å·²ç¶“å¾—åˆ°äº†å¯èƒ½æœƒå¹«åŠ©ä½ 的人的注æ„ï¼Œä½ ç‰å¾…的時間越長就有越å¯èƒ½å¤±åŽ»
é—œæ³¨ï¼›å¦‚æžœä½ ä¸åœ¨æ•¸å€‹å·¥ä½œæ—¥å…§æ供信æ¯ï¼Œç”šè‡³å¯èƒ½å‡ºç¾é€™ç¨®çµæžœã€‚
**測試請求** ï¼šç•¶ä½ è¢«è¦æ±‚測試一個診斷補ä¸æˆ–å¯èƒ½çš„修復時,也è¦å„˜é‡åŠæ™‚測試。
但è¦åšå¾—æ°ç•¶ï¼Œä¸€å®šä¸è¦æ€¥æ–¼æ±‚æˆï¼šæ··æ·†äº‹æƒ…很容易發生,這會給所有人帶來許多困
惑。例如一個常見的錯誤是以爲應用了一個帶修復的建è°è£œä¸ï¼Œä½†äº‹å¯¦ä¸Šä¸¦æ²’有。å³
使是有經驗的測試人員也會å¶çˆ¾ç™¼ç”Ÿé€™æ¨£çš„äº‹æƒ…ï¼Œä½†ç•¶æœ‰ä¿®å¾©çš„å…§æ ¸å’Œæ²’æœ‰ä¿®å¾©çš„å…§
æ ¸è¡¨ç¾å¾—一樣時,他們大多時候會注æ„到。
當沒有任何實質性進展時該怎麼辦
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
æœ‰äº›å ±å‘Šä¸æœƒå¾—åˆ°è² æœ‰ç›¸é—œè²¬ä»»çš„ Linux å…§æ ¸é–‹ç™¼è€…çš„ä»»ä½•å應;或者åœç¹žé€™å€‹å•é¡Œ
的討論有所發展,但漸漸淡出,沒有任何實質內容產出。
在這種情æ³ä¸‹ï¼Œè¦ç‰å…©å€‹æ˜ŸæœŸï¼ˆæœ€å¥½æ˜¯ä¸‰å€‹æ˜ŸæœŸï¼‰å¾Œå†ç™¼å‡ºå‹å¥½çš„æé†’ï¼šä¹Ÿè¨±ç•¶ä½ çš„
å ±å‘Šåˆ°é”時,ç¶è·è€…剛剛離開éµç›¤ä¸€æ®µæ™‚間,或者有更é‡è¦çš„事情è¦è™•ç†ã€‚在寫æ醒
信的時候,è¦å–„æ„地å•ä¸€ä¸‹ï¼Œæ˜¯å¦é‚„需è¦ä½ 這邊æä¾›ä»€éº¼ä¾†è®“äº‹æƒ…æŽ¨é€²ä¸‹åŽ»ã€‚å¦‚æžœå ±
告是通éŽéƒµä»¶ç™¼å‡ºä¾†çš„ï¼Œé‚£å°±åœ¨éƒµä»¶çš„ç¬¬ä¸€è¡Œå›žè¦†ä½ çš„åˆå§‹éƒµä»¶ï¼ˆè¦‹ä¸Šæ–‡ï¼‰ï¼Œå…¶ä¸åŒ…
æ‹¬ä¸‹æ–¹çš„åŽŸå§‹å ±å‘Šçš„å®Œæ•´å¼•ç”¨ï¼šé€™æ˜¯å°‘æ•¸å¹¾ç¨®æƒ…æ³ä¸‹ï¼Œé€™æ¨£çš„“TOFUâ€ï¼ˆText Over,
Fullquote Underæ–‡å—在上,完整引用在下)是æ£ç¢ºçš„åšæ³•ï¼Œå› 爲這樣所有的收件人都
會以é©ç•¶çš„é †åºç«‹å³è®“細節到手é 上來。
在æ醒之後,å†ç‰ä¸‰é€±çš„å›žè¦†ã€‚å¦‚æžœä½ ä»ç„¶æ²’有得到é©ç•¶çš„åé¥‹ï¼Œä½ é¦–å…ˆæ‡‰è©²é‡æ–°è€ƒ
æ…®ä½ çš„æ–¹æ³•ã€‚ä½ æ˜¯å¦å¯èƒ½å˜—試接觸了錯誤的人?是ä¸æ˜¯å ±å‘Šä¹Ÿè¨±ä»¤äººå感或者太混亂,
以至於人們決定完全é é›¢å®ƒï¼ŸæŽ’é™¤é€™äº›å› ç´ çš„æœ€å¥½æ–¹æ³•æ˜¯ï¼šæŠŠå ±å‘Šçµ¦ä¸€å…©å€‹ç†Ÿæ‚‰
FLOSS å•é¡Œå ±å‘Šçš„人看,詢å•ä»–們的æ„見。åŒæ™‚徵求他們關於如何繼續推進的建è°ã€‚
這å¯èƒ½æ„味ç€ï¼šæº–å‚™ä¸€ä»½æ›´å¥½çš„å ±å‘Šï¼Œè®“é€™äº›äººåœ¨ä½ ç™¼å‡ºåŽ»ä¹‹å‰å°å®ƒé€²è¡Œå¯©æŸ¥ã€‚這樣
的方法完全å¯ä»¥ï¼›åªéœ€èªªæ˜Žé€™æ˜¯é—œæ–¼é€™å€‹å•é¡Œçš„ç¬¬äºŒä»½æ”¹é€²çš„å ±å‘Šï¼Œä¸¦é™„ä¸Šç¬¬ä¸€ä»½å ±
å‘Šçš„éˆæŽ¥ã€‚
å¦‚æžœå ±å‘Šæ˜¯æ°ç•¶çš„ï¼Œä½ å¯ä»¥ç™¼é€ç¬¬äºŒå°æ醒信;在其ä¸è©¢å•çˆ²ä»€éº¼å ±å‘Šæ²’有得到任何
回覆。第二å°æ醒郵件的好時機是在新 Linux å…§æ ¸ç‰ˆæœ¬çš„é¦–å€‹é 發佈版本('rc1')
發佈後ä¸ä¹…ï¼Œå› çˆ²ç„¡è«–å¦‚ä½•ä½ éƒ½æ‡‰è©²åœ¨é‚£å€‹æ™‚å€™é‡æ–°æ¸¬è©¦ä¸¦æ供狀態更新(見上文)。
如果第二次æ醒的çµæžœåˆåœ¨ä¸€é€±å…§æ²’有任何å應,å¯ä»¥å˜—試è¯ç¹«ä¸Šç´šç¶è·è€…è©¢å•æ„見:
å³ä½¿å†å¿™çš„ç¶è·è€…在這時候也至少應該發éŽæŸç¨®ç¢ºèªã€‚
記ä½è¦åšå¥½å¤±æœ›çš„準備:ç†æƒ³ç‹€æ³ä¸‹ç¶è·è€…最好å°æ¯ä¸€å€‹å•é¡Œå ±å‘Šåšå‡ºå›žæ‡‰ï¼Œä½†ä»–們
åªæœ‰ç¾©å‹™è§£æ±ºä¹‹å‰åˆ—出的“高優先級å•é¡Œâ€ã€‚æ‰€ä»¥ï¼Œå¦‚æžœä½ å¾—åˆ°çš„å›žè¦†æ˜¯â€œè¬è¬ä½ çš„å ±å‘Šï¼Œ
我目å‰æœ‰æ›´é‡è¦çš„å•é¡Œè¦è™•ç†ï¼Œåœ¨å¯é è¦‹çš„æœªä¾†æ²’æœ‰æ™‚é–“åŽ»ç ”ç©¶é€™å€‹å•é¡Œâ€ï¼Œé‚£è«‹ä¸
è¦å¤ªæ²®å–ªã€‚
也有å¯èƒ½åœ¨ç¼ºé™·è·Ÿè¹¤å™¨æˆ–列表ä¸é€²è¡Œäº†ä¸€äº›è¨Žè«–之後,什麼都沒有發生,æ醒也無助
於激勵大家進行修復。這種情æ³å¯èƒ½æ˜¯æ¯€æ»…性的,但在 Linux å…§æ ¸é–‹ç™¼ä¸ç¢ºå¯¦æœƒç™¼ç”Ÿã€‚
這些和其他得ä¸åˆ°å¹«åŠ©çš„åŽŸå› åœ¨æœ¬æ–‡çµå°¾è™•çš„“爲什麼有些å•é¡Œåœ¨è¢«å ±å‘Šå¾Œæ²’有得到
任何回應或者ä»ç„¶æ²’有修復â€ä¸é€²è¡Œäº†è§£é‡‹ã€‚
å¦‚æžœä½ æ²’æœ‰å¾—åˆ°ä»»ä½•å¹«åŠ©æˆ–å•é¡Œæœ€çµ‚沒有得到解決,ä¸è¦æ²®å–ªï¼šLinux å…§æ ¸æ˜¯ FLOSS,
å› æ¤ä½ ä»ç„¶å¯ä»¥è‡ªå·±å¹«åŠ©è‡ªå·±ã€‚ä¾‹å¦‚ï¼Œä½ å¯ä»¥è©¦ç€æ‰¾åˆ°å…¶ä»–å—影響的人,和他們一
èµ·åˆä½œä¾†è§£æ±ºé€™å€‹å•é¡Œã€‚這樣的團隊å¯ä»¥ä¸€èµ·æº–å‚™ä¸€ä»½æ–°çš„å ±å‘Šï¼Œæ到團隊有多少人,
çˆ²ä»€éº¼ä½ å€‘èªçˆ²é€™æ˜¯æ‡‰è©²å¾—åˆ°è§£æ±ºçš„äº‹æƒ…ã€‚ä¹Ÿè¨±ä½ å€‘é‚„å¯ä»¥ä¸€èµ·ç¸®å°ç¢ºåˆ‡åŽŸå› 或引
入迴æ¸çš„變化,這往往會使修復更容易。而且如果é‹æ°£å¥½çš„話,團隊ä¸å¯èƒ½æœƒæœ‰æ‡‚點
編程的人,也許能寫出一個修復方案。
â€œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„è¿´æ¸â€çš„åƒè€ƒ
------------------------------------------
本å°ç¯€æ供了在穩定版和長期支æŒå…§æ ¸ç·šä¸é¢å°è¿´æ¸æ™‚需è¦åŸ·è¡Œçš„æ¥é©Ÿçš„詳細信æ¯ã€‚
確ä¿ç‰¹å®šç‰ˆæœ¬ç·šä»ç„¶å—支æŒ
~~~~~~~~~~~~~~~~~~~~~~~~~
*æª¢æŸ¥å…§æ ¸é–‹ç™¼äººå“¡æ˜¯å¦ä»ç„¶ç¶è·ä½ 關心的Linuxå…§æ ¸ç‰ˆæœ¬ç·šï¼šåŽ» kernel.org çš„
首é ,確ä¿æ¤ç‰¹å®šç‰ˆæœ¬ç·šçš„最新版沒有“[EOL]â€æ¨™è¨˜ã€‚*
å¤§å¤šæ•¸å…§æ ¸ç‰ˆæœ¬ç·šåªæ”¯æŒä¸‰å€‹æœˆå·¦å³ï¼Œå› 爲延長ç¶è·æ™‚é–“æœƒå¸¶ä¾†ç›¸ç•¶å¤šçš„å·¥ä½œã€‚å› æ¤ï¼Œ
æ¯å¹´åªæœƒé¸æ“‡ä¸€å€‹ç‰ˆæœ¬ä¾†æ”¯æŒè‡³å°‘兩年(通常是å…å¹´ï¼‰ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ éœ€è¦æª¢æŸ¥
å…§æ ¸é–‹ç™¼è€…æ˜¯å¦é‚„支æŒä½ 關心的版本線。
注æ„,如果 `kernel.org <https://kernel.org/>`_ 在首é 上列出了兩個“穩定â€ç‰ˆæœ¬ï¼Œ
ä½ æ‡‰è©²è€ƒæ…®åˆ‡æ›åˆ°è¼ƒæ–°çš„版本,而忘掉較舊的版本:å°å®ƒçš„支æŒå¯èƒ½å¾ˆå¿«å°±æœƒçµæŸã€‚
然後,它將被標記爲“生命週期çµæŸâ€ï¼ˆEOL)。é”到這個程度的版本線ä»ç„¶æœƒåœ¨
`kernel.org <https://kernel.org/>`_ 首é 上被顯示一兩週,但ä¸é©åˆç”¨æ–¼æ¸¬è©¦å’Œ
å ±å‘Šã€‚
æœç´¢ç©©å®šç‰ˆéƒµä»¶åˆ—表
~~~~~~~~~~~~~~~~~~~
*檢查Linux穩定版郵件列表ä¸çš„ç¾æœ‰å ±å‘Šã€‚*
ä¹Ÿè¨±ä½ æ‰€é¢è‡¨çš„å•é¡Œå·²ç¶“被發ç¾ï¼Œä¸¦ä¸”已經或å³å°‡è¢«ä¿®å¾©ã€‚å› æ¤ï¼Œè«‹åœ¨ `Linux 穩定
版郵件列表的檔案 <https://lore.kernel.org/stable/>`_ ä¸æœç´¢é¡žä¼¼å•é¡Œçš„å ±å‘Šã€‚
å¦‚æžœä½ æ‰¾åˆ°ä»»ä½•åŒ¹é…çš„å•é¡Œï¼Œå¯ä»¥è€ƒæ…®åŠ 入討論,除éžä¿®å¾©å·¥ä½œå·²ç¶“完æˆä¸¦è¨ˆåŠƒå¾ˆå¿«
得到應用。
用最新版本復ç¾å•é¡Œ
~~~~~~~~~~~~~~~~~~~
*從特定的版本線安è£æœ€æ–°ç‰ˆæœ¬ä½œçˆ²ç´”æ·¨å…§æ ¸ã€‚ç¢ºä¿é€™å€‹å…§æ ¸æ²’有被污染,並且ä»
然å˜åœ¨å•é¡Œï¼Œå› 爲å•é¡Œå¯èƒ½å·²ç¶“在那è£è¢«ä¿®å¾©äº†ã€‚*
在投入更多時間到這個éŽç¨‹ä¸ä¹‹å‰ï¼Œä½ è¦æª¢æŸ¥é€™å€‹å•é¡Œæ˜¯å¦åœ¨ä½ 關注的版本線的最新
版本ä¸å·²ç¶“å¾—åˆ°äº†ä¿®å¾©ã€‚é€™å€‹å…§æ ¸éœ€è¦æ˜¯ç´”淨的,在å•é¡Œç™¼ç”Ÿä¹‹å‰ä¸æ‡‰è©²è¢«æ±¡æŸ“,æ£
如上é¢å·²ç¶“在測試主線的éŽç¨‹ä¸è©³ç´°ä»‹ç´¹éŽçš„一樣。
您是å¦æ˜¯ç¬¬ä¸€æ¬¡æ³¨æ„åˆ°ä¾›æ‡‰å•†å…§æ ¸çš„è¿´æ¸ï¼Ÿä¾›æ‡‰å•†çš„更改å¯èƒ½æœƒç™¼ç”Ÿè®ŠåŒ–ã€‚ä½ éœ€è¦é‡æ–°
檢查排除來這個å•é¡Œã€‚當您從5.10.4-vendor.42更新到5.10.5-vendor.43時,記錄æ壞
çš„ä¿¡æ¯ã€‚然後在測試了å‰ä¸€æ®µä¸æ‰€è¿°çš„最新5.10版本之後,檢查Linux 5.10.4的普通版本
是å¦ä¹Ÿå¯ä»¥æ£å¸¸å·¥ä½œã€‚如果å•é¡Œåœ¨é‚£è£å‡ºç¾ï¼Œé‚£å°±ä¸ç¬¦åˆä¸Šæ¸¸è¿´æ¸çš„æ¢ä»¶ï¼Œæ‚¨éœ€è¦åˆ‡æ›
回主é€æ¥æŒ‡å—ä¾†å ±å‘Šå•é¡Œã€‚
å ±å‘Šè¿´æ¸
~~~~~~~~~~
*å‘Linux穩定版郵件列表發é€ä¸€å€‹ç°¡çŸçš„å•é¡Œå ±å‘Š(stable@vger.kernel.org)並
抄é€Linuxè¿´æ¸éƒµä»¶åˆ—表(regressions@lists.linux.devï¼‰ï¼›å¦‚æžœä½ æ‡·ç–‘æ˜¯ç”±æŸ
å系統引起的,請抄é€å…¶ç¶è·äººå“¡å’Œå系統郵件列表。大致æè¿°å•é¡Œï¼Œä¸¦è§£é‡‹å¦‚
何復ç¾ã€‚講清楚首個出ç¾å•é¡Œçš„版本和最後一個工作æ£å¸¸çš„版本。然後ç‰å¾…進一
æ¥çš„指示。*
ç•¶å ±å‘Šåœ¨ç©©å®šç‰ˆæˆ–é•·æœŸæ”¯æŒå…§æ ¸ç·šå…§ç™¼ç”Ÿçš„è¿´æ¸ï¼ˆä¾‹å¦‚在從5.10.4更新到5.10.5時),
一份簡çŸçš„å ±å‘Šè¶³ä»¥å¿«é€Ÿå ±å‘Šå•é¡Œã€‚å› æ¤åªéœ€å‘穩定版和迴æ¸éƒµä»¶åˆ—表發é€ç²—略的æè¿°ï¼›
ä¸éŽå¦‚æžœä½ æ‡·ç–‘æŸå系統導致æ¤å•é¡Œçš„話,請一併抄é€å…¶ç¶è·äººå“¡å’Œå系統郵件列表,
é€™æœƒåŠ å¿«é€²ç¨‹ã€‚
請注æ„ï¼Œå¦‚æžœæ‚¨èƒ½å¤ æŒ‡æ˜Žå¼•å…¥å•é¡Œçš„確切版本,這將å°é–‹ç™¼äººå“¡æœ‰å¾ˆå¤§å¹«åŠ©ã€‚å› æ¤
å¦‚æžœæœ‰æ™‚é–“çš„è©±ï¼Œè«‹å˜—è©¦ä½¿ç”¨æ™®é€šå…§æ ¸æ‰¾åˆ°è©²ç‰ˆæœ¬ã€‚è®“æˆ‘å€‘å‡è¨ç™¼è¡Œç‰ˆç™¼ä½ˆLinuxå…§æ ¸
5.10.5到5.10.8的更新時發生了故障。那麼按照上é¢çš„指示,去檢查該版本線ä¸çš„最新
å…§æ ¸ï¼Œæ¯”å¦‚5.10.9。如果å•é¡Œå‡ºç¾ï¼Œè«‹å˜—試普通5.10.5,以確ä¿ä¾›æ‡‰å•†æ‡‰ç”¨çš„補ä¸ä¸æœƒ
干擾。如果å•é¡Œæ²’有出ç¾ï¼Œé‚£éº¼å˜—試5.10.7,然後直到5.10.8或5.10.6(å–決於çµæžœï¼‰
找到第一個引入å•é¡Œçš„ç‰ˆæœ¬ã€‚åœ¨å ±å‘Šä¸å¯«æ˜Žé€™ä¸€é»žï¼Œä¸¦æŒ‡å‡º5.10.9ä»ç„¶å˜åœ¨æ•…障。
å‰ä¸€æ®µåŸºæœ¬ç²—略地概述了“二分â€æ–¹æ³•ã€‚ä¸€æ—¦å ±å‘Šå‡ºä¾†ï¼Œæ‚¨å¯èƒ½æœƒè¢«è¦æ±‚åšä¸€å€‹æ£ç¢ºçš„
å ±å‘Šï¼Œå› çˆ²å®ƒå…許精確地定ä½å°Žè‡´å•é¡Œçš„確切更改(然後很容易被æ¢å¾©ä»¥å¿«é€Ÿä¿®å¾©å•é¡Œï¼‰ã€‚
å› æ¤å¦‚果時間å…許,考慮立å³é€²è¡Œé©ç•¶çš„二分。有關如何詳細信æ¯ï¼Œè«‹åƒé–±â€œå°è¿´æ¸çš„
特別關照â€éƒ¨åˆ†å’Œæ–‡æª” Documentation/translations/zh_CN/admin-guide/bug-bisect.rst 。
如果æˆåŠŸäºŒåˆ†çš„話,請將“罪éç¦é¦–â€çš„ä½œè€…æ·»åŠ åˆ°æ”¶ä»¶äººä¸ï¼›åŒæ™‚抄é€æ‰€æœ‰åœ¨
signed-off-byéˆä¸çš„人,您å¯ä»¥åœ¨æ交消æ¯çš„末尾找到。
â€œå ±å‘Šåƒ…åœ¨èˆŠå…§æ ¸ç‰ˆæœ¬ç·šä¸ç™¼ç”Ÿçš„å•é¡Œâ€çš„åƒè€ƒ
----------------------------------------
本節詳細介紹çžå¦‚æžœç„¡æ³•ç”¨ä¸»ç·šå…§æ ¸é‡ç¾å•é¡Œï¼Œä½†å¸Œæœ›åœ¨èˆŠç‰ˆæœ¬ç·šï¼ˆåˆç¨±ç©©å®šç‰ˆå…§æ ¸å’Œ
長期支æŒå…§æ ¸ï¼‰ä¸ä¿®å¾©å•é¡Œæ™‚需è¦æŽ¡å–çš„æ¥é©Ÿã€‚
有些修復太複雜
~~~~~~~~~~~~~~~
*è«‹åšå¥½æº–備,接下來的幾個æ¥é©Ÿå¯èƒ½ç„¡æ³•åœ¨èˆŠç‰ˆæœ¬ä¸è§£æ±ºå•é¡Œï¼šä¿®å¾©å¯èƒ½å¤ªå¤§æˆ–
太冒險,無法移æ¤åˆ°é‚£è£ã€‚*
å³ä½¿æ˜¯å¾®å°çš„ã€çœ‹ä¼¼æ˜Žé¡¯çš„代碼變化,有時也會帶來新的ã€å®Œå…¨æ„想ä¸åˆ°çš„å•é¡Œã€‚ç©©
定版和長期支æŒå…§æ ¸çš„ç¶è·è€…éžå¸¸æ¸…æ¥šé€™ä¸€é»žï¼Œå› æ¤ä»–們åªå°é€™äº›å…§æ ¸é€²è¡Œç¬¦åˆ
Documentation/translations/zh_CN/process/stable-kernel-rules.rst ä¸æ‰€åˆ—出的
è¦å‰‡çš„修改。
複雜或有風險的修改ä¸ç¬¦åˆæ¢ä»¶ï¼Œå› æ¤åªèƒ½æ‡‰ç”¨æ–¼ä¸»ç·šã€‚其他的修復很容易被回溯到
最新的穩定版和長期支æŒå…§æ ¸ï¼Œä½†æ˜¯é¢¨éšªå¤ªå¤§ï¼Œç„¡æ³•é›†æˆåˆ°èˆŠç‰ˆå…§æ ¸ä¸ã€‚所以è¦æ³¨æ„
ä½ æ‰€å¸Œæœ›çš„ä¿®å¾©å¯èƒ½æ˜¯é‚£äº›ä¸æœƒè¢«å›žæº¯åˆ°ä½ 所關心的版本線的修復之一。在這種情æ³
ä¸‹ï¼Œä½ å°‡åˆ¥ç„¡é¸æ“‡ï¼Œè¦éº¼å¿å—這個å•é¡Œï¼Œè¦éº¼åˆ‡æ›åˆ°ä¸€å€‹è¼ƒæ–°çš„ Linux 版本,除éžä½
想自己把修復補ä¸æ‡‰ç”¨åˆ°ä½ çš„å…§æ ¸ä¸ã€‚
通用準備
~~~~~~~~~~
*執行上é¢â€œå ±å‘Šåƒ…åœ¨èˆŠå…§æ ¸ç‰ˆæœ¬ç·šä¸ç™¼ç”Ÿçš„å•é¡Œâ€ä¸€ç¯€ä¸çš„å‰ä¸‰å€‹æ¥é©Ÿã€‚*
您需è¦åŸ·è¡Œæœ¬æŒ‡å—å¦ä¸€ç¯€ä¸å·²ç¶“æ述的幾個æ¥é©Ÿã€‚這些æ¥é©Ÿå°‡è®“您:
* æª¢æŸ¥å…§æ ¸é–‹ç™¼äººå“¡æ˜¯å¦ä»ç„¶ç¶è·æ‚¨é—œå¿ƒçš„Linuxå…§æ ¸ç‰ˆæœ¬è¡Œã€‚
* 在Linux穩定郵件列表ä¸æœç´¢é€€å‡ºçš„å ±å‘Šã€‚
* 檢查最新版本。
檢查代碼æ·å²å’Œæœç´¢ç¾æœ‰çš„討論
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*在Linuxå…§æ ¸ç‰ˆæœ¬æŽ§åˆ¶ç³»çµ±ä¸æœç´¢ä¿®å¾©ä¸»ç·šå•é¡Œçš„æ›´æ”¹ï¼Œå› çˆ²å®ƒçš„æ交消æ¯å¯èƒ½
æœƒå‘Šè¨´ä½ ä¿®å¾©æ˜¯å¦å·²ç¶“計劃好了支æŒã€‚å¦‚æžœä½ æ²’æœ‰æ‰¾åˆ°ï¼Œæœç´¢é©ç•¶çš„郵件列表,
尋找討論æ¤é¡žå•é¡Œæˆ–åŒè¡Œè©•è°å¯èƒ½ä¿®å¾©çš„帖å;然後檢查討論是å¦èªçˆ²ä¿®å¾©ä¸é©
åˆæ”¯æŒã€‚如果支æŒæ ¹æœ¬ä¸è¢«è€ƒæ…®ï¼ŒåŠ 入最新的討論,詢å•æ˜¯å¦æœ‰å¯èƒ½ã€‚*
在許多情æ³ä¸‹ï¼Œä½ 所處ç†çš„å•é¡Œæœƒç™¼ç”Ÿåœ¨ä¸»ç·šä¸Šï¼Œä½†å·²åœ¨ä¸»ç·šä¸Šå¾—到了解決。修æ£å®ƒ
çš„æ交也需è¦è¢«å›žæº¯æ‰èƒ½è§£æ±ºé€™å€‹å•é¡Œã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ è¦æœç´¢å®ƒæˆ–任何相關討論。
* 首先åšè©¦åœ¨å˜æ”¾ Linux å…§æ ¸æºä»£ç¢¼çš„ Git 倉庫ä¸æ‰¾åˆ°ä¿®å¾©ã€‚ä½ å¯ä»¥é€šéŽ
`kernel.org 上的網é
<https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/>`_
或 `GitHub 上的é¡åƒ <https://github.com/torvalds/linux>`_ 來實ç¾ï¼›å¦‚æžœä½
æœ‰ä¸€å€‹æœ¬åœ°å…‹éš†ï¼Œä½ ä¹Ÿå¯ä»¥åœ¨å‘½ä»¤è¡Œç”¨ ``git log --grep=<pattern>`` 來æœç´¢ã€‚
å¦‚æžœä½ æ‰¾åˆ°äº†ä¿®å¾©ï¼Œè«‹æŸ¥çœ‹æ交消æ¯çš„尾部是å¦åŒ…å«äº†é¡žä¼¼é€™æ¨£çš„“穩定版標籤â€ï¼š
Cc: <stable@vger.kernel.org> # 5.4+
åƒä¸Šé¢é€™è¡Œï¼Œé–‹ç™¼è€…標記了安全修復å¯ä»¥å›žå‚³åˆ° 5.4 åŠä»¥å¾Œçš„版本。大多數情æ³
下,它會在兩週內被應用到那è£ï¼Œä½†æœ‰æ™‚需è¦æ›´é•·çš„時間。
* 如果æäº¤æ²’æœ‰å‘Šè¨´ä½ ä»»ä½•æ±è¥¿ï¼Œæˆ–è€…ä½ æ‰¾ä¸åˆ°ä¿®å¾©ï¼Œè«‹å†æ‰¾æ‰¾é—œæ–¼é€™å€‹å•é¡Œçš„討論。
ç”¨ä½ æœ€å–œæ¡çš„æœç´¢å¼•æ“Žæœç´¢ç¶²çµ¡ï¼Œä»¥åŠ `Linux kernel developers mailing
list å…§æ ¸é–‹ç™¼è€…éƒµä»¶åˆ—è¡¨ <https://lore.kernel.org/lkml/>`_ 的檔案。也å¯ä»¥
閱讀上é¢çš„ `定ä½å°Žè‡´å•é¡Œçš„å…§æ ¸å€åŸŸ` 一節,然後按照說明找到導致å•é¡Œçš„åç³»
統:它的缺陷跟蹤器或郵件列表å˜æª”ä¸å¯èƒ½æœ‰ä½ è¦æ‰¾çš„ç”案。
* å¦‚æžœä½ çœ‹åˆ°äº†ä¸€å€‹è¨ˆåŠƒçš„ä¿®å¾©ï¼Œè«‹æŒ‰ä¸Šæ‰€è¿°åœ¨ç‰ˆæœ¬æŽ§åˆ¶ç³»çµ±ä¸æœç´¢å®ƒï¼Œå› 爲æ交å¯
èƒ½æœƒå‘Šè¨´ä½ æ˜¯å¦å¯ä»¥é€²è¡Œå›žæº¯ã€‚
* 檢查討論ä¸æ˜¯å¦æœ‰ä»»ä½•è·¡è±¡è¡¨æ˜Žï¼Œè©²ä¿®å¾©ç¨‹åºå¯èƒ½é¢¨éšªå¤ªå¤§ï¼Œç„¡æ³•å›žæº¯åˆ°ä½ 關心
çš„ç‰ˆæœ¬ç·šã€‚å¦‚æžœæ˜¯é€™æ¨£çš„è©±ï¼Œä½ å¿…é ˆå¿å—這個å•é¡Œï¼Œæˆ–者切æ›åˆ°æ‡‰ç”¨äº†ä¿®å¾©çš„å…§
æ ¸ç‰ˆæœ¬ç·šã€‚
* 如果修復的å•é¡ŒæœªåŒ…å«ç©©å®šç‰ˆæ¨™ç±¤ï¼Œä¸¦ä¸”沒有討論éŽå›žæº¯å•é¡Œï¼Œè«‹åŠ 入討論:如
æžœåˆé©çš„話,請æåŠä½ 所é¢å°çš„å•é¡Œçš„版本,以åŠä½ 希望看到它被修復。
請求建è°
~~~~~~~~~
*å‰é¢çš„æ¥é©Ÿä¹‹ä¸€æ‡‰è©²æœƒçµ¦å‡ºä¸€å€‹è§£æ±ºæ–¹æ¡ˆã€‚如果ä»æœªèƒ½æˆåŠŸï¼Œè«‹å‘å¯èƒ½å¼•èµ·å•é¡Œ
çš„å系統的ç¶è·äººå“¡è©¢å•å»ºè°ï¼›æŠ„é€ç‰¹å®šå系統的郵件列表以åŠç©©å®šç‰ˆéƒµä»¶åˆ—表。*
如果å‰é¢çš„三個æ¥é©Ÿéƒ½æ²’æœ‰è®“ä½ æ›´æŽ¥è¿‘è§£æ±ºæ–¹æ¡ˆï¼Œé‚£éº¼åªå‰©ä¸‹ä¸€å€‹é¸æ“‡ï¼šè«‹æ±‚建è°ã€‚
åœ¨ä½ ç™¼çµ¦å¯èƒ½æ˜¯å•é¡Œæ ¹æºçš„å系統的ç¶è·è€…的郵件ä¸é€™æ¨£åšï¼›æŠ„é€å系統的郵件列表
以åŠç©©å®šç‰ˆéƒµä»¶åˆ—表(stable@vger.kernel.org)。
爲什麼有些å•é¡Œåœ¨å ±å‘Šå¾Œæ²’有任何回應或ä»æœªè§£æ±ºï¼Ÿ
===============================================
ç•¶å‘ Linux é–‹ç™¼è€…å ±å‘Šå•é¡Œæ™‚,è¦æ³¨æ„åªæœ‰â€œé«˜å„ªå…ˆç´šçš„å•é¡Œâ€ï¼ˆè¿´æ¸ã€å®‰å…¨å•é¡Œã€åš´
é‡å•é¡Œï¼‰æ‰ä¸€å®šæœƒå¾—到解決。如果ç¶è·è€…或其他人都失敗了,Linus Torvalds 他自己
會確ä¿é€™ä¸€é»žã€‚ä»–å€‘å’Œå…¶ä»–å…§æ ¸é–‹ç™¼è€…ä¹Ÿæœƒè§£æ±ºå¾ˆå¤šå…¶ä»–å•é¡Œã€‚但是è¦çŸ¥é“,有時他
們也會ä¸èƒ½æˆ–ä¸é¡˜å¹«å¿™ï¼›æœ‰æ™‚ç”šè‡³æ²’æœ‰äººç™¼å ±å‘Šçµ¦ä»–å€‘ã€‚
æœ€å¥½çš„è§£é‡‹å°±æ˜¯é‚£äº›å…§æ ¸é–‹ç™¼è€…å¸¸å¸¸æ˜¯åœ¨æ¥é¤˜æ™‚間爲 Linux å…§æ ¸åšå‡ºè²¢ç»ã€‚å…§æ ¸ä¸çš„
ä¸å°‘驅動程åºéƒ½æ˜¯ç”±é€™æ¨£çš„程åºå“¡ç·¨å¯«çš„,往往åªæ˜¯å› 爲他們想讓自己的硬件å¯ä»¥åœ¨
自己喜æ¡çš„æ“作系統上使用。
這些程åºå“¡å¤§å¤šæ•¸æ™‚候會很樂æ„ä¿®å¾©åˆ¥äººå ±å‘Šçš„å•é¡Œã€‚但是沒有人å¯ä»¥å¼·è¿«ä»–們這樣
åšï¼Œå› 爲他們是自願貢ç»çš„。
還有一些情æ³ä¸‹ï¼Œé€™äº›é–‹ç™¼è€…真的很想解決一個å•é¡Œï¼Œä½†å»ä¸èƒ½è§£æ±ºï¼šæœ‰æ™‚他們缺ä¹
硬件編程文檔來解決å•é¡Œã€‚這種情æ³å¾€å¾€ç”±æ–¼å…¬é–‹çš„文檔太簡陋,或者驅動程åºæ˜¯é€š
éŽé€†å‘工程編寫的。
æ¥é¤˜é–‹ç™¼è€…é²æ—©ä¹Ÿæœƒä¸å†é—œå¿ƒæŸé©…動。也許他們的測試硬件壞了,被更高級的玩æ„å–
代了,或者是太è€äº†ä»¥è‡³æ–¼åªèƒ½åœ¨è¨ˆç®—æ©Ÿåšç‰©é¤¨è£æ‰¾åˆ°ã€‚æœ‰æ™‚é–‹ç™¼è€…æ ¹æœ¬å°±ä¸é—œå¿ƒä»–
們的代碼和 Linux äº†ï¼Œå› çˆ²åœ¨ä»–å€‘çš„ç”Ÿæ´»ä¸ä¸€äº›ä¸åŒçš„æ±è¥¿è®Šå¾—æ›´é‡è¦äº†ã€‚在æŸäº›æƒ…
æ³ä¸‹ï¼Œæ²’有人願æ„接手ç¶è·è€…的工作——也沒有人å¯ä»¥è¢«å¼·è¿«ï¼Œå› çˆ²å° Linux å…§æ ¸çš„è²¢
ç»æ˜¯è‡ªé¡˜çš„。然而被éºæ£„的驅動程åºä»ç„¶å˜åœ¨æ–¼å…§æ ¸ä¸ï¼šå®ƒå€‘å°äººå€‘ä»ç„¶æœ‰ç”¨ï¼Œåˆªé™¤
它們å¯èƒ½å°Žè‡´è¿´æ¸ã€‚
å°æ–¼é‚£äº›çˆ² Linux å…§æ ¸å·¥ä½œè€Œç²å¾—å ±é…¬çš„é–‹ç™¼è€…ä¾†èªªï¼Œæƒ…æ³ä¸¦æ²’有什麼ä¸åŒã€‚這些人
ç¾åœ¨è²¢ç»äº†å¤§éƒ¨åˆ†çš„變更。但是他們的僱主é²æ—©ä¹Ÿæœƒåœæ¢é—œæ³¨ä»–們的代碼或者讓程åº
å“¡å°ˆæ³¨æ–¼å…¶ä»–äº‹æƒ…ã€‚ä¾‹å¦‚ï¼Œç¡¬ä»¶å» å•†ä¸»è¦é€šéŽéŠ·å”®æ–°ç¡¬ä»¶ä¾†è³ºéŒ¢ï¼›å› æ¤ï¼Œä»–們ä¸çš„ä¸
少人並沒有投入太多時間和精力來ç¶è·ä»–們多年å‰å°±åœæ¢éŠ·å”®çš„æ±è¥¿çš„ Linux å…§æ ¸é©…
動。ä¼æ¥ç´š Linux 發行商往往æŒçºŒç¶è·çš„時間比較長,但在新版本ä¸å¾€å¾€æœƒæŠŠå°è€èˆŠ
和稀有硬件的支æŒæ”¾åœ¨ä¸€é‚Šï¼Œä»¥é™åˆ¶ç¯„åœã€‚一旦公å¸æ‹‹æ£„了一些代碼,往往由æ¥é¤˜è²¢
ç»è€…接手,但æ£å¦‚上é¢æ到的:他們é²æ—©ä¹Ÿæœƒæ”¾ä¸‹ä»£ç¢¼ã€‚
優先級是一些å•é¡Œæ²’有被修復的å¦ä¸€å€‹åŽŸå› ï¼Œå› çˆ²ç¶è·è€…相當多的時候是被迫è¨ç½®é€™
äº›å„ªå…ˆç´šçš„ï¼Œå› çˆ²åœ¨ Linux 上工作的時間是有é™çš„。å°æ–¼æ¥é¤˜æ™‚間或者僱主給予他們
çš„é–‹ç™¼äººå“¡ç”¨æ–¼ä¸Šæ¸¸å…§æ ¸ç¶è·å·¥ä½œçš„時間也是如æ¤ã€‚有時ç¶è·äººå“¡ä¹Ÿæœƒè¢«å ±å‘Šæ·¹æ²’,
å³ä½¿ä¸€å€‹é©…動程åºå¹¾ä¹Žå®Œç¾Žåœ°å·¥ä½œã€‚爲了ä¸è¢«å®Œå…¨çºä½ï¼Œç¨‹åºå“¡å¯èƒ½åˆ¥ç„¡é¸æ“‡ï¼Œåªèƒ½
å°å•é¡Œå ±å‘Šé€²è¡Œå„ªå…ˆç´šæŽ’åºè€Œæ‹’絕其ä¸çš„ä¸€äº›å ±å‘Šã€‚
ä¸éŽé€™äº›éƒ½ä¸ç”¨å¤ªéŽæ“”心,很多驅動都有ç©æ¥µçš„ç¶è·è€…,他們å°å„˜å¯èƒ½å¤šçš„解決å•é¡Œ
相當感興趣。
çµæŸèªž
=======
與其他å…è²»/自由&é–‹æºè»Ÿä»¶ï¼ˆFree/Libre & Open Source Software,FLOSS)相比,
å‘ Linux å…§æ ¸é–‹ç™¼è€…å ±å‘Šå•é¡Œæ˜¯å¾ˆé›£çš„:這個文檔的長度和複雜性以åŠå—è£è¡Œé–“çš„å…§
涵都說明了這一點。但目å‰å°±æ˜¯é€™æ¨£äº†ã€‚這篇文å—的主è¦ä½œè€…希望通éŽè¨˜éŒ„ç¾ç‹€ä¾†çˆ²
以後改善這種狀æ³æ‰“下一些基礎。
..
end-of-content
..
This English version of this document is maintained by Thorsten Leemhuis
<linux@leemhuis.info>. If you spot a typo or small mistake, feel free to
let him know directly and he'll fix it. For translation problems, please
contact with translators. You are free to do the same in a mostly informal
way if you want to contribute changes to the text, but for copyright
reasons please CC linux-doc@vger.kernel.org and "sign-off" your
contribution as Documentation/process/submitting-patches.rst outlines in
the section "Sign your work - the Developer's Certificate of Origin".
..
This text is available under GPL-2.0+ or CC-BY-4.0, as stated at the top
of the file. If you want to distribute this text under CC-BY-4.0 only,
please use "The Linux kernel developers" for author attribution and link
this as source:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/Documentation/admin-guide/reporting-issues.rst
..
Note: Only the content of this RST file as found in the Linux kernel sources
is available under CC-BY-4.0, as versions of this text that were processed
(for example by the kernel's build system) might contain content taken from
files which use a more restrictive license.
|