All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] docs/zh_CN: move and update sparse
@ 2021-11-01  7:50 Yanteng Si
  2021-11-01  7:50 ` [PATCH 1/2] docs/zh_CN: move sparse into dev-tools Yanteng Si
  2021-11-01  7:50 ` [PATCH 2/2] docs/zh_CN: update sparse translation Yanteng Si
  0 siblings, 2 replies; 7+ messages in thread
From: Yanteng Si @ 2021-11-01  7:50 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel, leoyang.li
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	siyanteng01, src.res, wanjiabing, bernard

The Chinese sparse documentation is too old, so let's update it to
the latest version and move it to ../zh_CN/dev-tools/.

Yanteng Si (2):
  docs/zh_CN: move sparse into dev-tools
  docs/zh_CN: update sparse translation

 .../translations/zh_CN/dev-tools/index.rst    |   2 +-
 .../translations/zh_CN/dev-tools/sparse.rst   | 108 ++++++++++++++++++
 Documentation/translations/zh_CN/sparse.txt   |  91 ---------------
 3 files changed, 109 insertions(+), 92 deletions(-)
 create mode 100644 Documentation/translations/zh_CN/dev-tools/sparse.rst
 delete mode 100644 Documentation/translations/zh_CN/sparse.txt

-- 
2.27.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/2] docs/zh_CN: move sparse into dev-tools
  2021-11-01  7:50 [PATCH 0/2] docs/zh_CN: move and update sparse Yanteng Si
@ 2021-11-01  7:50 ` Yanteng Si
  2021-11-01  7:50 ` [PATCH 2/2] docs/zh_CN: update sparse translation Yanteng Si
  1 sibling, 0 replies; 7+ messages in thread
From: Yanteng Si @ 2021-11-01  7:50 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel, leoyang.li
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	siyanteng01, src.res, wanjiabing, bernard

../zh_CN/saprse.txt is alone at here, let's move it to ../zh_CN/dev-tools/sparse.rst.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
---
 Documentation/translations/zh_CN/dev-tools/index.rst            | 2 +-
 .../translations/zh_CN/{sparse.txt => dev-tools/sparse.rst}     | 0
 2 files changed, 1 insertion(+), 1 deletion(-)
 rename Documentation/translations/zh_CN/{sparse.txt => dev-tools/sparse.rst} (100%)

diff --git a/Documentation/translations/zh_CN/dev-tools/index.rst b/Documentation/translations/zh_CN/dev-tools/index.rst
index 0f770b8664e9..77a8c44cdf49 100644
--- a/Documentation/translations/zh_CN/dev-tools/index.rst
+++ b/Documentation/translations/zh_CN/dev-tools/index.rst
@@ -22,13 +22,13 @@ Documentation/translations/zh_CN/dev-tools/testing-overview.rst
    :maxdepth: 2
 
    testing-overview
+   sparse
    gcov
    kasan
 
 Todolist:
 
  - coccinelle
- - sparse
  - kcov
  - ubsan
  - kmemleak
