All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/8] docs/zh_CN: add some virt docs translation
@ 2021-08-01 13:32 Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 1/8] docs/zh_CN: add virt index translation Yanteng Si
                   ` (7 more replies)
  0 siblings, 8 replies; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

v3:

* Modified some words under Alex's advices;
* add 校译者(proofreading) sign.If you don't want me to do this, please let me know
* pick Alex's Review-by tag for [patch 1-4/8]

v2:

patch 2/8:

* Modified some words under Feiyang's advices;
* add 校译者(proofreading) sign.If you don't want me to do this, please let me know.

Yanteng Si (8):
  docs/zh_CN: add virt index translation
  docs/zh_CN: add virt paravirt_ops translation
  docs/zh_CN: add virt guest-halt-polling translation
  docs/zh_CN: add virt ne_overview translation
  docs/zh_CN: add virt acrn index translation
  docs/zh_CN: add virt acrn introduction translation
  docs/zh_CN: add virt acrn io-request translation
  docs/zh_CN: add virt acrn cpuid translation

 Documentation/translations/zh_CN/index.rst    |  2 +-
 .../translations/zh_CN/virt/acrn/cpuid.rst    | 56 +++++++++++
 .../translations/zh_CN/virt/acrn/index.rst    | 25 +++++
 .../zh_CN/virt/acrn/introduction.rst          | 52 ++++++++++
 .../zh_CN/virt/acrn/io-request.rst            | 99 +++++++++++++++++++
 .../zh_CN/virt/guest-halt-polling.rst         | 87 ++++++++++++++++
 .../translations/zh_CN/virt/index.rst         | 38 +++++++
 .../translations/zh_CN/virt/ne_overview.rst   | 88 +++++++++++++++++
 .../translations/zh_CN/virt/paravirt_ops.rst  | 41 ++++++++
 9 files changed, 487 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/cpuid.rst
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/index.rst
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/introduction.rst
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/io-request.rst
 create mode 100644 Documentation/translations/zh_CN/virt/guest-halt-polling.rst
 create mode 100644 Documentation/translations/zh_CN/virt/index.rst
 create mode 100644 Documentation/translations/zh_CN/virt/ne_overview.rst
 create mode 100644 Documentation/translations/zh_CN/virt/paravirt_ops.rst

-- 
2.27.0


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

* [PATCH v3 1/8] docs/zh_CN: add virt index translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation Yanteng Si
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Add virt to .../zh_CN/index and translate it into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
---
 Documentation/translations/zh_CN/index.rst    |  2 +-
 .../translations/zh_CN/virt/index.rst         | 37 +++++++++++++++++++
 2 files changed, 38 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/index.rst

diff --git a/Documentation/translations/zh_CN/index.rst b/Documentation/translations/zh_CN/index.rst
index e0d51a167032..c311c8741e6f 100644
--- a/Documentation/translations/zh_CN/index.rst
+++ b/Documentation/translations/zh_CN/index.rst
@@ -102,6 +102,7 @@ TODOList:
    iio/index
    sound/index
    filesystems/index
+   virt/index
 
 TODOList:
 
@@ -127,7 +128,6 @@ TODOList:
 * spi/index
 * w1/index
 * watchdog/index
-* virt/index
 * input/index
 * hwmon/index
 * gpu/index
diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
new file mode 100644
index 000000000000..9e5df5b5de15
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/index.rst
@@ -0,0 +1,37 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/index.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_index:
+
+===============
+Linux虚拟化支持
+===============
+
+.. toctree::
+   :maxdepth: 2
+
+TODOLIST:
+
+   kvm/index
+   uml/user_mode_linux_howto_v2
+   paravirt_ops
+   guest-halt-polling
+   ne_overview
+   acrn/index
+
+.. only:: html and subproject
+
+   Indices
+   =======
+
+   * :ref:`genindex`
-- 
2.27.0


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

* [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 1/8] docs/zh_CN: add virt index translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-04  2:39   ` Alex Shi
  2021-08-01 13:32 ` [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation Yanteng Si
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/paravirt_ops.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
---
 .../translations/zh_CN/virt/index.rst         |  3 +-
 .../translations/zh_CN/virt/paravirt_ops.rst  | 41 +++++++++++++++++++
 2 files changed, 43 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/paravirt_ops.rst

diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
index 9e5df5b5de15..b9b23bb88ffa 100644
--- a/Documentation/translations/zh_CN/virt/index.rst
+++ b/Documentation/translations/zh_CN/virt/index.rst
@@ -20,11 +20,12 @@ Linux虚拟化支持
 .. toctree::
    :maxdepth: 2
 
+   paravirt_ops
+
 TODOLIST:
 
    kvm/index
    uml/user_mode_linux_howto_v2
-   paravirt_ops
    guest-halt-polling
    ne_overview
    acrn/index
diff --git a/Documentation/translations/zh_CN/virt/paravirt_ops.rst b/Documentation/translations/zh_CN/virt/paravirt_ops.rst
new file mode 100644
index 000000000000..e9e0708a1d63
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/paravirt_ops.rst
@@ -0,0 +1,41 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/paravirt_ops.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 陈飞杨 Feiyang Chen <chenfeiyang@loongson.cn>
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_paravirt_ops:
+
+============
+Paravirt_ops
+============
+
+Linux提供了对不同管理程序虚拟化技术的支持。历史上,为了支持不同的虚拟机超级管理器
+(hypervisor,下文简称超级管理器),需要不同的二进制内核,这个限制已经被pv_ops移
+除了。Linux pv_ops是一个虚拟化API,它能够支持不同的管理程序。它允许每个管理程序
+优先于关键操作,并允许单一的内核二进制文件在所有支持的执行环境中运行,包括本机——没
+有任何管理程序。
+
+pv_ops提供了一组函数指针,代表了与低级关键指令和各领域高级功能相对应的操作。
+pv-ops允许在运行时进行优化,在启动时对低级关键操作进行二进制修补。
+
+pv_ops操作被分为三类:
+
+- 简单的间接调用
+   这些操作对应于高水平的函数,众所周知,间接调用的开销并不十分重要。
+
+- 间接调用,允许用二进制补丁进行优化
+   通常情况下,这些操作对应于低级别的关键指令。它们被频繁地调用,并且是对性能关
+   键。开销是非常重要的。
+
+- 一套用于手写汇编代码的宏程序
+   手写的汇编代码(.S文件)也需要准虚拟化,因为它们包括敏感指令或其中的一些代
+   码路径对性能非常关键。
-- 
2.27.0


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

* [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 1/8] docs/zh_CN: add virt index translation Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-04  2:58   ` Alex Shi
  2021-08-01 13:32 ` [PATCH v3 4/8] docs/zh_CN: add virt ne_overview translation Yanteng Si
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/guest-halt-polling.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
---
 .../zh_CN/virt/guest-halt-polling.rst         | 87 +++++++++++++++++++
 .../translations/zh_CN/virt/index.rst         |  2 +-
 2 files changed, 88 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/guest-halt-polling.rst

diff --git a/Documentation/translations/zh_CN/virt/guest-halt-polling.rst b/Documentation/translations/zh_CN/virt/guest-halt-polling.rst
new file mode 100644
index 000000000000..f12712c506c3
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/guest-halt-polling.rst
@@ -0,0 +1,87 @@
+.. include:: ../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/guest-halt-polling.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_guest-halt-polling:
+
+========================================
+客户机停止轮询机制(Guest halt polling)
+========================================
+
+cpuidle_haltpoll驱动,与haltpoll管理器一起,允许客户机vcpus在停止前轮询
+一定的时间。
+
+这为物理机侧的轮询提供了以下好处:
+
+	1) 在执行轮询时,POLL标志被设置,这允许远程vCPU在执行唤醒时避免发送
+	   IPI(以及处理IPI的相关成本)。
+
+	2) 可以避免虚拟机退出的成本。
+
+客户机侧轮询的缺点是,即使在物理机中的其他可运行任务中也会进行轮询。
+
+其基本逻辑如下。一个全局值,即guest_halt_poll_ns,是由用户配置的,表示允
+许轮询的最大时间量。这个值是固定的。
+
+每个vcpu都有一个可调整的guest_halt_poll_ns("per-cpu guest_halt_poll_ns"),
+它由算法响应事件进行调整(解释如下)。
+
+模块参数
+========
+
+haltpoll管理器有5个可调整的模块参数:
+
+1) guest_halt_poll_ns:
+
+轮询停止前执行的最大时间,以纳秒为单位。
+
+默认值: 200000
+
+2) guest_halt_poll_shrink:
+
+当唤醒事件发生在全局的guest_halt_poll_ns之后,用于缩减每个CPU的guest_halt_poll_ns
+的划分系数。
+
+默认值: 2
+
+3) guest_halt_poll_grow:
+
+当事件发生在per-cpu guest_halt_poll_ns之后但在global guest_halt_poll_ns之前,
+用于增长per-cpu guest_halt_poll_ns的乘法系数。
+
+默认值: 2
+
+4) guest_halt_poll_grow_start:
+
+在系统空闲的情况下,每个cpu guest_halt_poll_ns最终达到零。这个值设置了增长时的
+初始每cpu guest_halt_poll_ns。这个值可以从10000开始增加,以避免在最初的增长阶
+段出现失误。:
+
+10k, 20k, 40k, ... (例如,假设guest_halt_poll_grow=2).
+
+默认值: 50000
+
+5) guest_halt_poll_allow_shrink:
+
+允许缩减的Bool参数。设置为N以避免它(一旦达到全局的guest_halt_poll_ns值,每CPU的
+guest_halt_poll_ns将保持高位)。
+
+默认值: Y
+
+模块参数可以从Debugfs文件中设置,在::
+
+	/sys/module/haltpoll/parameters/
+
+进一步说明
+==========
+
+- 在设置guest_halt_poll_ns参数时应该小心,因为一个大的值有可能使机器上的cpu使用率
+  达到100%,否则几乎是完全空闲的。
diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
index b9b23bb88ffa..b94f6a3c2257 100644
--- a/Documentation/translations/zh_CN/virt/index.rst
+++ b/Documentation/translations/zh_CN/virt/index.rst
@@ -21,12 +21,12 @@ Linux虚拟化支持
    :maxdepth: 2
 
    paravirt_ops
+   guest-halt-polling
 
 TODOLIST:
 
    kvm/index
    uml/user_mode_linux_howto_v2
-   guest-halt-polling
    ne_overview
    acrn/index
 
-- 
2.27.0


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

* [PATCH v3 4/8] docs/zh_CN: add virt ne_overview translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
                   ` (2 preceding siblings ...)
  2021-08-01 13:32 ` [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 5/8] docs/zh_CN: add virt acrn index translation Yanteng Si
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/ne_overview.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>
---
 .../translations/zh_CN/virt/index.rst         |  2 +-
 .../translations/zh_CN/virt/ne_overview.rst   | 88 +++++++++++++++++++
 2 files changed, 89 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/ne_overview.rst

diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
index b94f6a3c2257..8e7713163962 100644
--- a/Documentation/translations/zh_CN/virt/index.rst
+++ b/Documentation/translations/zh_CN/virt/index.rst
@@ -22,12 +22,12 @@ Linux虚拟化支持
 
    paravirt_ops
    guest-halt-polling
+   ne_overview
 
 TODOLIST:
 
    kvm/index
    uml/user_mode_linux_howto_v2
-   ne_overview
    acrn/index
 
 .. only:: html and subproject
diff --git a/Documentation/translations/zh_CN/virt/ne_overview.rst b/Documentation/translations/zh_CN/virt/ne_overview.rst
new file mode 100644
index 000000000000..2455b371abea
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/ne_overview.rst
@@ -0,0 +1,88 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/ne_overview.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_ne_overview:
+
+==============
+Nitro Enclaves
+==============
+
+概述
+====
+
+Nitro Enclaves(NE)是亚马逊弹性计算云(EC2)的一项新功能,允许客户在EC2实
+例中划分出孤立的计算环境[1]。
+
+例如,一个处理敏感数据并在虚拟机中运行的应用程序,可以与在同一虚拟机中运行的
+其他应用程序分开。然后,这个应用程序在一个独立于主虚拟机的虚拟机中运行,即
+enclave。
+
+一个enclave与催生它的虚拟机一起运行。这种设置符合低延迟应用的需要。为enclave
+分配的资源,如内存和CPU,是从主虚拟机中分割出来的。每个enclave都被映射到一
+个运行在主虚拟机中的进程,该进程通过一个ioctl接口与NE驱动进行通信。
+
+在这个意义上,有两个组成部分。
+
+1. 一个enclave抽象进程——一个运行在主虚拟机客体中的用户空间进程,它使用NE驱动
+提供的ioctl接口来生成一个enclave虚拟机(这就是下面的2)。
+
+有一个NE模拟的PCI设备暴露给主虚拟机。这个新的PCI设备的驱动被包含在NE驱动中。
+
+ioctl逻辑被映射到PCI设备命令,例如,NE_START_ENCLAVE ioctl映射到一个enclave
+启动PCI命令。然后,PCI设备命令被翻译成在管理程序方面采取的行动;也就是在运
+行主虚拟机的主机上运行的Nitro管理程序。Nitro管理程序是基于KVM核心技术的。
+
+2. enclave本身——一个运行在与催生它的主虚拟机相同的主机上的虚拟机。内存和CPU
+从主虚拟机中分割出来,专门用于enclave虚拟机。enclave没有连接持久性存储。
+
+从主虚拟机中分割出来并给enclave的内存区域需要对齐2 MiB/1 GiB物理连续的内存
+区域(或这个大小的倍数,如8 MiB)。该内存可以通过使用hugetlbfs从用户空间分
+配[2][3]。一个enclave的内存大小需要至少64 MiB。enclave内存和CPU需要来自同
+一个NUMA节点。
+
+一个enclave在专用的核心上运行。CPU 0及其同级别的CPU需要保持对主虚拟机的可用
+性。CPU池必须由具有管理能力的用户为NE目的进行设置。关于CPU池的格式,请看内核
+文档[4]中的cpu list部分。
+
+enclave通过本地通信通道与主虚拟机进行通信,使用virtio-vsock[5]。主虚拟机有
+virtio-pci vsock模拟设备,而飞地虚拟机有virtio-mmio vsock模拟设备。vsock
+设备使用eventfd作为信令。enclave虚拟机看到通常的接口——本地APIC和IOAPIC——从
+virtio-vsock设备获得中断。virtio-mmio设备被放置在典型的4 GiB以下的内存中。
+
+在enclave中运行的应用程序需要和将在enclave虚拟机中运行的操作系统(如内核、
+ramdisk、init)一起被打包到enclave镜像中。enclave虚拟机有自己的内核并遵循标
+准的Linux启动协议[6]。
+
+内核bzImage、内核命令行、ramdisk(s)是enclave镜像格式(EIF)的一部分;另外
+还有一个EIF头,包括元数据,如magic number、eif版本、镜像大小和CRC。
+
+哈希值是为整个enclave镜像(EIF)、内核和ramdisk(s)计算的。例如,这被用来检
+查在enclave虚拟机中加载的enclave镜像是否是打算运行的那个。
+
+这些加密测量包括在由Nitro超级管理器成的签名证明文件中,并进一步用来证明enclave
+的身份;KMS是NE集成的服务的一个例子,它检查证明文件。
+
+enclave镜像(EIF)被加载到enclave内存中,偏移量为8 MiB。enclave中的初始进程
+连接到主虚拟机的vsock CID和一个预定义的端口--9000,以发送一个心跳值--0xb7。这
+个机制用于在主虚拟机中检查enclave是否已经启动。主虚拟机的CID是3。
+
+如果enclave虚拟机崩溃或优雅地退出,NE驱动会收到一个中断事件。这个事件会通过轮询
+通知机制进一步发送到运行在主虚拟机中的用户空间enclave进程。然后,用户空间enclave
+进程就可以退出了。
+
+[1] https://aws.amazon.com/ec2/nitro/nitro-enclaves/
+[2] https://www.kernel.org/doc/html/latest/admin-guide/mm/hugetlbpage.html
+[3] https://lwn.net/Articles/807108/
+[4] https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
+[5] https://man7.org/linux/man-pages/man7/vsock.7.html
+[6] https://www.kernel.org/doc/html/latest/x86/boot.html
-- 
2.27.0


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

* [PATCH v3 5/8] docs/zh_CN: add virt acrn index translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
                   ` (3 preceding siblings ...)
  2021-08-01 13:32 ` [PATCH v3 4/8] docs/zh_CN: add virt ne_overview translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-04  3:00   ` Alex Shi
  2021-08-01 13:32 ` [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation Yanteng Si
                   ` (2 subsequent siblings)
  7 siblings, 1 reply; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/acrn/index.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
