qemu-devel
[Top][All Lists]
Advanced

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

[PATCH v2 3/3] hyperv/synic: Mark regions as no vhost


From: Dr. David Alan Gilbert (git)
Subject: [PATCH v2 3/3] hyperv/synic: Mark regions as no vhost
Date: Mon, 13 Jan 2020 17:36:47 +0000

From: "Dr. David Alan Gilbert" <address@hidden>

Mark synic regions as novhost; they are splitting huge page memory
and breaking vhost region joining.

Signed-off-by: Dr. David Alan Gilbert <address@hidden>
---
 hw/hyperv/hyperv.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/hw/hyperv/hyperv.c b/hw/hyperv/hyperv.c
index da8ce82725..5dbbb14fdd 100644
--- a/hw/hyperv/hyperv.c
+++ b/hw/hyperv/hyperv.c
@@ -99,6 +99,14 @@ static void synic_realize(DeviceState *dev, Error **errp)
                            sizeof(*synic->msg_page), &error_abort);
     memory_region_init_ram(&synic->event_page_mr, obj, eventp_name,
                            sizeof(*synic->event_page), &error_abort);
+    /*
+     * The guest can put the synic pages anywhere, including
+     * fragmenting something the host might want to keep as a huge
+     * page.
+     */
+    memory_region_set_no_vhost(&synic->msg_page_mr, true);
+    memory_region_set_no_vhost(&synic->event_page_mr, true);
+
     synic->msg_page = memory_region_get_ram_ptr(&synic->msg_page_mr);
     synic->event_page = memory_region_get_ram_ptr(&synic->event_page_mr);
 
-- 
2.24.1




reply via email to

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