diff --git a/Documentation/translations/zh_CN/sparse.txt b/Documentation/translations/zh_CN/dev-tools/sparse.rst
similarity index 100%
rename from Documentation/translations/zh_CN/sparse.txt
rename to Documentation/translations/zh_CN/dev-tools/sparse.rst
-- 
2.27.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/2] docs/zh_CN: update sparse translation
  2021-11-01  7:50 [PATCH 0/2] docs/zh_CN: move and update sparse Yanteng Si
  2021-11-01  7:50 ` [PATCH 1/2] docs/zh_CN: move sparse into dev-tools Yanteng Si
@ 2021-11-01  7:50 ` Yanteng Si
  2021-11-01 21:01   ` Leo Li
  1 sibling, 1 reply; 7+ messages in thread
From: Yanteng Si @ 2021-11-01  7:50 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel, leoyang.li
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	siyanteng01, src.res, wanjiabing, bernard

Sparse documents are too outdated,let's update sparse.rst to the latest version.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
---
 .../translations/zh_CN/dev-tools/sparse.rst   | 103 ++++++++++--------
 1 file changed, 60 insertions(+), 43 deletions(-)

diff --git a/Documentation/translations/zh_CN/dev-tools/sparse.rst b/Documentation/translations/zh_CN/dev-tools/sparse.rst
index 0f444b83d639..405653d156d9 100644
--- a/Documentation/translations/zh_CN/dev-tools/sparse.rst
+++ b/Documentation/translations/zh_CN/dev-tools/sparse.rst
@@ -1,34 +1,34 @@
-Chinese translated version of Documentation/dev-tools/sparse.rst
+Copyright 2004 Linus Torvalds
+Copyright 2004 Pavel Machek <pavel@ucw.cz>
+Copyright 2006 Bob Copeland <me@bobcopeland.com>
 
-If you have any comment or update to the content, please contact the
-original document maintainer directly.  However, if you have a problem
-communicating in English you can also ask the Chinese maintainer for
-help.  Contact the Chinese maintainer if this translation is outdated
-or if there is a problem with the translation.
+.. include:: ../disclaimer-zh_CN.rst
 
-Chinese maintainer: Li Yang <leoyang.li@nxp.com>
----------------------------------------------------------------------
-Documentation/dev-tools/sparse.rst 的中文翻译
+:Original: Documentation/dev-tools/sparse.rst
 
-如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
-交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
-译存在问题,请联系中文版维护者。
+:翻译:
 
-中文版维护者: 李阳  Li Yang <leoyang.li@nxp.com>
-中文版翻译者: 李阳  Li Yang <leoyang.li@nxp.com>
+ Li Yang <leoyang.li@nxp.com>
 
+:校译:
 
-以下为正文
----------------------------------------------------------------------
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
 
-Copyright 2004 Linus Torvalds
-Copyright 2004 Pavel Machek <pavel@ucw.cz>
-Copyright 2006 Bob Copeland <me@bobcopeland.com>
+.. _cn_sparse:
+
+Sparse
+======
+
+Sparse是一个C程序的语义检查器;它可以用来发现内核代码的一些潜在问题。 关
+于sparse的概述,请参见https://lwn.net/Articles/689907/;本文档包含
+一些针对内核的sparse信息。
+关于sparse的更多信息,主要是关于它的内部结构,可以在它的官方网页上找到:
+https://sparse.docs.kernel.org 
 使用 sparse 工具做类型检查
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-"__bitwise" 是一种类型属性,所以你应该这样使用它:
+``__bitwis`` 是一种类型属性,所以你应该这样使用它::
 
         typedef int __bitwise pm_request_t;
 
@@ -37,16 +37,16 @@ Copyright 2006 Bob Copeland <me@bobcopeland.com>
                 PM_RESUME = (__force pm_request_t) 2
         };
 
-这样会使 PM_SUSPEND 和 PM_RESUME 成为位方式(bitwise)整数(使用"__force"
-是因为 sparse 会抱怨改变位方式的类型转换,但是这里我们确实需要强制进行转
-换)。而且因为所有枚举值都使用了相同的类型,这里的"enum pm_request"也将
-会使用那个类型做为底层实现。
+这样会使PM_SUSPEND和PM_RESUME成为位方式 ``bitwise`` 整数(使用
+``__force`` 是因为sparse会抱怨改变位方式的类型转换,但是这里我们确实
+需要强制进行转换)。而且因为所有枚举值都使用了相同的类型,这里的
+``enum pm_request`` 也将会使用那个类型做为底层实现。
 
-而且使用 gcc 编译的时候,所有的 __bitwise/__force 都会消失,最后在 gcc
-看来它们只不过是普通的整数。
+而且使用gcc编译的时候,所有的 ``__bitwise`` / ``__force`` 都会消失,
+最后在gcc看来它们只不过是普通的整数。
 
-坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成一个特殊的"int
-__bitwise"类型。
+坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成一个特殊的
+``int__bitwise`` 类型。
 
 所以更简单的办法只要这样做:
 
@@ -57,35 +57,52 @@ __bitwise"类型。
 
 现在你就有了严格的类型检查所需要的所有基础架构。
 
-一个小提醒:常数整数"0"是特殊的。你可以直接把常数零当作位方式整数使用而
-不用担心 sparse 会抱怨。这是因为"bitwise"(恰如其名)是用来确保不同位方
-式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其他),对他们来说
-常数"0"确实是特殊的。
+一个小提醒:常数整数 ``0`` 是特殊的。你可以直接把常数零当作位方式整数使用而
+不用担心sparse会抱怨。这是因为 ``bitwise`` (恰如其名)是用来确保不同位方
+式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其他),对他们来说常数
+``0`` 确实 *是* 特殊的。
+
+使用sparse进行锁检查
+--------------------
+
+下面的宏对于gcc来说是未定义的,在sparse运行时定义,以使用sparse的 ``上下文``
+跟踪功能,应用于锁定。 这些注释告诉sparse什么时候有锁,以及注释的函数的进入和
+退出。
+
+__must_hold - 指定的锁在函数进入和退出时被持有。
+
+__acquires  - 指定的锁在函数退出时被持有,但在进入时不被持有。
+
+__releases  - 指定的锁在函数进入时被持有,但在退出时不被持有。
+
+如果函数在不持有锁的情况下进入和退出,在函数内部以平衡的方式获取和释放锁,则不
+需要注释。
+上面的三个注释是针对sparse否则会报告上下文不平衡的情况。
 
 获取 sparse 工具
 ~~~~~~~~~~~~~~~~
 
-你可以从 Sparse 的主页获取最新的发布版本:
+你可以从Sparse的主页获取最新的发布版本:
 
-	http://www.kernel.org/pub/linux/kernel/people/josh/sparse/
+	https://www.kernel.org/pub/software/devel/sparse/dist/
 
-或者,你也可以使用 git 克隆最新的 sparse 开发版本:
+或者,你也可以使用git克隆最新的sparse开发版本:
 
-	git://git.kernel.org/pub/scm/linux/kernel/git/josh/sparse.git
+	git://git.kernel.org/pub/scm/devel/sparse/sparse.git
 
 一旦你下载了源码,只要以普通用户身份运行:
 
 	make
 	make install
 
-它将会被自动安装到你的 ~/bin 目录下。
+如果是标准的用户,它将会被自动安装到你的~/bin目录下。
 
-使用 sparse 工具
-~~~~~~~~~~~~~~~~
+使用sparse工具
+~~~~~~~~~~~~~~
 
-用"make C=1"命令来编译内核,会对所有重新编译的 C 文件使用 sparse 工具。
-或者使用"make C=2"命令,无论文件是否被重新编译都会对其使用 sparse 工具。
+用 ``make C=1`` 命令来编译内核,会对所有重新编译的C文件使用sparse工具。
+或者使用 ``make C=2`` 命令,无论文件是否被重新编译都会对其使用sparse工具。
 如果你已经编译了内核,用后一种方式可以很快地检查整个源码树。
 
-make 的可选变量 CHECKFLAGS 可以用来向 sparse 工具传递参数。编译系统会自
-动向 sparse 工具传递 -Wbitwise 参数。
+make的可选变量CHECKFLAGS可以用来向sparse工具传递参数。编译系统会自动向
+sparse工具传递-Wbitwise参数。
-- 
2.27.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* RE: [PATCH 2/2] docs/zh_CN: update sparse translation
  2021-11-01  7:50 ` [PATCH 2/2] docs/zh_CN: update sparse translation Yanteng Si
@ 2021-11-01 21:01   ` Leo Li
  2021-11-02  8:52     ` yanteng si
  0 siblings, 1 reply; 7+ messages in thread
From: Leo Li @ 2021-11-01 21:01 UTC (permalink / raw)
  To: Yanteng Si, corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	src.res, wanjiabing, bernard