---
 .../translations/zh_CN/virt/acrn/index.rst    | 27 +++++++++++++++++++
 .../translations/zh_CN/virt/index.rst         |  2 +-
 2 files changed, 28 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/index.rst

diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
new file mode 100644
index 000000000000..6061e790ee83
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
@@ -0,0 +1,27 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/acrn/index.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_acrn_index:
+
+==============
+ACRN超级管理器
+==============
+
+.. toctree::
+   :maxdepth: 1
+
+TODOLIST:
+
+   introduction
+   io-request
+   cpuid
diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
index 8e7713163962..f8dd13681341 100644
--- a/Documentation/translations/zh_CN/virt/index.rst
+++ b/Documentation/translations/zh_CN/virt/index.rst
@@ -23,12 +23,12 @@ Linux虚拟化支持
    paravirt_ops
    guest-halt-polling
    ne_overview
+   acrn/index
 
 TODOLIST:
 
    kvm/index
    uml/user_mode_linux_howto_v2
-   acrn/index
 
 .. only:: html and subproject
 
-- 
2.27.0


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

* [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
                   ` (4 preceding siblings ...)
  2021-08-01 13:32 ` [PATCH v3 5/8] docs/zh_CN: add virt acrn index translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-04  3:01   ` Alex Shi
  2021-08-01 13:32 ` [PATCH v3 7/8] docs/zh_CN: add virt acrn io-request translation Yanteng Si
  2021-08-01 13:32 ` [PATCH v3 8/8] docs/zh_CN: add virt acrn cpuid translation Yanteng Si
  7 siblings, 1 reply; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/acrn/introduction.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
---
 .../translations/zh_CN/virt/acrn/index.rst    |  4 +-
 .../zh_CN/virt/acrn/introduction.rst          | 52 +++++++++++++++++++
 2 files changed, 55 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/introduction.rst

diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
index 6061e790ee83..b8f502033455 100644
--- a/Documentation/translations/zh_CN/virt/acrn/index.rst
+++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
@@ -20,8 +20,10 @@ ACRN超级管理器
 .. toctree::
    :maxdepth: 1
 
+   introduction
+
 TODOLIST:
 
-   introduction
+
    io-request
    cpuid
diff --git a/Documentation/translations/zh_CN/virt/acrn/introduction.rst b/Documentation/translations/zh_CN/virt/acrn/introduction.rst
new file mode 100644
index 000000000000..b31034bcfa4e
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/acrn/introduction.rst
@@ -0,0 +1,52 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/acrn/introduction.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_acrn_introduction:
+
+ACRN超级管理器介绍
+==================
+
+ACRN超级管理器是一个第一类超级管理器,直接在裸机硬件上运行。它有一个特权管理虚拟机,称为服
+务虚拟机,用于管理用户虚拟机和进行I/O仿真。
+
+ACRN用户空间是一个运行在服务虚拟机中的应用程序,它根据命令行配置为用户虚拟机仿真设备。
+ACRN管理程序服务模块(HSM)是服务虚拟机中的一个内核模块,为ACRN用户空间提供管理程序服
+务。
+
+下图展示了该架构。
+
+::
+
+                服务端VM                      用户端VM
+      +----------------------------+  |  +------------------+
+      |        +--------------+    |  |  |                  |
+      |        |ACRN用户空间  |    |  |  |                  |
+      |        +--------------+    |  |  |                  |
+      |-----------------ioctl------|  |  |                  |   ...
+      |内核空间       +----------+ |  |  |                  |
+      |               |   HSM    | |  |  | 驱动             |
+      |               +----------+ |  |  |                  |
+      +--------------------|-------+  |  +------------------+
+  +---------------------hypercall----------------------------------------+
+  |                         ACRN超级管理器                               |
+  +----------------------------------------------------------------------+
+  |                          硬件                                        |
+  +----------------------------------------------------------------------+
+
+ACRN用户空间为用户虚拟机分配内存,配置和初始化用户虚拟机使用的设备,加载虚拟引导程序,
+初始化虚拟CPU状态,处理来自用户虚拟机的I/O请求访问。它使用ioctls来与HSM通信。HSM通过
+与ACRN超级管理器的hypercalls进行交互来实现管理服务。HSM向用户空间输出一个char设备接口
+(/dev/acrn_hsm)。
+
+ACRN超级管理器是开源的,任何人都可以贡献。源码库可在
+https://github.com/projectacrn/acrn-hypervisor-- 
2.27.0


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

* [PATCH v3 7/8] docs/zh_CN: add virt acrn io-request translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
                   ` (5 preceding siblings ...)
  2021-08-01 13:32 ` [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-04  3:02   ` Alex Shi
  2021-08-01 13:32 ` [PATCH v3 8/8] docs/zh_CN: add virt acrn cpuid translation Yanteng Si
  7 siblings, 1 reply; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/acrn/io-request.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
---
 .../translations/zh_CN/virt/acrn/index.rst    |  3 +-
 .../zh_CN/virt/acrn/io-request.rst            | 99 +++++++++++++++++++
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/io-request.rst

diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
index b8f502033455..b53976e20a34 100644
--- a/Documentation/translations/zh_CN/virt/acrn/index.rst
+++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
@@ -21,9 +21,10 @@ ACRN超级管理器
    :maxdepth: 1
 
    introduction
+   io-request
 
 TODOLIST:
 
 
-   io-request
+
    cpuid
diff --git a/Documentation/translations/zh_CN/virt/acrn/io-request.rst b/Documentation/translations/zh_CN/virt/acrn/io-request.rst
new file mode 100644
index 000000000000..1a25ea15ae07
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/acrn/io-request.rst
@@ -0,0 +1,99 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/acrn/io-request.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_acrn_io-request:
+
+I/O请求处理
+===========
+
+客户虚拟机的I/O请求由超级管理器构建,由ACRN超级管理器服务模块分发到与I/O请求的地址范
+围相对应的I/O客户端。I/O请求处理的细节将在以下章节描述。
+
+1. I/O请求
+----------
+
+对于每个客户虚拟机,有一个共享的4KB字节的内存区域,用于超级管理器和服务虚拟机之间的
+I/O请求通信。一个I/O请求是一个256字节的结构体缓冲区,它是 "acrn_io_request" 结构
+体,当客户虚拟机中发生被困的I/O访问时,由超级管理器的I/O处理器填充。服务虚拟机中的
+ACRN用户空间首先分配一个4KB字节的页面,并将缓冲区的GPA(客户物理地址)传递给管理平
+台。缓冲区被用作16个I/O请求槽的数组,每个I/O请求槽为256字节。这个数组是按vCPU ID
+索引的。
+
+2. I/O客户端
+------------
+
+一个I/O客户端负责处理客户虚拟机的I/O请求,其访问的GPA在一定范围内。每个客户虚拟机
+可以关联多个I/O客户端。每个客户虚拟机都有一个特殊的客户端,称为默认客户端,负责处理
+所有不在其他客户端范围内的I/O请求。ACRN用户空间充当每个客户虚拟机的默认客户端。
+
+下面的图示显示了I/O请求共享缓冲区、I/O请求和I/O客户端之间的关系。
+
+::
+
+     +------------------------------------------------------+
+     |                                       服务VM         |
+     |+--------------------------------------------------+  |
+     ||      +----------------------------------------+  |  |
+     ||      | 共享页                 ACRN用户空间    |  |  |
+     ||      |    +-----------------+  +------------+ |  |  |
+     ||   +----+->| acrn_io_request |<-+  默认      | |  |  |
+     ||   |  | |  +-----------------+  | I/O客户端  | |  |  |
+     ||   |  | |  |       ...       |  +------------+ |  |  |
+     ||   |  | |  +-----------------+                 |  |  |
+     ||   |  +-|--------------------------------------+  |  |
+     ||---|----|-----------------------------------------|  |
+     ||   |    |                             内核        |  |
+     ||   |    |            +----------------------+     |  |
+     ||   |    |            | +-------------+  HSM |     |  |
+     ||   |    +--------------+             |      |     |  |
+     ||   |                 | | I/O客户端   |      |     |  |
+     ||   |                 | |             |      |     |  |
+     ||   |                 | +-------------+      |     |  |
+     ||   |                 +----------------------+     |  |
+     |+---|----------------------------------------------+  |
+     +----|-------------------------------------------------+
+          |
+     +----|-------------------------------------------------+
+     |  +-+-----------+                                     |
+     |  | I/O处理     |              ACRN超级管理器         |
+     |  +-------------+                                     |
+     +------------------------------------------------------+
+
+3. I/O请求状态转换
+------------------
+
+一个ACRN I/O请求的状态转换如下。
+
+::
+
+   FREE -> PENDING -> PROCESSING -> COMPLETE -> FREE -> ...
+
+- FREE: 这个I/O请求槽是空的
+- PENDING: 在这个槽位上有一个有效的I/O请求正在等待
+- PROCESSING: 正在处理I/O请求
+- COMPLETE: 该I/O请求已被处理
+
+处于COMPLETE或FREE状态的I/O请求是由超级管理器拥有的。HSM和ACRN用户空间负责处理其
+他的。
+
+4. I/O请求的处理流程
+--------------------
+
+a. 当客户虚拟机中发生被陷入的I/O访问时,超级管理器的I/O处理程序将把I/O请求填充为
+   PENDING状态。
+b. 超级管理器向服务虚拟机发出一个向上调用,这是一个通知中断。
+c. upcall处理程序会安排一个工作者来调度I/O请求。
+d. 工作者寻找PENDING I/O请求,根据I/O访问的地址将其分配给不同的注册客户,将其
+   状态更新为PROCESSING,并通知相应的客户进行处理。
+e. 被通知的客户端处理指定的I/O请求。
+f. HSM将I/O请求状态更新为COMPLETE,并通过hypercalls通知超级管理器完成。
-- 
2.27.0


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

* [PATCH v3 8/8] docs/zh_CN: add virt acrn cpuid translation
  2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
                   ` (6 preceding siblings ...)
  2021-08-01 13:32 ` [PATCH v3 7/8] docs/zh_CN: add virt acrn io-request translation Yanteng Si
@ 2021-08-01 13:32 ` Yanteng Si
  2021-08-04  3:03   ` Alex Shi
  7 siblings, 1 reply; 18+ messages in thread
From: Yanteng Si @ 2021-08-01 13:32 UTC (permalink / raw)
  To: corbet, alexs, bobwxc, seakeel
  Cc: Yanteng Si, chenhuacai, jiaxun.yang, linux-doc, realpuyuwang,
	chenfeiyang, chris.chenfeiyang, siyanteng01

Translate Documentation/virt/acrn/cpuid.rst into Chinese.

Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
---
 .../translations/zh_CN/virt/acrn/cpuid.rst    | 56 +++++++++++++++++++
 .../translations/zh_CN/virt/acrn/index.rst    |  5 --
 2 files changed, 56 insertions(+), 5 deletions(-)
 create mode 100644 Documentation/translations/zh_CN/virt/acrn/cpuid.rst

diff --git a/Documentation/translations/zh_CN/virt/acrn/cpuid.rst b/Documentation/translations/zh_CN/virt/acrn/cpuid.rst
new file mode 100644
index 000000000000..252aa10ad52e
--- /dev/null
+++ b/Documentation/translations/zh_CN/virt/acrn/cpuid.rst
@@ -0,0 +1,56 @@
+.. SPDX-License-Identifier: GPL-2.0
+.. include:: ../../disclaimer-zh_CN.rst
+
+:Original: Documentation/virt/acrn/cpuid.rst
+
+:翻译:
+
+ 司延腾 Yanteng Si <siyanteng@loongson.cn>
+
+:校译:
+
+ 时奎亮 Alex Shi <alexs@kernel.org>
+
+.. _cn_virt_acrn_cpuid:
+
+==============
+ACRN CPUID位域
+==============
+
+在ACRN超级管理器上运行的客户虚拟机可以使用CPUID检查其一些功能。
+
+ACRN的cpuid函数是:
+
+函数: 0x40000000
+
+返回::
+
+   eax = 0x40000010
+   ebx = 0x4e524341
+   ecx = 0x4e524341
+   edx = 0x4e524341
+
+注意,ebx,ecx和edx中的这个值对应于字符串“ACRNACRNACRN”。eax中的值对应于这个叶子
+中存在的最大cpuid函数,如果将来有更多的函数加入,将被更新。
+
+函数: define ACRN_CPUID_FEATURES (0x40000001)
+
+返回::
+
+          ebx, ecx, edx
+          eax = an OR'ed group of (1 << flag)
+
+其中 ``flag`` 的定义如下:
+
+================================= =========== ================================
+标志                              值          描述
+================================= =========== ================================
+ACRN_FEATURE_PRIVILEGED_VM        0           客户虚拟机是一个有特权的虚拟机
+================================= =========== ================================
+
+函数: 0x40000010
+
+返回::
+
+          ebx, ecx, edx
+          eax = (Virtual) TSC frequency in kHz.
diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
index b53976e20a34..34605d87f103 100644
--- a/Documentation/translations/zh_CN/virt/acrn/index.rst
+++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
@@ -22,9 +22,4 @@ ACRN超级管理器
 
    introduction
    io-request
-
-TODOLIST:
-
-
-
    cpuid
-- 
2.27.0


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

* Re: [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation
  2021-08-01 13:32 ` [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation Yanteng Si
@ 2021-08-04  2:39   ` Alex Shi
  2021-08-04  6:41     ` yanteng si
  0 siblings, 1 reply; 18+ messages in thread
From: Alex Shi @ 2021-08-04  2:39 UTC (permalink / raw)
  To: Yanteng Si
  Cc: Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	chris.chenfeiyang, yanteng si

On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
>
> Translate Documentation/virt/paravirt_ops.rst into Chinese.
>
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> Reviewed-by: Alex Shi <alexs@kernel.org>
> ---
>  .../translations/zh_CN/virt/index.rst         |  3 +-
>  .../translations/zh_CN/virt/paravirt_ops.rst  | 41 +++++++++++++++++++
>  2 files changed, 43 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/translations/zh_CN/virt/paravirt_ops.rst
>
> diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
> index 9e5df5b5de15..b9b23bb88ffa 100644
> --- a/Documentation/translations/zh_CN/virt/index.rst
> +++ b/Documentation/translations/zh_CN/virt/index.rst
> @@ -20,11 +20,12 @@ Linux虚拟化支持
>  .. toctree::
>     :maxdepth: 2
>
> +   paravirt_ops
> +
>  TODOLIST:
>
>     kvm/index
>     uml/user_mode_linux_howto_v2
> -   paravirt_ops
>     guest-halt-polling
>     ne_overview
>     acrn/index
> diff --git a/Documentation/translations/zh_CN/virt/paravirt_ops.rst b/Documentation/translations/zh_CN/virt/paravirt_ops.rst
> new file mode 100644
> index 000000000000..e9e0708a1d63
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/virt/paravirt_ops.rst
> @@ -0,0 +1,41 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +.. include:: ../disclaimer-zh_CN.rst
> +
> +:Original: Documentation/virt/paravirt_ops.rst
> +
> +:翻译:
> +
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> +
> +:校译:
> +
> + 陈飞杨 Feiyang Chen <chenfeiyang@loongson.cn>
> + 时奎亮 Alex Shi <alexs@kernel.org>
> +
> +.. _cn_virt_paravirt_ops:
> +
> +============
> +Paravirt_ops

this title could be translated as 半虚拟化操作?

> +============
> +
> +Linux提供了对不同管理程序虚拟化技术的支持。历史上,为了支持不同的虚拟机超级管理器
> +(hypervisor,下文简称超级管理器),需要不同的二进制内核,这个限制已经被pv_ops移
> +除了。Linux pv_ops是一个虚拟化API,它能够支持不同的管理程序。它允许每个管理程序
> +优先于关键操作,并允许单一的内核二进制文件在所有支持的执行环境中运行,包括本机——没
> +有任何管理程序。
> +
> +pv_ops提供了一组函数指针,代表了与低级关键指令和各领域高级功能相对应的操作。
> +pv-ops允许在运行时进行优化,在启动时对低级关键操作进行二进制修补。
> +
> +pv_ops操作被分为三类:
> +
> +- 简单的间接调用
> +   这些操作对应于高水平的函数,众所周知,间接调用的开销并不十分重要。
> +
> +- 间接调用,允许用二进制补丁进行优化
> +   通常情况下,这些操作对应于低级别的关键指令。它们被频繁地调用,并且是对性能关
> +   键。开销是非常重要的。
> +
> +- 一套用于手写汇编代码的宏程序
> +   手写的汇编代码(.S文件)也需要准虚拟化,因为它们包括敏感指令或其中的一些代

paravirt usually is tranlated as 半虚拟化,

others looks good for me.

Thanks
Alex

> +   码路径对性能非常关键。
> --
> 2.27.0
>

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

* Re: [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation
  2021-08-01 13:32 ` [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation Yanteng Si
@ 2021-08-04  2:58   ` Alex Shi
  2021-08-04  6:43     ` yanteng si
  0 siblings, 1 reply; 18+ messages in thread
From: Alex Shi @ 2021-08-04  2:58 UTC (permalink / raw)
  To: Yanteng Si
  Cc: Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	chris.chenfeiyang, yanteng si

On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
>
> Translate Documentation/virt/guest-halt-polling.rst into Chinese.
>
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> Reviewed-by: Alex Shi <alexs@kernel.org>
> ---
>  .../zh_CN/virt/guest-halt-polling.rst         | 87 +++++++++++++++++++
>  .../translations/zh_CN/virt/index.rst         |  2 +-
>  2 files changed, 88 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/translations/zh_CN/virt/guest-halt-polling.rst
>
> diff --git a/Documentation/translations/zh_CN/virt/guest-halt-polling.rst b/Documentation/translations/zh_CN/virt/guest-halt-polling.rst
> new file mode 100644
> index 000000000000..f12712c506c3
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/virt/guest-halt-polling.rst
> @@ -0,0 +1,87 @@
> +.. include:: ../disclaimer-zh_CN.rst
> +
> +:Original: Documentation/virt/guest-halt-polling.rst
> +
> +:翻译:
> +
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> +
> +:校译:
> +
> + 时奎亮 Alex Shi <alexs@kernel.org>
> +
> +.. _cn_virt_guest-halt-polling:
> +
> +========================================
> +客户机停止轮询机制(Guest halt polling)

I still feel the halt is better to be tranlated as 停机, is this right?

> +========================================
> +
> +cpuidle_haltpoll驱动,与haltpoll管理器一起,允许客户机vcpus在停止前轮询
> +一定的时间。
> +
> +这为物理机侧的轮询提供了以下好处:
> +
> +       1) 在执行轮询时,POLL标志被设置,这允许远程vCPU在执行唤醒时避免发送
> +          IPI(以及处理IPI的相关成本)。
> +
> +       2) 可以避免虚拟机退出的成本。
> +
> +客户机侧轮询的缺点是,即使在物理机中的其他可运行任务中也会进行轮询。
> +
> +其基本逻辑如下。一个全局值,即guest_halt_poll_ns,是由用户配置的,表示允
> +许轮询的最大时间量。这个值是固定的。
> +
> +每个vcpu都有一个可调整的guest_halt_poll_ns("per-cpu guest_halt_poll_ns"),
> +它由算法响应事件进行调整(解释如下)。
> +
> +模块参数
> +========
> +
> +haltpoll管理器有5个可调整的模块参数:
> +
> +1) guest_halt_poll_ns:
> +
> +轮询停止前执行的最大时间,以纳秒为单位。
> +
> +默认值: 200000
> +
> +2) guest_halt_poll_shrink:
> +
> +当唤醒事件发生在全局的guest_halt_poll_ns之后,用于缩减每个CPU的guest_halt_poll_ns
> +的划分系数。
> +
> +默认值: 2
> +
> +3) guest_halt_poll_grow:
> +
> +当事件发生在per-cpu guest_halt_poll_ns之后但在global guest_halt_poll_ns之前,
> +用于增长per-cpu guest_halt_poll_ns的乘法系数。
> +
> +默认值: 2
> +
> +4) guest_halt_poll_grow_start:
> +
> +在系统空闲的情况下,每个cpu guest_halt_poll_ns最终达到零。这个值设置了增长时的
> +初始每cpu guest_halt_poll_ns。这个值可以从10000开始增加,以避免在最初的增长阶
> +段出现失误。:
> +
> +10k, 20k, 40k, ... (例如,假设guest_halt_poll_grow=2).
> +
> +默认值: 50000
> +
> +5) guest_halt_poll_allow_shrink:
> +
> +允许缩减的Bool参数。设置为N以避免它(一旦达到全局的guest_halt_poll_ns值,每CPU的
> +guest_halt_poll_ns将保持高位)。
> +
> +默认值: Y
> +
> +模块参数可以从Debugfs文件中设置,在::
> +
> +       /sys/module/haltpoll/parameters/
> +
> +进一步说明
> +==========
> +
> +- 在设置guest_halt_poll_ns参数时应该小心,因为一个大的值有可能使机器上的cpu使用率
> +  达到100%,否则几乎是完全空闲的。

is the following better?
因为一个大的值有可能使几乎是完全空闲机器上的cpu使用率达到100%

Thanks
Alex

> diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
> index b9b23bb88ffa..b94f6a3c2257 100644
> --- a/Documentation/translations/zh_CN/virt/index.rst
> +++ b/Documentation/translations/zh_CN/virt/index.rst
> @@ -21,12 +21,12 @@ Linux虚拟化支持
>     :maxdepth: 2
>
>     paravirt_ops
> +   guest-halt-polling
>
>  TODOLIST:
>
>     kvm/index
>     uml/user_mode_linux_howto_v2
> -   guest-halt-polling
>     ne_overview
>     acrn/index
>
> --
> 2.27.0
>

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

* Re: [PATCH v3 5/8] docs/zh_CN: add virt acrn index translation
  2021-08-01 13:32 ` [PATCH v3 5/8] docs/zh_CN: add virt acrn index translation Yanteng Si
@ 2021-08-04  3:00   ` Alex Shi
  0 siblings, 0 replies; 18+ messages in thread
From: Alex Shi @ 2021-08-04  3:00 UTC (permalink / raw)
  To: Yanteng Si
  Cc: Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	chris.chenfeiyang, yanteng si

On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
>
> Translate Documentation/virt/acrn/index.rst into Chinese.
>
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>

Reviewed-by: Alex Shi <alexs@kernel.org>

> ---
>  .../translations/zh_CN/virt/acrn/index.rst    | 27 +++++++++++++++++++
>  .../translations/zh_CN/virt/index.rst         |  2 +-
>  2 files changed, 28 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/translations/zh_CN/virt/acrn/index.rst
>
> diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
> new file mode 100644
> index 000000000000..6061e790ee83
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
> @@ -0,0 +1,27 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +.. include:: ../../disclaimer-zh_CN.rst
> +
> +:Original: Documentation/virt/acrn/index.rst
> +
> +:翻译:
> +
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> +
> +:校译:
> +
> + 时奎亮 Alex Shi <alexs@kernel.org>
> +
> +.. _cn_virt_acrn_index:
> +
> +==============
> +ACRN超级管理器
> +==============
> +
> +.. toctree::
> +   :maxdepth: 1
> +
> +TODOLIST:
> +
> +   introduction
> +   io-request
> +   cpuid
> diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
> index 8e7713163962..f8dd13681341 100644
> --- a/Documentation/translations/zh_CN/virt/index.rst
> +++ b/Documentation/translations/zh_CN/virt/index.rst
> @@ -23,12 +23,12 @@ Linux虚拟化支持
>     paravirt_ops
>     guest-halt-polling
>     ne_overview
> +   acrn/index
>
>  TODOLIST:
>
>     kvm/index
>     uml/user_mode_linux_howto_v2
> -   acrn/index
>
>  .. only:: html and subproject
>
> --
> 2.27.0
>

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

* Re: [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation
  2021-08-01 13:32 ` [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation Yanteng Si
@ 2021-08-04  3:01   ` Alex Shi
  2021-08-04  6:44     ` yanteng si
  0 siblings, 1 reply; 18+ messages in thread
From: Alex Shi @ 2021-08-04  3:01 UTC (permalink / raw)
  To: Yanteng Si
  Cc: Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	chris.chenfeiyang, yanteng si

On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
>
> Translate Documentation/virt/acrn/introduction.rst into Chinese.
>
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> ---
>  .../translations/zh_CN/virt/acrn/index.rst    |  4 +-
>  .../zh_CN/virt/acrn/introduction.rst          | 52 +++++++++++++++++++
>  2 files changed, 55 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/translations/zh_CN/virt/acrn/introduction.rst
>
> diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
> index 6061e790ee83..b8f502033455 100644
> --- a/Documentation/translations/zh_CN/virt/acrn/index.rst
> +++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
> @@ -20,8 +20,10 @@ ACRN超级管理器
>  .. toctree::
>     :maxdepth: 1
>
> +   introduction
> +
>  TODOLIST:
>
> -   introduction
> +
>     io-request
>     cpuid
> diff --git a/Documentation/translations/zh_CN/virt/acrn/introduction.rst b/Documentation/translations/zh_CN/virt/acrn/introduction.rst
> new file mode 100644
> index 000000000000..b31034bcfa4e
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/virt/acrn/introduction.rst
> @@ -0,0 +1,52 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +.. include:: ../../disclaimer-zh_CN.rst
> +
> +:Original: Documentation/virt/acrn/introduction.rst
> +
> +:翻译:
> +
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> +
> +:校译:
> +
> + 时奎亮 Alex Shi <alexs@kernel.org>
> +
> +.. _cn_virt_acrn_introduction:
> +
> +ACRN超级管理器介绍
> +==================
> +
> +ACRN超级管理器是一个第一类超级管理器,直接在裸机硬件上运行。它有一个特权管理虚拟机,称为服
> +务虚拟机,用于管理用户虚拟机和进行I/O仿真。
> +
> +ACRN用户空间是一个运行在服务虚拟机中的应用程序,它根据命令行配置为用户虚拟机仿真设备。
> +ACRN管理程序服务模块(HSM)是服务虚拟机中的一个内核模块,为ACRN用户空间提供管理程序服
> +务。
> +
> +下图展示了该架构。
> +
> +::
> +
> +                服务端VM                      用户端VM
> +      +----------------------------+  |  +------------------+
> +      |        +--------------+    |  |  |                  |
> +      |        |ACRN用户空间  |    |  |  |                  |
> +      |        +--------------+    |  |  |                  |
> +      |-----------------ioctl------|  |  |                  |   ...
> +      |内核空间       +----------+ |  |  |                  |
> +      |               |   HSM    | |  |  | 驱动             |
> +      |               +----------+ |  |  |                  |
> +      +--------------------|-------+  |  +------------------+
> +  +---------------------hypercall----------------------------------------+
> +  |                         ACRN超级管理器                               |
> +  +----------------------------------------------------------------------+
> +  |                          硬件                                        |
> +  +----------------------------------------------------------------------+
> +
> +ACRN用户空间为用户虚拟机分配内存,配置和初始化用户虚拟机使用的设备,加载虚拟引导程序,
> +初始化虚拟CPU状态,处理来自用户虚拟机的I/O请求访问。它使用ioctls来与HSM通信。HSM通过
> +与ACRN超级管理器的hypercalls进行交互来实现管理服务。HSM向用户空间输出一个char设备接口
> +(/dev/acrn_hsm)。
> +
> +ACRN超级管理器是开源的,任何人都可以贡献。源码库可在

remove '可‘ ? with this

Reviewed-by: Alex Shi <alexs@kernel.org>

Thanks

> +https://github.com/projectacrn/acrn-hypervisor。
> --
> 2.27.0
>

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

* Re: [PATCH v3 7/8] docs/zh_CN: add virt acrn io-request translation
  2021-08-01 13:32 ` [PATCH v3 7/8] docs/zh_CN: add virt acrn io-request translation Yanteng Si
@ 2021-08-04  3:02   ` Alex Shi
  0 siblings, 0 replies; 18+ messages in thread
From: Alex Shi @ 2021-08-04  3:02 UTC (permalink / raw)
  To: Yanteng Si
  Cc: Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	chris.chenfeiyang, yanteng si

On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
>
> Translate Documentation/virt/acrn/io-request.rst into Chinese.
>
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Reviewed-by: Alex Shi <alexs@kernel.org>

> ---
>  .../translations/zh_CN/virt/acrn/index.rst    |  3 +-
>  .../zh_CN/virt/acrn/io-request.rst            | 99 +++++++++++++++++++
>  2 files changed, 101 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/translations/zh_CN/virt/acrn/io-request.rst
>
> diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
> index b8f502033455..b53976e20a34 100644
> --- a/Documentation/translations/zh_CN/virt/acrn/index.rst
> +++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
> @@ -21,9 +21,10 @@ ACRN超级管理器
>     :maxdepth: 1
>
>     introduction
> +   io-request
>
>  TODOLIST:
>
>
> -   io-request
> +
>     cpuid
> diff --git a/Documentation/translations/zh_CN/virt/acrn/io-request.rst b/Documentation/translations/zh_CN/virt/acrn/io-request.rst
> new file mode 100644
> index 000000000000..1a25ea15ae07
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/virt/acrn/io-request.rst
> @@ -0,0 +1,99 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +.. include:: ../../disclaimer-zh_CN.rst
> +
> +:Original: Documentation/virt/acrn/io-request.rst
> +
> +:翻译:
> +
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> +
> +:校译:
> +
> + 时奎亮 Alex Shi <alexs@kernel.org>
> +
> +.. _cn_virt_acrn_io-request:
> +
> +I/O请求处理
> +===========
> +
> +客户虚拟机的I/O请求由超级管理器构建,由ACRN超级管理器服务模块分发到与I/O请求的地址范
> +围相对应的I/O客户端。I/O请求处理的细节将在以下章节描述。
> +
> +1. I/O请求
> +----------
> +
> +对于每个客户虚拟机,有一个共享的4KB字节的内存区域,用于超级管理器和服务虚拟机之间的
> +I/O请求通信。一个I/O请求是一个256字节的结构体缓冲区,它是 "acrn_io_request" 结构
> +体,当客户虚拟机中发生被困的I/O访问时,由超级管理器的I/O处理器填充。服务虚拟机中的
> +ACRN用户空间首先分配一个4KB字节的页面,并将缓冲区的GPA(客户物理地址)传递给管理平
> +台。缓冲区被用作16个I/O请求槽的数组,每个I/O请求槽为256字节。这个数组是按vCPU ID
> +索引的。
> +
> +2. I/O客户端
> +------------
> +
> +一个I/O客户端负责处理客户虚拟机的I/O请求,其访问的GPA在一定范围内。每个客户虚拟机
> +可以关联多个I/O客户端。每个客户虚拟机都有一个特殊的客户端,称为默认客户端,负责处理
> +所有不在其他客户端范围内的I/O请求。ACRN用户空间充当每个客户虚拟机的默认客户端。
> +
> +下面的图示显示了I/O请求共享缓冲区、I/O请求和I/O客户端之间的关系。
> +
> +::
> +
> +     +------------------------------------------------------+
> +     |                                       服务VM         |
> +     |+--------------------------------------------------+  |
> +     ||      +----------------------------------------+  |  |
> +     ||      | 共享页                 ACRN用户空间    |  |  |
> +     ||      |    +-----------------+  +------------+ |  |  |
> +     ||   +----+->| acrn_io_request |<-+  默认      | |  |  |
> +     ||   |  | |  +-----------------+  | I/O客户端  | |  |  |
> +     ||   |  | |  |       ...       |  +------------+ |  |  |
> +     ||   |  | |  +-----------------+                 |  |  |
> +     ||   |  +-|--------------------------------------+  |  |
> +     ||---|----|-----------------------------------------|  |
> +     ||   |    |                             内核        |  |
> +     ||   |    |            +----------------------+     |  |
> +     ||   |    |            | +-------------+  HSM |     |  |
> +     ||   |    +--------------+             |      |     |  |
> +     ||   |                 | | I/O客户端   |      |     |  |
> +     ||   |                 | |             |      |     |  |
> +     ||   |                 | +-------------+      |     |  |
> +     ||   |                 +----------------------+     |  |
> +     |+---|----------------------------------------------+  |
> +     +----|-------------------------------------------------+
> +          |
> +     +----|-------------------------------------------------+
> +     |  +-+-----------+                                     |
> +     |  | I/O处理     |              ACRN超级管理器         |
> +     |  +-------------+                                     |
> +     +------------------------------------------------------+
> +
> +3. I/O请求状态转换
> +------------------
> +
> +一个ACRN I/O请求的状态转换如下。
> +
> +::
> +
> +   FREE -> PENDING -> PROCESSING -> COMPLETE -> FREE -> ...
> +
> +- FREE: 这个I/O请求槽是空的
> +- PENDING: 在这个槽位上有一个有效的I/O请求正在等待
> +- PROCESSING: 正在处理I/O请求
> +- COMPLETE: 该I/O请求已被处理
> +
> +处于COMPLETE或FREE状态的I/O请求是由超级管理器拥有的。HSM和ACRN用户空间负责处理其
> +他的。
> +
> +4. I/O请求的处理流程
> +--------------------
> +
> +a. 当客户虚拟机中发生被陷入的I/O访问时,超级管理器的I/O处理程序将把I/O请求填充为
> +   PENDING状态。
> +b. 超级管理器向服务虚拟机发出一个向上调用,这是一个通知中断。
> +c. upcall处理程序会安排一个工作者来调度I/O请求。
> +d. 工作者寻找PENDING I/O请求,根据I/O访问的地址将其分配给不同的注册客户,将其
> +   状态更新为PROCESSING,并通知相应的客户进行处理。
> +e. 被通知的客户端处理指定的I/O请求。
> +f. HSM将I/O请求状态更新为COMPLETE,并通过hypercalls通知超级管理器完成。
> --
> 2.27.0
>

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

* Re: [PATCH v3 8/8] docs/zh_CN: add virt acrn cpuid translation
  2021-08-01 13:32 ` [PATCH v3 8/8] docs/zh_CN: add virt acrn cpuid translation Yanteng Si
@ 2021-08-04  3:03   ` Alex Shi
  0 siblings, 0 replies; 18+ messages in thread
From: Alex Shi @ 2021-08-04  3:03 UTC (permalink / raw)
  To: Yanteng Si
  Cc: Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	chris.chenfeiyang, yanteng si

On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
>
> Translate Documentation/virt/acrn/cpuid.rst into Chinese.
>
> Signed-off-by: Yanteng Si <siyanteng@loongson.cn>

Reviewed-by: Alex Shi <alexs@kernel.org>


> ---
>  .../translations/zh_CN/virt/acrn/cpuid.rst    | 56 +++++++++++++++++++
>  .../translations/zh_CN/virt/acrn/index.rst    |  5 --
>  2 files changed, 56 insertions(+), 5 deletions(-)
>  create mode 100644 Documentation/translations/zh_CN/virt/acrn/cpuid.rst
>
> diff --git a/Documentation/translations/zh_CN/virt/acrn/cpuid.rst b/Documentation/translations/zh_CN/virt/acrn/cpuid.rst
> new file mode 100644
> index 000000000000..252aa10ad52e
> --- /dev/null
> +++ b/Documentation/translations/zh_CN/virt/acrn/cpuid.rst
> @@ -0,0 +1,56 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +.. include:: ../../disclaimer-zh_CN.rst
> +
> +:Original: Documentation/virt/acrn/cpuid.rst
> +
> +:翻译:
> +
> + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> +
> +:校译:
> +
> + 时奎亮 Alex Shi <alexs@kernel.org>
> +
> +.. _cn_virt_acrn_cpuid:
> +
> +==============
> +ACRN CPUID位域
> +==============
> +
> +在ACRN超级管理器上运行的客户虚拟机可以使用CPUID检查其一些功能。
> +
> +ACRN的cpuid函数是:
> +
> +函数: 0x40000000
> +
> +返回::
> +
> +   eax = 0x40000010
> +   ebx = 0x4e524341
> +   ecx = 0x4e524341
> +   edx = 0x4e524341
> +
> +注意,ebx,ecx和edx中的这个值对应于字符串“ACRNACRNACRN”。eax中的值对应于这个叶子
> +中存在的最大cpuid函数,如果将来有更多的函数加入,将被更新。
> +
> +函数: define ACRN_CPUID_FEATURES (0x40000001)
> +
> +返回::
> +
> +          ebx, ecx, edx
> +          eax = an OR'ed group of (1 << flag)
> +
> +其中 ``flag`` 的定义如下:
> +
> +================================= =========== ================================
> +标志                              值          描述
> +================================= =========== ================================
> +ACRN_FEATURE_PRIVILEGED_VM        0           客户虚拟机是一个有特权的虚拟机
> +================================= =========== ================================
> +
> +函数: 0x40000010
> +
> +返回::
> +
> +          ebx, ecx, edx
> +          eax = (Virtual) TSC frequency in kHz.
> diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
> index b53976e20a34..34605d87f103 100644
> --- a/Documentation/translations/zh_CN/virt/acrn/index.rst
> +++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
> @@ -22,9 +22,4 @@ ACRN超级管理器
>
>     introduction
>     io-request
> -
> -TODOLIST:
> -
> -
> -
>     cpuid
> --
> 2.27.0
>

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

* Re: [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation
  2021-08-04  2:39   ` Alex Shi
@ 2021-08-04  6:41     ` yanteng si
  0 siblings, 0 replies; 18+ messages in thread
From: yanteng si @ 2021-08-04  6:41 UTC (permalink / raw)
  To: Alex Shi
  Cc: Yanteng Si, Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	陈飞扬

Alex Shi <seakeel@gmail.com> 于2021年8月4日周三 上午10:40写道:
>
> On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
> >
> > Translate Documentation/virt/paravirt_ops.rst into Chinese.
> >
> > Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> > Reviewed-by: Alex Shi <alexs@kernel.org>
> > ---
> >  .../translations/zh_CN/virt/index.rst         |  3 +-
> >  .../translations/zh_CN/virt/paravirt_ops.rst  | 41 +++++++++++++++++++
> >  2 files changed, 43 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/translations/zh_CN/virt/paravirt_ops.rst
> >
> > diff --git a/Documentation/translations/zh_CN/virt/index.rst b/Documentation/translations/zh_CN/virt/index.rst
> > index 9e5df5b5de15..b9b23bb88ffa 100644
> > --- a/Documentation/translations/zh_CN/virt/index.rst
> > +++ b/Documentation/translations/zh_CN/virt/index.rst
> > @@ -20,11 +20,12 @@ Linux虚拟化支持
> >  .. toctree::
> >     :maxdepth: 2
> >
> > +   paravirt_ops
> > +
> >  TODOLIST:
> >
> >     kvm/index
> >     uml/user_mode_linux_howto_v2
> > -   paravirt_ops
> >     guest-halt-polling
> >     ne_overview
> >     acrn/index
> > diff --git a/Documentation/translations/zh_CN/virt/paravirt_ops.rst b/Documentation/translations/zh_CN/virt/paravirt_ops.rst
> > new file mode 100644
> > index 000000000000..e9e0708a1d63
> > --- /dev/null
> > +++ b/Documentation/translations/zh_CN/virt/paravirt_ops.rst
> > @@ -0,0 +1,41 @@
> > +.. SPDX-License-Identifier: GPL-2.0
> > +.. include:: ../disclaimer-zh_CN.rst
> > +
> > +:Original: Documentation/virt/paravirt_ops.rst
> > +
> > +:翻译:
> > +
> > + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> > +
> > +:校译:
> > +
> > + 陈飞杨 Feiyang Chen <chenfeiyang@loongson.cn>
> > + 时奎亮 Alex Shi <alexs@kernel.org>
> > +
> > +.. _cn_virt_paravirt_ops:
> > +
> > +============
> > +Paravirt_ops
>
> this title could be translated as 半虚拟化操作?
OK!
>
> > +============
> > +
> > +Linux提供了对不同管理程序虚拟化技术的支持。历史上,为了支持不同的虚拟机超级管理器
> > +(hypervisor,下文简称超级管理器),需要不同的二进制内核,这个限制已经被pv_ops移
> > +除了。Linux pv_ops是一个虚拟化API,它能够支持不同的管理程序。它允许每个管理程序
> > +优先于关键操作,并允许单一的内核二进制文件在所有支持的执行环境中运行,包括本机——没
> > +有任何管理程序。
> > +
> > +pv_ops提供了一组函数指针,代表了与低级关键指令和各领域高级功能相对应的操作。
> > +pv-ops允许在运行时进行优化,在启动时对低级关键操作进行二进制修补。
> > +
> > +pv_ops操作被分为三类:
> > +
> > +- 简单的间接调用
> > +   这些操作对应于高水平的函数,众所周知,间接调用的开销并不十分重要。
> > +
> > +- 间接调用,允许用二进制补丁进行优化
> > +   通常情况下,这些操作对应于低级别的关键指令。它们被频繁地调用,并且是对性能关
> > +   键。开销是非常重要的。
> > +
> > +- 一套用于手写汇编代码的宏程序
> > +   手写的汇编代码(.S文件)也需要准虚拟化,因为它们包括敏感指令或其中的一些代
>
> paravirt usually is tranlated as 半虚拟化,
OK!
>
> others looks good for me.
>

Thanks,

Yanteng

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

* Re: [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation
  2021-08-04  2:58   ` Alex Shi
@ 2021-08-04  6:43     ` yanteng si
  0 siblings, 0 replies; 18+ messages in thread
From: yanteng si @ 2021-08-04  6:43 UTC (permalink / raw)
  To: Alex Shi
  Cc: Yanteng Si, Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	陈飞扬

Alex Shi <seakeel@gmail.com> 于2021年8月4日周三 上午10:59写道:
>
> On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
> >
> > Translate Documentation/virt/guest-halt-polling.rst into Chinese.
> >
> > Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> > Reviewed-by: Alex Shi <alexs@kernel.org>
> > ---
> >  .../zh_CN/virt/guest-halt-polling.rst         | 87 +++++++++++++++++++
> >  .../translations/zh_CN/virt/index.rst         |  2 +-
> >  2 files changed, 88 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/translations/zh_CN/virt/guest-halt-polling.rst
> >
> > diff --git a/Documentation/translations/zh_CN/virt/guest-halt-polling.rst b/Documentation/translations/zh_CN/virt/guest-halt-polling.rst
> > new file mode 100644
> > index 000000000000..f12712c506c3
> > --- /dev/null
> > +++ b/Documentation/translations/zh_CN/virt/guest-halt-polling.rst
> > @@ -0,0 +1,87 @@
> > +.. include:: ../disclaimer-zh_CN.rst
> > +
> > +:Original: Documentation/virt/guest-halt-polling.rst
> > +
> > +:翻译:
> > +
> > + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> > +
> > +:校译:
> > +
> > + 时奎亮 Alex Shi <alexs@kernel.org>
> > +
> > +.. _cn_virt_guest-halt-polling:
> > +
> > +========================================
> > +客户机停止轮询机制(Guest halt polling)
>
> I still feel the halt is better to be tranlated as 停机, is this right?
yeah!
>
> > +========================================
> > +
> > +cpuidle_haltpoll驱动,与haltpoll管理器一起,允许客户机vcpus在停止前轮询
> > +一定的时间。
> > +
> > +这为物理机侧的轮询提供了以下好处:
> > +
> > +       1) 在执行轮询时,POLL标志被设置,这允许远程vCPU在执行唤醒时避免发送
> > +          IPI(以及处理IPI的相关成本)。
> > +
> > +       2) 可以避免虚拟机退出的成本。
> > +
> > +客户机侧轮询的缺点是,即使在物理机中的其他可运行任务中也会进行轮询。
> > +
> > +其基本逻辑如下。一个全局值,即guest_halt_poll_ns,是由用户配置的,表示允
> > +许轮询的最大时间量。这个值是固定的。
> > +
> > +每个vcpu都有一个可调整的guest_halt_poll_ns("per-cpu guest_halt_poll_ns"),
> > +它由算法响应事件进行调整(解释如下)。
> > +
> > +模块参数
> > +========
> > +
> > +haltpoll管理器有5个可调整的模块参数:
> > +
> > +1) guest_halt_poll_ns:
> > +
> > +轮询停止前执行的最大时间,以纳秒为单位。
> > +
> > +默认值: 200000
> > +
> > +2) guest_halt_poll_shrink:
> > +
> > +当唤醒事件发生在全局的guest_halt_poll_ns之后,用于缩减每个CPU的guest_halt_poll_ns
> > +的划分系数。
> > +
> > +默认值: 2
> > +
> > +3) guest_halt_poll_grow:
> > +
> > +当事件发生在per-cpu guest_halt_poll_ns之后但在global guest_halt_poll_ns之前,
> > +用于增长per-cpu guest_halt_poll_ns的乘法系数。
> > +
> > +默认值: 2
> > +
> > +4) guest_halt_poll_grow_start:
> > +
> > +在系统空闲的情况下,每个cpu guest_halt_poll_ns最终达到零。这个值设置了增长时的
> > +初始每cpu guest_halt_poll_ns。这个值可以从10000开始增加,以避免在最初的增长阶
> > +段出现失误。:
> > +
> > +10k, 20k, 40k, ... (例如,假设guest_halt_poll_grow=2).
> > +
> > +默认值: 50000
> > +
> > +5) guest_halt_poll_allow_shrink:
> > +
> > +允许缩减的Bool参数。设置为N以避免它(一旦达到全局的guest_halt_poll_ns值,每CPU的
> > +guest_halt_poll_ns将保持高位)。
> > +
> > +默认值: Y
> > +
> > +模块参数可以从Debugfs文件中设置,在::
> > +
> > +       /sys/module/haltpoll/parameters/
> > +
> > +进一步说明
> > +==========
> > +
> > +- 在设置guest_halt_poll_ns参数时应该小心,因为一个大的值有可能使机器上的cpu使用率
> > +  达到100%,否则几乎是完全空闲的。
>
> is the following better?
> 因为一个大的值有可能使几乎是完全空闲机器上的cpu使用率达到100%
great!

