[PATCH] UBUNTU: SAUCE: Drivers: hv: vmbus: Fix the boot issue for VBS Isolated VMs

Tim Gardner tim.gardner at canonical.com
Mon Jul 11 13:53:42 UTC 2022


From: Dexuan Cui <decui at microsoft.com>

BugLink: https://bugs.launchpad.net/bugs/1981328

In the case of VBS VMs, we also need to call the hypercall
hv_mark_gpa_visibility() to expose the vmbus_connection.monitor_pages
to Hyper-V, otherwise the VM fails to boot as a VBS VM.

The change doesn't affect SNP VMs and regular VMs.

Signed-off-by: Dexuan Cui <decui at microsoft.com>
Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
---
 drivers/hv/connection.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c
index 8314cce7fe5d..252c5b7a69eb 100644
--- a/drivers/hv/connection.c
+++ b/drivers/hv/connection.c
@@ -232,7 +232,7 @@ int vmbus_connect(void)
 		goto cleanup;
 	}
 
-	if (hv_isolation_type_snp()) {
+	if (hv_is_isolation_supported()) {
 		pfn[0] = virt_to_hvpfn(vmbus_connection.monitor_pages[0]);
 		pfn[1] = virt_to_hvpfn(vmbus_connection.monitor_pages[1]);
 		if (hv_mark_gpa_visibility(2, pfn,
@@ -319,7 +319,7 @@ void vmbus_disconnect(void)
 		vmbus_connection.int_page = NULL;
 	}
 
-	if (hv_isolation_type_snp()) {
+	if (hv_is_isolation_supported()) {
 		if (vmbus_connection.monitor_pages_va[0]) {
 			vunmap(vmbus_connection.monitor_pages[0]);
 			vmbus_connection.monitor_pages[0]
-- 
2.37.0




More information about the kernel-team mailing list