~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/translations/zh_CN/admin-guide/bug-bisect.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 .. include:: ../disclaimer-zh_CN.rst
  2 
  3 :Original: :doc:`../../../admin-guide/bug-bisect`
  4 
  5 :译者:
  6 
  7  吴想成 Wu XiangCheng <bobwxc@email.cn>
  8 
  9 二分(bisect)缺陷
 10 +++++++++++++++++++
 11 
 12 (英文版)最后更新:2016年10月28日
 13 
 14 引言
 15 =====
 16 
 17 始终尝试由来自kernel.org的源代码构建的最新内核。如果您没有信心这样做,请将
 18 错误报告给您的发行版供应商,而不是内核开发人员。
 19 
 20 找到缺陷(bug)并不总是那么容易,不过仍然得去找。如果你找不到它,不要放弃。
 21 尽可能多的向相关维护人员报告您发现的信息。请参阅MAINTAINERS文件以了解您所
 22 关注的子系统的维护人员。
 23 
 24 在提交错误报告之前,请阅读“Documentation/admin-guide/reporting-issues.rst”。
 25 
 26 设备未出现(Devices not appearing)
 27 ====================================
 28 
 29 这通常是由udev/systemd引起的。在将其归咎于内核之前先检查一下。
 30 
 31 查找导致缺陷的补丁
 32 ===================
 33 
 34 使用 ``git`` 提供的工具可以很容易地找到缺陷,只要缺陷是可复现的。
 35 
 36 操作步骤:
 37 
 38 - 从git源代码构建内核
 39 - 以此开始二分 [#f1]_::
 40 
 41         $ git bisect start
 42 
 43 - 标记损坏的变更集::
 44 
 45         $ git bisect bad [commit]
 46 
 47 - 标记正常工作的变更集::
 48 
 49         $ git bisect good [commit]
 50 
 51 - 重新构建内核并测试
 52 - 使用以下任一与git bisect进行交互::
 53 
 54         $ git bisect good
 55 
 56   或::
 57 
 58         $ git bisect bad
 59 
 60   这取决于您测试的变更集上是否有缺陷
 61 - 在一些交互之后,git bisect将给出可能导致缺陷的变更集。
 62 
 63 - 例如,如果您知道当前版本有问题,而4.8版本是正常的,则可以执行以下操作::
 64 
 65         $ git bisect start
 66         $ git bisect bad                 # Current version is bad
 67         $ git bisect good v4.8
 68 
 69 
 70 .. [#f1] 您可以(可选地)在开始git bisect的时候提供good或bad参数
 71          ``git bisect start [BAD] [GOOD]``
 72 
 73 如需进一步参考,请阅读:
 74 
 75 - ``git-bisect`` 的手册页
 76 - `Fighting regressions with git bisect(用git bisect解决回归)
 77   <https://www.kernel.org/pub/software/scm/git/docs/git-bisect-lk2009.html>`_
 78 - `Fully automated bisecting with "git bisect run"(使用git bisect run
 79   来全自动二分) <https://lwn.net/Articles/317154>`_
 80 - `Using Git bisect to figure out when brokenness was introduced
 81   (使用Git二分来找出何时引入了错误) <http://webchick.net/node/99>`_

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php