docs/zh_CN: Update the translation of dev-tools/ubsan to v6.14-rc1

Commit 918327e9b7 ("ubsan: Remove CONFIG_UBSAN_SANITIZE_ALL")
removed the CONFIG_UBSAN_SANITIZE_ALL configuration option. Update
the Chinese documentation accordingly and revise the document format
by the way.

Link: https://lore.kernel.org/all/6F05157E5E157493+20250123043258.149643-1-wangyuli@uniontech.com/
Link: https://lore.kernel.org/all/fb3c5ec4-eabc-48c0-bf0b-d20cad978b4f@linux.dev/
Signed-off-by: WangYuli <wangyuli@uniontech.com>
Reviewed-by: Yanteng Si <si.yanteng@linux.dev>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/2B33A00C9F5BECC7+20250207084821.251531-1-wangyuli@uniontech.com
This commit is contained in:
WangYuli
2025-02-07 16:48:20 +08:00
committed by Jonathan Corbet
parent 2783096fb1
commit 8bc237a132

View File

@@ -3,7 +3,14 @@
.. include:: ../disclaimer-zh_CN.rst
:Original: Documentation/dev-tools/ubsan.rst
:Translator: Dongliang Mu <dzm91@hust.edu.cn>
:翻译:
慕冬亮 Dongliang Mu <dzm91@hust.edu.cn>
:校译:
王昱力 WangYuli <wangyuli@uniontech.com>
未定义行为消毒剂 - UBSAN
====================================
@@ -55,30 +62,20 @@ GCC自4.9.x [1_] (详见 ``-fsanitize=undefined`` 选项及其子选项)版
使用如下内核配置启用UBSAN::
CONFIG_UBSAN=y
CONFIG_UBSAN=y
使用如下内核配置检查整个内核::
CONFIG_UBSAN_SANITIZE_ALL=y
为了在特定文件或目录启动代码插桩需要在相应的内核Makefile中添加一行类似内容:
- 单文件如main.o::
UBSAN_SANITIZE_main.o := y
- 一个目录中的所有文件::
UBSAN_SANITIZE := y
即使设置了``CONFIG_UBSAN_SANITIZE_ALL=y``,为了避免文件被插桩,可使用::
排除要被检测的文件::
UBSAN_SANITIZE_main.o := n
::
排除一个目录中的所有文件::
UBSAN_SANITIZE := n
当全部文件都被禁用,可通过如下方式为特定文件启用::
UBSAN_SANITIZE_main.o := y
未对齐的内存访问检测可通过开启独立选项 - CONFIG_UBSAN_ALIGNMENT 检测。
该选项在支持未对齐访问的架构上(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y)
默认为关闭。该选项仍可通过内核配置启用但它将产生大量的UBSAN报告。