qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH] target/i386: HAX: Enable ROM/ROM device memory regi


From: hang . yuan
Subject: [Qemu-devel] [PATCH] target/i386: HAX: Enable ROM/ROM device memory region support
Date: Wed, 26 Jun 2019 14:00:15 +0800

From: Hang Yuan <address@hidden>

Add ROM and ROM device memory region support in HAX. Their memory region is
read only and write access will generate EPT violation. The violation will
be handled in the HAX kernel with the following patch.

https://github.com/intel/haxm/commit/33ceea09a1655fca12c47f1e112b1d269357ff28

Signed-off-by: Hang Yuan <address@hidden>
---
 target/i386/hax-mem.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/target/i386/hax-mem.c b/target/i386/hax-mem.c
index 6bb5a24917..685e88cb45 100644
--- a/target/i386/hax-mem.c
+++ b/target/i386/hax-mem.c
@@ -175,15 +175,11 @@ static void hax_process_section(MemoryRegionSection 
*section, uint8_t flags)
     uint64_t host_va;
     uint32_t max_mapping_size;
 
-    /* We only care about RAM and ROM regions */
-    if (!memory_region_is_ram(mr)) {
-        if (memory_region_is_romd(mr)) {
-            /* HAXM kernel module does not support ROMD yet  */
-            warn_report("Ignoring ROMD region 0x%016" PRIx64 "->0x%016" PRIx64,
-                        start_pa, start_pa + size);
-        }
+    /* We only care about RAM/ROM regions and ROM device */
+    if (memory_region_is_rom(mr) || (memory_region_is_romd(mr)))
+       flags |= HAX_RAM_INFO_ROM;
+    else if (!memory_region_is_ram(mr))
         return;
-    }
 
     /* Adjust start_pa and size so that they are page-aligned. (Cf
      * kvm_set_phys_mem() in kvm-all.c).
-- 
2.21.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]