> -----Original Message-----
> From: Yanteng Si <siyanteng01@gmail.com>
> Sent: Monday, November 1, 2021 2:50 AM
> To: corbet@lwn.net; alexs@kernel.org; bobwxc@email.cn;
> seakeel@gmail.com; Leo Li <leoyang.li@nxp.com>
> Cc: Yanteng Si <siyanteng@loongson.cn>; chenhuacai@kernel.org;
> jiaxun.yang@flygoat.com; linux-doc@vger.kernel.org;
> realpuyuwang@gmail.com; siyanteng01@gmail.com; src.res@email.cn;
> wanjiabing@vivo.com; bernard@vivo.com
> Subject: [PATCH 2/2] docs/zh_CN: update sparse translation
> 
> Sparse documents are too outdated,let's update sparse.rst to the latest
> version.
> 
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> ---
>  .../translations/zh_CN/dev-tools/sparse.rst   | 103 ++++++++++--------
>  1 file changed, 60 insertions(+), 43 deletions(-)
> 
> diff --git a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> index 0f444b83d639..405653d156d9 100644
> --- a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> +++ b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> @@ -1,34 +1,34 @@
> -Chinese translated version of Documentation/dev-tools/sparse.rst
> +Copyright 2004 Linus Torvalds
> +Copyright 2004 Pavel Machek <pavel@ucw.cz>
> +Copyright 2006 Bob Copeland <me@bobcopeland.com>
> 
> -If you have any comment or update to the content, please contact the
> -original document maintainer directly.  However, if you have a problem
> -communicating in English you can also ask the Chinese maintainer for
> -help.  Contact the Chinese maintainer if this translation is outdated
> -or if there is a problem with the translation.
> +.. include:: ../disclaimer-zh_CN.rst
> 
> -Chinese maintainer: Li Yang <leoyang.li@nxp.com>
> ----------------------------------------------------------------------
> -Documentation/dev-tools/sparse.rst 的中文翻译
> +:Original: Documentation/dev-tools/sparse.rst
> 
> -如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使
> 用英文
> -交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时
> 或者翻
> -译存在问题,请联系中文版维护者。
> +:翻译:
> 
> -中文版维护者: 李阳  Li Yang <leoyang.li@nxp.com>
> -中文版翻译者: 李阳  Li Yang <leoyang.li@nxp.com>
> + Li Yang <leoyang.li@nxp.com>
> 
> +:校译:
> 
> -以下为正文
> ----------------------------------------------------------------------
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> 
> -Copyright 2004 Linus Torvalds
> -Copyright 2004 Pavel Machek <pavel@ucw.cz>
> -Copyright 2006 Bob Copeland <me@bobcopeland.com>
> +.. _cn_sparse:
> +
> +Sparse
> +======
> +
> +Sparse是一个C程序的语义检查器;它可以用来发现内核代码的一些
> 潜在问题。 关
> +于sparse的概述,请参见
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flwn.n
> et%2FArticles%2F689907%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com
> %7C233b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c30
> 1635%7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8ey
> JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C1000&amp;sdata=6p2FGIcfWn%2BSrCmJaURoPa1K0NsGi0aD7psdJWDAb
> Mo%3D&amp;reserved=0;本文档包含
> +一些针对内核的sparse信息。
> +关于sparse的更多信息,主要是关于它的内部结构,可以在它的官方
> 网页上找到:
> +https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fspar
> se.docs.kernel.org%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C23
> 3b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C100
> 0&amp;sdata=HGfLzNLaFOAKiR288n2G%2FLrdaqeDO9T6IcJgb9o0VPw%3D&a
> mp;reserved=0。
> 
>  使用 sparse 工具做类型检查
>  ~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> -"__bitwise" 是一种类型属性,所以你应该这样使用它:
> +``__bitwis`` 是一种类型属性,所以你应该这样使用它::

Typo.  __bitwise. 

Btw, not sure why you are changing all the " in original document to ``.

> 
>          typedef int __bitwise pm_request_t;
> 
> @@ -37,16 +37,16 @@ Copyright 2006 Bob Copeland
> <me@bobcopeland.com>
>                  PM_RESUME = (__force pm_request_t) 2
>          };
> 
> -这样会使 PM_SUSPEND 和 PM_RESUME 成为位方式(bitwise)整数(使用
> "__force"
> -是因为 sparse 会抱怨改变位方式的类型转换,但是这里我们确实需要
> 强制进行转
> -换)。而且因为所有枚举值都使用了相同的类型,这里的"enum
> pm_request"也将
> -会使用那个类型做为底层实现。
> +这样会使PM_SUSPEND和PM_RESUME成为位方式 ``bitwise`` 整数(使
> 用
> +``__force`` 是因为sparse会抱怨改变位方式的类型转换,但是这里我们
> 确实
> +需要强制进行转换)。而且因为所有枚举值都使用了相同的类型,这
> 里的
> +``enum pm_request`` 也将会使用那个类型做为底层实现。
> 
> -而且使用 gcc 编译的时候,所有的 __bitwise/__force 都会消失,最后在
> gcc
> -看来它们只不过是普通的整数。
> +而且使用gcc编译的时候,所有的 ``__bitwise`` / ``__force`` 都会消失,
> +最后在gcc看来它们只不过是普通的整数。
> 
> -坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成一个
> 特殊的"int
> -__bitwise"类型。
> +坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成一
> 个特殊的
> +``int__bitwise`` 类型。
> 
>  所以更简单的办法只要这样做:
> 
> @@ -57,35 +57,52 @@ __bitwise"类型。
> 
>  现在你就有了严格的类型检查所需要的所有基础架构。
> 
> -一个小提醒:常数整数"0"是特殊的。你可以直接把常数零当作位方式
> 整数使用而
> -不用担心 sparse 会抱怨。这是因为"bitwise"(恰如其名)是用来确保不
> 同位方
> -式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其他),
> 对他们来说
> -常数"0"确实是特殊的。
> +一个小提醒:常数整数 ``0`` 是特殊的。你可以直接把常数零当作位方
> 式整数使用而
> +不用担心sparse会抱怨。这是因为 ``bitwise`` (恰如其名)是用来确保
> 不同位方
> +式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其他),
> 对他们来说常数
> +``0`` 确实 *是* 特殊的。

Not sure if the italic is a standard way to emphasis in Chinese, maybe bold more common.

