Documentation/translations/zh_TW/admin-guide/reporting-regressions.rst
Source file repositories/reference/linux-study-clean/Documentation/translations/zh_TW/admin-guide/reporting-regressions.rst
File Facts
- System
- Linux kernel
- Corpus path
Documentation/translations/zh_TW/admin-guide/reporting-regressions.rst- Extension
.rst- Size
- 19007 bytes
- Lines
- 372
- Domain
- Support Tooling And Documentation
- Bucket
- Documentation
- Inferred role
- Support Tooling And Documentation: documentation
- Status
- atlas-only
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
.. SPDX-License-Identifier: (GPL-2.0+ OR CC-BY-4.0)
.. 【重分發信息參見本文件結尾】
.. include:: ../disclaimer-zh_TW.rst
:Original: Documentation/admin-guide/reporting-regressions.rst
:譯者:
吳想成 Wu XiangCheng <bobwxc@email.cn>
============
報告迴歸問題
============
“*我們拒絕出現迴歸*”是Linux內核開發的首要規則;Linux的發起者和領軍開發者Linus
Torvalds立下了此規則並確保它被落實。
本文檔描述了這條規則對用戶的意義,以及Linux內核開發模型如何確保解決所有被報告
的迴歸;關於內核開發者如何處理的方面參見 Documentation/process/handling-regressions.rst 。
本文重點(亦即“太長不看”)
==========================
#. 如果某程序在原先的Linux內核上運行良好,但在較新版本上效果更差、或者根本不
能用,那麼你就碰見迴歸問題了。注意,新內核需要使用類似配置編譯;更多相關細
節參見下方。
#. 按照 Documentation/translations/zh_CN/admin-guide/reporting-issues.rst 中
所說的報告你的問題,該文檔已經包含了所有關於迴歸的重要方面,爲了方便起見也
複製到了下面。兩個重點:在報告主題中使用“[REGRESSION]”開頭並抄送或轉發到
`迴歸郵件列表 <https://lore.kernel.org/regressions/>`_
(regressions@lists.linux.dev)。
#. 可選但是建議:在發送或轉發報告時,指明該回歸發生的起點,以便Linux內核迴歸
追蹤機器人“regzbot”可以追蹤此問題::
#regzbot introduced v5.13..v5.14-rc1
與用戶相關的所有Linux內核迴歸細節
=================================
基本重點
--------
什麼是“迴歸”以及什麼是“無迴歸規則”?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
如果某程序/實例在原先的Linux內核上運行良好,但在較新版本上效果更差、或者根本
不能用,那麼你就碰見迴歸問題了。“無迴歸規則”不允許出現這種情況。如果偶然發
生了,導致問題的開發者應當迅速修復問題。
也就是說,若Linux 5.13中的WiFi驅動程序運行良好,但是在5.14版本上卻不能用、速
度明顯變慢或出現錯誤,那就出現了迴歸。如果某正常工作的應用程序突然在新內核上
出現不穩定,這也是迴歸;這些問題可能是由於procfs、sysfs或Linux提供給用戶空間
軟件的許多其他接口之一的變化。但請記住,前述例子中的5.14需要使用類似於5.13的
配置構建。這可以用 ``make olddefconfig`` 實現,詳細解釋見下。
注意本節第一句話中的“實例”:即使開發者需要遵循“無迴歸”規則,但仍可自由地改
變內核的任何方面,甚至是導出到用戶空間的API或ABI,只要別破壞現有的應用程序或
用例。
還需注意,“無迴歸”規則只限制內核提供給用戶空間的接口。它不適用於內核內部接
口,比如一些外部開發的驅動程序用來插入鉤子到內核的模塊API。
Annotation
- Atlas domain: Support Tooling And Documentation / Documentation.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.