Re: [PATCH] Documentation: Chinese translation of Documentation/arm64/perf.rst

Alex Shi
2020-10-29T08:07:57Z

在 2020/10/28 下午9:48, Bailu Lin 写道:
> This is a Chinese translated version of
> Documentation/arm64/perf.rst
>
> Signed-off-by: Bailu Lin <bailu.lin@vivo.com>
> ---
> Documentation/arm64/perf.rst | 2 +
> .../translations/zh_CN/arm64/index.rst | 1 +
> .../translations/zh_CN/arm64/perf.rst | 85 +++++++++++++++++++
> 3 files changed, 88 insertions(+)
> create mode 100644 Documentation/translations/zh_CN/arm64/perf.rst
>
> diff --git a/Documentation/arm64/perf.rst b/Documentation/arm64/perf.rst
> index 9c76a97baf28..b567f177d385 100644
> --- a/Documentation/arm64/perf.rst
> +++ b/Documentation/arm64/perf.rst
> @@ -1,5 +1,7 @@
> .. SPDX-License-Identifier: GPL-2.0
>
> +.. _perf_index:
> +
> =====================
> Perf Event Attributes
> =====================
> diff --git a/Documentation/translations/zh_CN/arm64/index.rst b/Documentation/translations/zh_CN/arm64/index.rst
> index e31a6090384d..f51fed166326 100644
> --- a/Documentation/translations/zh_CN/arm64/index.rst
> +++ b/Documentation/translations/zh_CN/arm64/index.rst
> @@ -15,3 +15,4 @@ ARM64 架构
>
> amu
> hugetlbpage
> + perf
> diff --git a/Documentation/translations/zh_CN/arm64/perf.rst b/Documentation/translations/zh_CN/arm64/perf.rst
> new file mode 100644
> index 000000000000..be8269dd5d9a
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/arm64/perf.rst
> @@ -0,0 +1,85 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +
> +.. include:: ../disclaimer-zh_CN.rst
> +
> +:Original: :ref:`Documentation/arm64/perf.rst <perf_index>`
> +
> +Translator: Bailu Lin <bailu.lin@vivo.com>
> +
> +=============
> +Perf 事件属性
> +=============
> +
> +:作者: Andrew Murray <andrew.murray@arm.com>
> +:日期: 2019-03-06
> +
> +exclude_user
> +------------
> +
> +该属性排除用户空间。
> +
> +用户空间始终运行在 EL0，因此该属性将排除 EL0。
> +
> +
> +exclude_kernel
> +--------------
> +
> +该属性排除内核空间。
> +
> +打开 VHE 时内核运行在 EL2，不打开 VHE 时内核运行在 EL1。客户端

guest kernel could be better translated as '客户内核' ?
'客户端' is easy to confuse with aonther word 'client'
So shall we better to use 客户， or 客户机 for 'guest/guest machine'

And 'host' here means 宿主/宿主机 better than 主机。

Also couple wiki tranlates hypervisor as 虚拟机监视器

> +内核总是运行在 EL1。
> +
> +对于主机端，该属性排除 EL1 和 VHE 上的 EL2。
> +
> +对于客户端，该属性排除 EL1。请注意客户端从来不会运行在 EL2。
> +
> +
> +exclude_hv
> +----------
> +
> +该属性排除虚拟机监控器。
> +
> +对于 VHE 主机端该属性将被忽略，因为此时主机端内核是虚拟机监控器。

s/此时/我们认为/

> +
> +对于 non-VHE 主机端该属性将排除 EL2，因为虚拟机监控器运行在 EL2
> +的任何代码主要用于客户端和主机端的切换。
> +
> +对于客户端该属性无效。请注意客户端从来不会运行在 EL2。
> +
> +
> +exclude_host / exclude_guest
> +----------------------------
> +
> +这些属性分别排除了 KVM 主机端和客户端。
> +
> +KVM 主机端可能运行在 EL0（用户空间），EL1（non-VHE 内核）和
> +EL2（VHE 内核 或 non-VHE 虚拟机监控器）。
> +
> +KVM 客户端可能运行在 EL0（用户空间）和 EL1（内核）。
> +
> +由于主机端和客户端之间重叠的异常级别，我们不能仅仅依靠 PMU 的硬件异
> +常过滤机制-因此我们必须启用/禁用对于客户端进入和退出的计数。而这在
> +VHE 和 non-VHE 系统上表现不同。
> +
> +对于 non-VHE 系统的 exclude_host 属性排除 EL2 - 在进入和退出客户
> +端时，我们会根据 exclude_host 和 exclude_guest 属性在适当的情况下
> +禁用/启用该事件。
> +
> +对于 VHE 系统的 exclude_guest 属性排除 EL1，而对其中的 exclude_host
> +属性同时排除 EL0，EL2。在进入和退出客户端时，我们会适当地根据
> +exclude_host 和 exclude_guest 属性包括/排除 EL0。
> +
> +以上声明也适用于在 not-VHE 客户端使用这些属性时，但是请注意客户端从
> +来不会运行在 EL2。
> +
> +
> +准确性
> +------
> +
> +在 non-VHE 主机端上，我们在 EL2 进入/退出主机端/客户端的切换时启用/
> +关闭计数器 -但是在启用/禁用计数器和进入/退出客户端之间存在一段延时。
> +对于 exclude_host， 我们可以通过过滤 EL2 消除在客户端进入/退出边界
> +上用于计数客户端事件的主机端事件计数器。但是当使用 !exclude_hv 时，
> +在客户端进入/退出有一个小的暗窗口无法捕获到主机端的事件。
> +
> +在VHE系统尚没有暗窗口。
>

暗窗口 maynot the best, but I have no better on blackout window..

Thanks
Alex