> +
> +使用sparse进行锁检查
> +--------------------
> +
> +下面的宏对于gcc来说是未定义的,在sparse运行时定义,以使用
> sparse的 ``上下文``
> +跟踪功能,应用于锁定。 这些注释告诉sparse什么时候有锁,以及注
> 释的函数的进入和
> +退出。
> +
> +__must_hold - 指定的锁在函数进入和退出时被持有。
> +
> +__acquires  - 指定的锁在函数退出时被持有,但在进入时不被持有。
> +
> +__releases  - 指定的锁在函数进入时被持有,但在退出时不被持有。
> +
> +如果函数在不持有锁的情况下进入和退出,在函数内部以平衡的方式
> 获取和释放锁,则不
> +需要注释。
> +上面的三个注释是针对sparse否则会报告上下文不平衡的情况。
> 
>  获取 sparse 工具
>  ~~~~~~~~~~~~~~~~
> 
> -你可以从 Sparse 的主页获取最新的发布版本:
> +你可以从Sparse的主页获取最新的发布版本:
> 
> -
> 	https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2
> Fwww.kernel.org%2Fpub%2Flinux%2Fkernel%2Fpeople%2Fjosh%2Fsparse%
> 2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C233b2566e2f74928165
> c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63771
> 3498814921046%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLC
> JQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=opa
> QpoTYC2szu9dxnBbbG9%2BPM5rJ%2Fi%2BnzUnoRxP%2BOKQ%3D&amp;res
> erved=0
> +
> 	https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%
> 2Fwww.kernel.org%2Fpub%2Fsoftware%2Fdevel%2Fsparse%2Fdist%2F&am
> p;data=04%7C01%7Cleoyang.li%40nxp.com%7C233b2566e2f74928165c08d99
> d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63771349881
> 4921046%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV
> 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=7v7oad%2B
> TDfHAS0Im2SsRFZfwh1YpaLjCH9vqsfFBTjA%3D&amp;reserved=0
> 
> -或者,你也可以使用 git 克隆最新的 sparse 开发版本:
> +或者,你也可以使用git克隆最新的sparse开发版本:
> 
> -	git://git.kernel.org/pub/scm/linux/kernel/git/josh/sparse.git
> +	git://git.kernel.org/pub/scm/devel/sparse/sparse.git
> 
>  一旦你下载了源码,只要以普通用户身份运行:
> 
>  	make
>  	make install
> 
> -它将会被自动安装到你的 ~/bin 目录下。
> +如果是标准的用户,它将会被自动安装到你的~/bin目录下。
> 
> -使用 sparse 工具
> -~~~~~~~~~~~~~~~~
> +使用sparse工具
> +~~~~~~~~~~~~~~
> 
> -用"make C=1"命令来编译内核,会对所有重新编译的 C 文件使用 sparse
> 工具。
> -或者使用"make C=2"命令,无论文件是否被重新编译都会对其使用
> sparse 工具。
> +用 ``make C=1`` 命令来编译内核,会对所有重新编译的C文件使用
> sparse工具。
> +或者使用 ``make C=2`` 命令,无论文件是否被重新编译都会对其使用
> sparse工具。
>  如果你已经编译了内核,用后一种方式可以很快地检查整个源码树。
> 
> -make 的可选变量 CHECKFLAGS 可以用来向 sparse 工具传递参数。编译
> 系统会自
> -动向 sparse 工具传递 -Wbitwise 参数。
> +make的可选变量CHECKFLAGS可以用来向sparse工具传递参数。编译
> 系统会自动向
> +sparse工具传递-Wbitwise参数。
> --
> 2.27.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] docs/zh_CN: update sparse translation
  2021-11-01 21:01   ` Leo Li
@ 2021-11-02  8:52     ` yanteng si
  2021-11-05  1:56       ` Leo Li
  0 siblings, 1 reply; 7+ messages in thread
From: yanteng si @ 2021-11-02  8:52 UTC (permalink / raw)
  To: Leo Li
  Cc: corbet, alexs, bobwxc, seakeel, Yanteng Si, chenhuacai,
	jiaxun.yang, linux-doc, realpuyuwang, src.res, wanjiabing,
	bernard

Leo Li <leoyang.li@nxp.com> 于2021年11月2日周二 上午5:02写道:
>
>
>
> > -----Original Message-----
> > From: Yanteng Si <siyanteng01@gmail.com>
> > Sent: Monday, November 1, 2021 2:50 AM
> > To: corbet@lwn.net; alexs@kernel.org; bobwxc@email.cn;
> > seakeel@gmail.com; Leo Li <leoyang.li@nxp.com>
> > Cc: Yanteng Si <siyanteng@loongson.cn>; chenhuacai@kernel.org;
> > jiaxun.yang@flygoat.com; linux-doc@vger.kernel.org;
> > realpuyuwang@gmail.com; siyanteng01@gmail.com; src.res@email.cn;
> > wanjiabing@vivo.com; bernard@vivo.com
> > Subject: [PATCH 2/2] docs/zh_CN: update sparse translation
> >
> > Sparse documents are too outdated,let's update sparse.rst to the latest
> > version.
> >
> > Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> > ---
> >  .../translations/zh_CN/dev-tools/sparse.rst   | 103 ++++++++++--------
> >  1 file changed, 60 insertions(+), 43 deletions(-)
> >
> > diff --git a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > index 0f444b83d639..405653d156d9 100644
> > --- a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > +++ b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > @@ -1,34 +1,34 @@
> > -Chinese translated version of Documentation/dev-tools/sparse.rst
> > +Copyright 2004 Linus Torvalds
> > +Copyright 2004 Pavel Machek <pavel@ucw.cz>
> > +Copyright 2006 Bob Copeland <me@bobcopeland.com>
> >
> > -If you have any comment or update to the content, please contact the
> > -original document maintainer directly.  However, if you have a problem
> > -communicating in English you can also ask the Chinese maintainer for
> > -help.  Contact the Chinese maintainer if this translation is outdated
> > -or if there is a problem with the translation.
> > +.. include:: ../disclaimer-zh_CN.rst
> >
> > -Chinese maintainer: Li Yang <leoyang.li@nxp.com>
> > ----------------------------------------------------------------------
> > -Documentation/dev-tools/sparse.rst 的中文翻译
> > +:Original: Documentation/dev-tools/sparse.rst
> >
> > -如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使
> > 用英文
> > -交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时
> > 或者翻
> > -译存在问题,请联系中文版维护者。
> > +:翻译:
> >
> > -中文版维护者: 李阳  Li Yang <leoyang.li@nxp.com>
> > -中文版翻译者: 李阳  Li Yang <leoyang.li@nxp.com>
> > + Li Yang <leoyang.li@nxp.com>
> >
> > +:校译:
> >
> > -以下为正文
> > ----------------------------------------------------------------------
> > + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> >
> > -Copyright 2004 Linus Torvalds
> > -Copyright 2004 Pavel Machek <pavel@ucw.cz>
> > -Copyright 2006 Bob Copeland <me@bobcopeland.com>
> > +.. _cn_sparse:
> > +
> > +Sparse
> > +======
> > +
> > +Sparse是一个C程序的语义检查器;它可以用来发现内核代码的一些
> > 潜在问题。 关
> > +于sparse的概述,请参见
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flwn.n
> > et%2FArticles%2F689907%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com
> > %7C233b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c30
> > 1635%7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8ey
> > JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > 7C1000&amp;sdata=6p2FGIcfWn%2BSrCmJaURoPa1K0NsGi0aD7psdJWDAb
> > Mo%3D&amp;reserved=0;本文档包含
> > +一些针对内核的sparse信息。
> > +关于sparse的更多信息,主要是关于它的内部结构,可以在它的官方
> > 网页上找到:
> > +https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fspar
> > se.docs.kernel.org%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C23
> > 3b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > 7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C100
> > 0&amp;sdata=HGfLzNLaFOAKiR288n2G%2FLrdaqeDO9T6IcJgb9o0VPw%3D&a
> > mp;reserved=0。
> >
> >  使用 sparse 工具做类型检查
> >  ~~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > -"__bitwise" 是一种类型属性,所以你应该这样使用它:
> > +``__bitwis`` 是一种类型属性,所以你应该这样使用它::
>
> Typo.  __bitwise.
OK,Thanks!
>
> Btw, not sure why you are changing all the " in original document to ``.
sorry,I will recover back!
>
> >
> >          typedef int __bitwise pm_request_t;
> >
> > @@ -37,16 +37,16 @@ Copyright 2006 Bob Copeland
> > <me@bobcopeland.com>
> >                  PM_RESUME = (__force pm_request_t) 2
> >          };
> >
> > -这样会使 PM_SUSPEND 和 PM_RESUME 成为位方式(bitwise)整数(使用
> > "__force"
> > -是因为 sparse 会抱怨改变位方式的类型转换,但是这里我们确实需要
> > 强制进行转
> > -换)。而且因为所有枚举值都使用了相同的类型,这里的"enum
> > pm_request"也将
> > -会使用那个类型做为底层实现。
> > +这样会使PM_SUSPEND和PM_RESUME成为位方式 ``bitwise`` 整数(使
> > 用
> > +``__force`` 是因为sparse会抱怨改变位方式的类型转换,但是这里我们
> > 确实
> > +需要强制进行转换)。而且因为所有枚举值都使用了相同的类型,这
> > 里的
> > +``enum pm_request`` 也将会使用那个类型做为底层实现。
> >
> > -而且使用 gcc 编译的时候,所有的 __bitwise/__force 都会消失,最后在
> > gcc
> > -看来它们只不过是普通的整数。
> > +而且使用gcc编译的时候,所有的 ``__bitwise`` / ``__force`` 都会消失,
> > +最后在gcc看来它们只不过是普通的整数。
> >
> > -坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成一个
> > 特殊的"int
> > -__bitwise"类型。
> > +坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成一
> > 个特殊的
> > +``int__bitwise`` 类型。
> >
> >  所以更简单的办法只要这样做:
> >
> > @@ -57,35 +57,52 @@ __bitwise"类型。
> >
> >  现在你就有了严格的类型检查所需要的所有基础架构。
> >
> > -一个小提醒:常数整数"0"是特殊的。你可以直接把常数零当作位方式
> > 整数使用而
> > -不用担心 sparse 会抱怨。这是因为"bitwise"(恰如其名)是用来确保不
> > 同位方
> > -式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其他),
> > 对他们来说
> > -常数"0"确实是特殊的。
> > +一个小提醒:常数整数 ``0`` 是特殊的。你可以直接把常数零当作位方
> > 式整数使用而
> > +不用担心sparse会抱怨。这是因为 ``bitwise`` (恰如其名)是用来确保
> > 不同位方
> > +式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其他),
> > 对他们来说常数
> > +``0`` 确实 *是* 特殊的。
>
> Not sure if the italic is a standard way to emphasis in Chinese, maybe bold more common.
yes, "*是*" is bold,Thanks.

Thanks,
Yanteng

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH 2/2] docs/zh_CN: update sparse translation
  2021-11-02  8:52     ` yanteng si