Thanks,

Yanteng

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

* Re: [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation
  2021-08-04  3:01   ` Alex Shi
@ 2021-08-04  6:44     ` yanteng si
  0 siblings, 0 replies; 18+ messages in thread
From: yanteng si @ 2021-08-04  6:44 UTC (permalink / raw)
  To: Alex Shi
  Cc: Yanteng Si, Jonathan Corbet, Alex Shi, Wu X.C.,
	Huacai Chen, Jiaxun Yang, linux-doc, Puyu Wang, chenfeiyang,
	陈飞扬

Alex Shi <seakeel@gmail.com> 于2021年8月4日周三 上午11:02写道:
>
> On Sun, Aug 1, 2021 at 9:32 PM Yanteng Si <siyanteng@loongson.cn> wrote:
> >
> > Translate Documentation/virt/acrn/introduction.rst into Chinese.
> >
> > Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
> > ---
> >  .../translations/zh_CN/virt/acrn/index.rst    |  4 +-
> >  .../zh_CN/virt/acrn/introduction.rst          | 52 +++++++++++++++++++
> >  2 files changed, 55 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/translations/zh_CN/virt/acrn/introduction.rst
> >
> > diff --git a/Documentation/translations/zh_CN/virt/acrn/index.rst b/Documentation/translations/zh_CN/virt/acrn/index.rst
> > index 6061e790ee83..b8f502033455 100644
> > --- a/Documentation/translations/zh_CN/virt/acrn/index.rst
> > +++ b/Documentation/translations/zh_CN/virt/acrn/index.rst
> > @@ -20,8 +20,10 @@ ACRN超级管理器
> >  .. toctree::
> >     :maxdepth: 1
> >
> > +   introduction
> > +
> >  TODOLIST:
> >
> > -   introduction
> > +
> >     io-request
> >     cpuid
> > diff --git a/Documentation/translations/zh_CN/virt/acrn/introduction.rst b/Documentation/translations/zh_CN/virt/acrn/introduction.rst
> > new file mode 100644
> > index 000000000000..b31034bcfa4e
> > --- /dev/null
> > +++ b/Documentation/translations/zh_CN/virt/acrn/introduction.rst
> > @@ -0,0 +1,52 @@
> > +.. SPDX-License-Identifier: GPL-2.0
> > +.. include:: ../../disclaimer-zh_CN.rst
> > +
> > +:Original: Documentation/virt/acrn/introduction.rst
> > +
> > +:翻译:
> > +
> > + 司延腾 Yanteng Si <siyanteng@loongson.cn>
> > +
> > +:校译:
> > +
> > + 时奎亮 Alex Shi <alexs@kernel.org>
> > +
> > +.. _cn_virt_acrn_introduction:
> > +
> > +ACRN超级管理器介绍
> > +==================
> > +
> > +ACRN超级管理器是一个第一类超级管理器,直接在裸机硬件上运行。它有一个特权管理虚拟机,称为服
> > +务虚拟机,用于管理用户虚拟机和进行I/O仿真。
> > +
> > +ACRN用户空间是一个运行在服务虚拟机中的应用程序,它根据命令行配置为用户虚拟机仿真设备。
> > +ACRN管理程序服务模块(HSM)是服务虚拟机中的一个内核模块,为ACRN用户空间提供管理程序服
> > +务。
> > +
> > +下图展示了该架构。
> > +
> > +::
> > +
> > +                服务端VM                      用户端VM
> > +      +----------------------------+  |  +------------------+
> > +      |        +--------------+    |  |  |                  |
> > +      |        |ACRN用户空间  |    |  |  |                  |
> > +      |        +--------------+    |  |  |                  |
> > +      |-----------------ioctl------|  |  |                  |   ...
> > +      |内核空间       +----------+ |  |  |                  |
> > +      |               |   HSM    | |  |  | 驱动             |
> > +      |               +----------+ |  |  |                  |
> > +      +--------------------|-------+  |  +------------------+
> > +  +---------------------hypercall----------------------------------------+
> > +  |                         ACRN超级管理器                               |
> > +  +----------------------------------------------------------------------+
> > +  |                          硬件                                        |
> > +  +----------------------------------------------------------------------+
> > +
> > +ACRN用户空间为用户虚拟机分配内存,配置和初始化用户虚拟机使用的设备,加载虚拟引导程序,
> > +初始化虚拟CPU状态,处理来自用户虚拟机的I/O请求访问。它使用ioctls来与HSM通信。HSM通过
> > +与ACRN超级管理器的hypercalls进行交互来实现管理服务。HSM向用户空间输出一个char设备接口
> > +(/dev/acrn_hsm)。
> > +
> > +ACRN超级管理器是开源的,任何人都可以贡献。源码库可在
>
> remove '可‘ ? with this
>
> Reviewed-by: Alex Shi <alexs@kernel.org>
>
OK!

Thanks,

Yanteng

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

end of thread, other threads:[~2021-08-04  6:44 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-01 13:32 [PATCH v3 0/8] docs/zh_CN: add some virt docs translation Yanteng Si
2021-08-01 13:32 ` [PATCH v3 1/8] docs/zh_CN: add virt index translation Yanteng Si
2021-08-01 13:32 ` [PATCH v3 2/8] docs/zh_CN: add virt paravirt_ops translation Yanteng Si
2021-08-04  2:39   ` Alex Shi
2021-08-04  6:41     ` yanteng si
2021-08-01 13:32 ` [PATCH v3 3/8] docs/zh_CN: add virt guest-halt-polling translation Yanteng Si
2021-08-04  2:58   ` Alex Shi
2021-08-04  6:43     ` yanteng si
2021-08-01 13:32 ` [PATCH v3 4/8] docs/zh_CN: add virt ne_overview translation Yanteng Si
2021-08-01 13:32 ` [PATCH v3 5/8] docs/zh_CN: add virt acrn index translation Yanteng Si
2021-08-04  3:00   ` Alex Shi
2021-08-01 13:32 ` [PATCH v3 6/8] docs/zh_CN: add virt acrn introduction translation Yanteng Si
2021-08-04  3:01   ` Alex Shi
2021-08-04  6:44     ` yanteng si
2021-08-01 13:32 ` [PATCH v3 7/8] docs/zh_CN: add virt acrn io-request translation Yanteng Si
2021-08-04  3:02   ` Alex Shi
2021-08-01 13:32 ` [PATCH v3 8/8] docs/zh_CN: add virt acrn cpuid translation Yanteng Si
2021-08-04  3:03   ` Alex Shi

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.