[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 11/11] xen/docs: add a document to explain how to do passthrough without IOMMU


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>, <sstabellini@xxxxxxxxxx>, <julien@xxxxxxx>
  • From: Penny Zheng <penny.zheng@xxxxxxx>
  • Date: Thu, 23 Sep 2021 03:11:15 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=RUJuKpAtpsPU2vd6yUZACXFm8wINo0vkIbxoIx5eFVM=; b=h9rJhd93Bpcl7698BBThJLkAX3cxhPcMzqD8I8smmAqbx9JM8Rh6tUMjmQP+pors0wzNC9zOO6vCMhj77ns15Fj58tUt3wDsd25VgNMYtFsTeiJQ5RpxKIAFWK2V7M7FuMwMa0tSejXe+cKVCMR44NkbuB+4flC0Q3Wg7amew8FwTEJJ75VrAyYJQbTCqNJCv13WyISAX2v84YCRp/sHEa2UWak7TfJmPnCRxEnFmsvQxUSfGQGlkDr+l5HoCgiCWRwZKioCXMBxgZmiW1N70GYHs4piSH6+ll0wctMc+IBgtl1f+9l/CI6s7DAnq6Z/mwoVjL00Uh+g91PDcQeX0w==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bq2Zpaw/e9e1p1xcN78eXrjRSnjtprwT6B7MaIiPQ38naQONa81rVczoNTbhMzi1n/iwKWKjrXnJrDp+y4XqayaS3yDY37EHAWMDdfXi3oDP70vYT7md+7QiHzu3O/Ojm/zIQJcd6+xmwByXLt4xLVVEyRM1vlgNrDYcMXcTbbhj8oaoQTM/QNh+q/JN5NA6j1ovikwgvuSCCsmNrDwBcx5m+bOollfoqNTWeeh4fx9vs7QrHy+NPbi2U7jcs1Zftc9b9MXgQEqWY/8kMZpiAWzeQaYCquaCB4PicelM+wSpY884BP6JwJVSISmDpAleL5V97imKWQfRWC7Cv1/gmA==
  • Cc: <Bertrand.Marquis@xxxxxxx>, <Penny.Zheng@xxxxxxx>, <Wei.Chen@xxxxxxx>
  • Delivery-date: Thu, 23 Sep 2021 03:17:11 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true

From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx>

Make sure to start with a WARNING about security.

Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx>
Signed-off-by: Penny Zheng <penny.zheng@xxxxxxx>
---
 docs/misc/arm/passthrough-noiommu.txt | 54 +++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 docs/misc/arm/passthrough-noiommu.txt

diff --git a/docs/misc/arm/passthrough-noiommu.txt 
b/docs/misc/arm/passthrough-noiommu.txt
new file mode 100644
index 0000000000..61aeb8a5cd
--- /dev/null
+++ b/docs/misc/arm/passthrough-noiommu.txt
@@ -0,0 +1,54 @@
+Request Device Assignment without IOMMU support
+===============================================
+
+*WARNING:
+Users should be aware that it is not always secure to assign a device without
+IOMMU protection.
+When the device is not protected by the IOMMU, the administrator should make
+sure that:
+ 1. The device is assigned to a trusted guest.
+ 2. Users have additional security mechanism on the platform.
+
+
+This document assumes that the IOMMU is absent from the system or it is
+disabled (status = "disabled" in device tree).
+
+
+Add xen,force-assign-without-iommu; to the device tree snippet:
+
+ethernet: ethernet@ff0e0000 {
+       compatible = "cdns,zynqmp-gem";
+       xen,path = "/amba/ethernet@ff0e0000";
+       xen,reg = <0x0 0xff0e0000 0x1000 0x0 0xff0e0000>;
+       xen,force-assign-without-iommu;
+};
+
+Request 1:1 memory mapping for the domain on static allocation
+==============================================================
+
+Add a direct-map property under the appropriate /chosen/domU node which
+is also statically allocated with physical memory ranges through
+xen,static-mem property as its guest RAM.
+
+Below is an example on how to specify the 1:1 memory mapping for the domain
+on static allocation in the device-tree:
+
+/ {
+       chosen {
+               domU1 {
+                       compatible = "xen,domain";
+                       #address-cells = <0x2>;
+                       #size-cells = <0x2>;
+                       cpus = <2>;
+                       memory = <0x0 0x80000>;
+                       #xen,static-mem-address-cells = <0x1>;
+                       #xen,static-mem-size-cells = <0x1>;
+                       xen,static-mem = <0x30000000 0x20000000>;
+                       direct-map;
+                       ...
+               };
+       };
+};
+
+Besides reserving a 512MB region starting at the host physical address
+0x30000000 to DomU1, it also requests 1:1 memory mapping.
-- 
2.25.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.