@ 2021-11-05  1:56       ` Leo Li
  2021-11-05  2:07         ` yanteng si
  0 siblings, 1 reply; 7+ messages in thread
From: Leo Li @ 2021-11-05  1:56 UTC (permalink / raw)
  To: yanteng si
  Cc: corbet, alexs, bobwxc, seakeel, Yanteng Si, chenhuacai,
	jiaxun.yang, linux-doc, realpuyuwang, src.res, wanjiabing,
	bernard



> -----Original Message-----
> From: yanteng si <siyanteng01@gmail.com>
> Sent: Tuesday, November 2, 2021 3:52 AM
> To: Leo Li <leoyang.li@nxp.com>
> Cc: corbet@lwn.net; alexs@kernel.org; bobwxc@email.cn;
> seakeel@gmail.com; Yanteng Si <siyanteng@loongson.cn>;
> chenhuacai@kernel.org; jiaxun.yang@flygoat.com; linux-
> doc@vger.kernel.org; realpuyuwang@gmail.com; src.res@email.cn;
> wanjiabing@vivo.com; bernard@vivo.com
> Subject: Re: [PATCH 2/2] docs/zh_CN: update sparse translation
> 
> Leo Li <leoyang.li@nxp.com> 于2021年11月2日周二 上午5:02写道:
> >
> >
> >
> > > -----Original Message-----
> > > From: Yanteng Si <siyanteng01@gmail.com>
> > > Sent: Monday, November 1, 2021 2:50 AM
> > > To: corbet@lwn.net; alexs@kernel.org; bobwxc@email.cn;
> > > seakeel@gmail.com; Leo Li <leoyang.li@nxp.com>
> > > Cc: Yanteng Si <siyanteng@loongson.cn>; chenhuacai@kernel.org;
> > > jiaxun.yang@flygoat.com; linux-doc@vger.kernel.org;
> > > realpuyuwang@gmail.com; siyanteng01@gmail.com; src.res@email.cn;
> > > wanjiabing@vivo.com; bernard@vivo.com
> > > Subject: [PATCH 2/2] docs/zh_CN: update sparse translation
> > >
> > > Sparse documents are too outdated,let's update sparse.rst to the
> > > latest version.
> > >
> > > Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> > > ---
> > >  .../translations/zh_CN/dev-tools/sparse.rst   | 103 ++++++++++--------
> > >  1 file changed, 60 insertions(+), 43 deletions(-)
> > >
> > > diff --git a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > index 0f444b83d639..405653d156d9 100644
> > > --- a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > +++ b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > @@ -1,34 +1,34 @@
> > > -Chinese translated version of Documentation/dev-tools/sparse.rst
> > > +Copyright 2004 Linus Torvalds
> > > +Copyright 2004 Pavel Machek <pavel@ucw.cz> Copyright 2006 Bob
> > > +Copeland <me@bobcopeland.com>
> > >
> > > -If you have any comment or update to the content, please contact
> > > the -original document maintainer directly.  However, if you have a
> > > problem -communicating in English you can also ask the Chinese
> > > maintainer for -help.  Contact the Chinese maintainer if this
> > > translation is outdated -or if there is a problem with the translation.
> > > +.. include:: ../disclaimer-zh_CN.rst
> > >
> > > -Chinese maintainer: Li Yang <leoyang.li@nxp.com>
> > > --------------------------------------------------------------------
> > > -- -Documentation/dev-tools/sparse.rst 的中文翻译
> > > +:Original: Documentation/dev-tools/sparse.rst
> > >
> > > -如果想评论或更新本文的内容,请直接联系原文档的维护者。如果
> 你使
> > > 用英文
> > > -交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不
> 及时
> > > 或者翻
> > > -译存在问题,请联系中文版维护者。
> > > +:翻译:
> > >
> > > -中文版维护者: 李阳  Li Yang <leoyang.li@nxp.com>
> > > -中文版翻译者: 李阳  Li Yang <leoyang.li@nxp.com>
> > > + Li Yang <leoyang.li@nxp.com>
> > >
> > > +:校译:
> > >
> > > -以下为正文
> > > --------------------------------------------------------------------
> > > --
> > > + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> > >
> > > -Copyright 2004 Linus Torvalds
> > > -Copyright 2004 Pavel Machek <pavel@ucw.cz> -Copyright 2006 Bob
> > > Copeland <me@bobcopeland.com>
> > > +.. _cn_sparse:
> > > +
> > > +Sparse
> > > +======
> > > +
> > > +Sparse是一个C程序的语义检查器;它可以用来发现内核代码的一
> 些
> > > 潜在问题。 关
> > > +于sparse的概述,请参见
> > >
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flw
> > >
> n.n%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C779b119cb785486
> 8054
> > >
> 708d99dde188f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63771
> 4399
> > >
> 496081646%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIj
> oiV2luMz
> > >
> IiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=ohSPyKOTZFiwB2
> %2F%
> > > 2BDXR2%2BDJk1avo9MJXUVLP7q%2Fw%2FI0%3D&amp;reserved=0
> > >
> et%2FArticles%2F689907%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com
> > > %7C233b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c
> 5c30
> > >
> 1635%7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8ey
> > >
> JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > >
> 7C1000&amp;sdata=6p2FGIcfWn%2BSrCmJaURoPa1K0NsGi0aD7psdJWDAb
> > > Mo%3D&amp;reserved=0;本文档包含
> > > +一些针对内核的sparse信息。
> > > +关于sparse的更多信息,主要是关于它的内部结构,可以在它的官
> 方
> > > 网页上找到:
> > >
> +https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fs
> > > +par
> > >
> se.docs.kernel.org%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C23
> > >
> 3b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > >
> 7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > >
> MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C100
> > >
> 0&amp;sdata=HGfLzNLaFOAKiR288n2G%2FLrdaqeDO9T6IcJgb9o0VPw%3D&a
> > > mp;reserved=0。
> > >
> > >  使用 sparse 工具做类型检查
> > >  ~~~~~~~~~~~~~~~~~~~~~~~~~~
> > >
> > > -"__bitwise" 是一种类型属性,所以你应该这样使用它:
> > > +``__bitwis`` 是一种类型属性,所以你应该这样使用它::
> >
> > Typo.  __bitwise.
> OK,Thanks!
> >
> > Btw, not sure why you are changing all the " in original document to ``.
> sorry,I will recover back!
> >
> > >
> > >          typedef int __bitwise pm_request_t;
> > >
> > > @@ -37,16 +37,16 @@ Copyright 2006 Bob Copeland
> <me@bobcopeland.com>
> > >                  PM_RESUME = (__force pm_request_t) 2
> > >          };
> > >
> > > -这样会使 PM_SUSPEND 和 PM_RESUME 成为位方式(bitwise)整数
> (使用
> > > "__force"
> > > -是因为 sparse 会抱怨改变位方式的类型转换,但是这里我们确实需
> 要
> > > 强制进行转
> > > -换)。而且因为所有枚举值都使用了相同的类型,这里的"enum
> > > pm_request"也将
> > > -会使用那个类型做为底层实现。
> > > +这样会使PM_SUSPEND和PM_RESUME成为位方式 ``bitwise`` 整数
> (使
> > > 用
> > > +``__force`` 是因为sparse会抱怨改变位方式的类型转换,但是这里
> 我们
> > > 确实
> > > +需要强制进行转换)。而且因为所有枚举值都使用了相同的类型,
> 这
> > > 里的
> > > +``enum pm_request`` 也将会使用那个类型做为底层实现。
> > >
> > > -而且使用 gcc 编译的时候,所有的 __bitwise/__force 都会消失,最
> 后在
> > > gcc
> > > -看来它们只不过是普通的整数。
> > > +而且使用gcc编译的时候,所有的 ``__bitwise`` / ``__force`` 都会消失,
> > > +最后在gcc看来它们只不过是普通的整数。
> > >
> > > -坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成
> 一个
> > > 特殊的"int
> > > -__bitwise"类型。
> > > +坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成
> 一
> > > 个特殊的
> > > +``int__bitwise`` 类型。
> > >
> > >  所以更简单的办法只要这样做:
> > >
> > > @@ -57,35 +57,52 @@ __bitwise"类型。
> > >
> > >  现在你就有了严格的类型检查所需要的所有基础架构。
> > >
> > > -一个小提醒:常数整数"0"是特殊的。你可以直接把常数零当作位方
> 式
> > > 整数使用而
> > > -不用担心 sparse 会抱怨。这是因为"bitwise"(恰如其名)是用来确
> 保不
> > > 同位方
> > > -式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其
> 他),
> > > 对他们来说
> > > -常数"0"确实是特殊的。
> > > +一个小提醒:常数整数 ``0`` 是特殊的。你可以直接把常数零当作位
> 方
> > > 式整数使用而
> > > +不用担心sparse会抱怨。这是因为 ``bitwise`` (恰如其名)是用来
> 确保
> > > 不同位方
> > > +式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其
> 他),
> > > 对他们来说常数
> > > +``0`` 确实 *是* 特殊的。
> >
> > Not sure if the italic is a standard way to emphasis in Chinese, maybe bold
> more common.
> yes, "*是*" is bold,Thanks.

According to the document here https://thomas-cokelaer.info/tutorials/sphinx/rest_syntax.html#inline-markup-and-special-characters-e-g-bold-italic-verbatim

The *italic* is for italic, while **bold** is for bold.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] docs/zh_CN: update sparse translation
  2021-11-05  1:56       ` Leo Li
@ 2021-11-05  2:07         ` yanteng si
  0 siblings, 0 replies; 7+ messages in thread
From: yanteng si @ 2021-11-05  2:07 UTC (permalink / raw)
  To: Leo Li
  Cc: corbet, alexs, bobwxc, seakeel, Yanteng Si, chenhuacai,
	jiaxun.yang, linux-doc, realpuyuwang, src.res, wanjiabing,
	bernard

Leo Li <leoyang.li@nxp.com> 于2021年11月5日周五 上午9:56写道:
>
>
>
> > -----Original Message-----
> > From: yanteng si <siyanteng01@gmail.com>
> > Sent: Tuesday, November 2, 2021 3:52 AM
> > To: Leo Li <leoyang.li@nxp.com>
> > Cc: corbet@lwn.net; alexs@kernel.org; bobwxc@email.cn;
> > seakeel@gmail.com; Yanteng Si <siyanteng@loongson.cn>;
> > chenhuacai@kernel.org; jiaxun.yang@flygoat.com; linux-
> > doc@vger.kernel.org; realpuyuwang@gmail.com; src.res@email.cn;
> > wanjiabing@vivo.com; bernard@vivo.com
> > Subject: Re: [PATCH 2/2] docs/zh_CN: update sparse translation
> >
> > Leo Li <leoyang.li@nxp.com> 于2021年11月2日周二 上午5:02写道:
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Yanteng Si <siyanteng01@gmail.com>
> > > > Sent: Monday, November 1, 2021 2:50 AM
> > > > To: corbet@lwn.net; alexs@kernel.org; bobwxc@email.cn;
> > > > seakeel@gmail.com; Leo Li <leoyang.li@nxp.com>
> > > > Cc: Yanteng Si <siyanteng@loongson.cn>; chenhuacai@kernel.org;
> > > > jiaxun.yang@flygoat.com; linux-doc@vger.kernel.org;
> > > > realpuyuwang@gmail.com; siyanteng01@gmail.com; src.res@email.cn;
> > > > wanjiabing@vivo.com; bernard@vivo.com
> > > > Subject: [PATCH 2/2] docs/zh_CN: update sparse translation
> > > >
> > > > Sparse documents are too outdated,let's update sparse.rst to the
> > > > latest version.
> > > >
> > > > Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> > > > ---
> > > >  .../translations/zh_CN/dev-tools/sparse.rst   | 103 ++++++++++--------
> > > >  1 file changed, 60 insertions(+), 43 deletions(-)
> > > >
> > > > diff --git a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > > b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > > index 0f444b83d639..405653d156d9 100644
> > > > --- a/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > > +++ b/Documentation/translations/zh_CN/dev-tools/sparse.rst
> > > > @@ -1,34 +1,34 @@
> > > > -Chinese translated version of Documentation/dev-tools/sparse.rst
> > > > +Copyright 2004 Linus Torvalds
> > > > +Copyright 2004 Pavel Machek <pavel@ucw.cz> Copyright 2006 Bob
> > > > +Copeland <me@bobcopeland.com>
> > > >
> > > > -If you have any comment or update to the content, please contact
> > > > the -original document maintainer directly.  However, if you have a
> > > > problem -communicating in English you can also ask the Chinese
> > > > maintainer for -help.  Contact the Chinese maintainer if this
> > > > translation is outdated -or if there is a problem with the translation.
> > > > +.. include:: ../disclaimer-zh_CN.rst
> > > >
> > > > -Chinese maintainer: Li Yang <leoyang.li@nxp.com>
> > > > --------------------------------------------------------------------
> > > > -- -Documentation/dev-tools/sparse.rst 的中文翻译
> > > > +:Original: Documentation/dev-tools/sparse.rst
> > > >
> > > > -如果想评论或更新本文的内容,请直接联系原文档的维护者。如果
> > 你使
> > > > 用英文
> > > > -交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不
> > 及时
> > > > 或者翻
> > > > -译存在问题,请联系中文版维护者。
> > > > +:翻译:
> > > >
> > > > -中文版维护者: 李阳  Li Yang <leoyang.li@nxp.com>
> > > > -中文版翻译者: 李阳  Li Yang <leoyang.li@nxp.com>
> > > > + Li Yang <leoyang.li@nxp.com>
> > > >
> > > > +:校译:
> > > >
> > > > -以下为正文
> > > > --------------------------------------------------------------------
> > > > --
> > > > + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> > > >
> > > > -Copyright 2004 Linus Torvalds
> > > > -Copyright 2004 Pavel Machek <pavel@ucw.cz> -Copyright 2006 Bob
> > > > Copeland <me@bobcopeland.com>
> > > > +.. _cn_sparse:
> > > > +
> > > > +Sparse
> > > > +======
> > > > +
> > > > +Sparse是一个C程序的语义检查器;它可以用来发现内核代码的一
> > 些
> > > > 潜在问题。 关
> > > > +于sparse的概述,请参见
> > > >
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flw
> > > >
> > n.n%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C779b119cb785486
> > 8054
> > > >
> > 708d99dde188f%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63771
> > 4399
> > > >
> > 496081646%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIj
> > oiV2luMz
> > > >
> > IiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=ohSPyKOTZFiwB2
> > %2F%
> > > > 2BDXR2%2BDJk1avo9MJXUVLP7q%2Fw%2FI0%3D&amp;reserved=0
> > > >
> > et%2FArticles%2F689907%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com
> > > > %7C233b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c
> > 5c30
> > > >
> > 1635%7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8ey
> > > >
> > JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> > > >
> > 7C1000&amp;sdata=6p2FGIcfWn%2BSrCmJaURoPa1K0NsGi0aD7psdJWDAb
> > > > Mo%3D&amp;reserved=0;本文档包含
> > > > +一些针对内核的sparse信息。
> > > > +关于sparse的更多信息,主要是关于它的内部结构,可以在它的官
> > 方
> > > > 网页上找到:
> > > >
> > +https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fs
> > > > +par
> > > >
> > se.docs.kernel.org%2F&amp;data=04%7C01%7Cleoyang.li%40nxp.com%7C23
> > > >
> > 3b2566e2f74928165c08d99d0c644c%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> > > >
> > 7C0%7C0%7C637713498814921046%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > > >
> > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C100
> > > >
> > 0&amp;sdata=HGfLzNLaFOAKiR288n2G%2FLrdaqeDO9T6IcJgb9o0VPw%3D&a
> > > > mp;reserved=0。
> > > >
> > > >  使用 sparse 工具做类型检查
> > > >  ~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > >
> > > > -"__bitwise" 是一种类型属性,所以你应该这样使用它:
> > > > +``__bitwis`` 是一种类型属性,所以你应该这样使用它::
> > >
> > > Typo.  __bitwise.
> > OK,Thanks!
> > >
> > > Btw, not sure why you are changing all the " in original document to ``.
> > sorry,I will recover back!
> > >
> > > >
> > > >          typedef int __bitwise pm_request_t;
> > > >
> > > > @@ -37,16 +37,16 @@ Copyright 2006 Bob Copeland
> > <me@bobcopeland.com>
> > > >                  PM_RESUME = (__force pm_request_t) 2
> > > >          };
> > > >
> > > > -这样会使 PM_SUSPEND 和 PM_RESUME 成为位方式(bitwise)整数
> > (使用
> > > > "__force"
> > > > -是因为 sparse 会抱怨改变位方式的类型转换,但是这里我们确实需
> > 要
> > > > 强制进行转
> > > > -换)。而且因为所有枚举值都使用了相同的类型,这里的"enum
> > > > pm_request"也将
> > > > -会使用那个类型做为底层实现。
> > > > +这样会使PM_SUSPEND和PM_RESUME成为位方式 ``bitwise`` 整数
> > (使
> > > > 用
> > > > +``__force`` 是因为sparse会抱怨改变位方式的类型转换,但是这里
> > 我们
> > > > 确实
> > > > +需要强制进行转换)。而且因为所有枚举值都使用了相同的类型,
> > 这
> > > > 里的
> > > > +``enum pm_request`` 也将会使用那个类型做为底层实现。
> > > >
> > > > -而且使用 gcc 编译的时候,所有的 __bitwise/__force 都会消失,最
> > 后在
> > > > gcc
> > > > -看来它们只不过是普通的整数。
> > > > +而且使用gcc编译的时候,所有的 ``__bitwise`` / ``__force`` 都会消失,
> > > > +最后在gcc看来它们只不过是普通的整数。
> > > >
> > > > -坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成
> > 一个
> > > > 特殊的"int
> > > > -__bitwise"类型。
> > > > +坦白来说,你并不需要使用枚举类型。上面那些实际都可以浓缩成
> > 一
> > > > 个特殊的
> > > > +``int__bitwise`` 类型。
> > > >
> > > >  所以更简单的办法只要这样做:
> > > >
> > > > @@ -57,35 +57,52 @@ __bitwise"类型。
> > > >
> > > >  现在你就有了严格的类型检查所需要的所有基础架构。
> > > >
> > > > -一个小提醒:常数整数"0"是特殊的。你可以直接把常数零当作位方
> > 式
> > > > 整数使用而
> > > > -不用担心 sparse 会抱怨。这是因为"bitwise"(恰如其名)是用来确
> > 保不
> > > > 同位方
> > > > -式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其
> > 他),
> > > > 对他们来说
> > > > -常数"0"确实是特殊的。
> > > > +一个小提醒:常数整数 ``0`` 是特殊的。你可以直接把常数零当作位
> > 方
> > > > 式整数使用而
> > > > +不用担心sparse会抱怨。这是因为 ``bitwise`` (恰如其名)是用来
> > 确保
> > > > 不同位方
> > > > +式类型不会被弄混(小尾模式,大尾模式,cpu尾模式,或者其
> > 他),
> > > > 对他们来说常数
> > > > +``0`` 确实 *是* 特殊的。
> > >
> > > Not sure if the italic is a standard way to emphasis in Chinese, maybe bold
> > more common.
> > yes, "*是*" is bold,Thanks.
Sorry, I got the symbols mixed up. T_T

Thanks,
Yanteng

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-11-05  2:07 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-01  7:50 [PATCH 0/2] docs/zh_CN: move and update sparse Yanteng Si
2021-11-01  7:50 ` [PATCH 1/2] docs/zh_CN: move sparse into dev-tools Yanteng Si
2021-11-01  7:50 ` [PATCH 2/2] docs/zh_CN: update sparse translation Yanteng Si
2021-11-01 21:01   ` Leo Li
2021-11-02  8:52     ` yanteng si
2021-11-05  1:56       ` Leo Li
2021-11-05  2:07         ` yanteng si

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.