Skip to contentSkip to conversation

Drivers: hv: Bind all vmbbus interrupts to the boot CPU

PATCH In review K. Y. Srinivasan 1 participant 2 messages Jan 18, 2013 Hyper-V/Azure core and drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Drivers: hv: Bind all vmbbus interrupts to the boot CPU

The default interrupt delivery model in Linux does not support the Hyper-V vmbus delivery model when the guest is configured with multiple VCPUs. I have sent a patch to address this - delivering the vmbus interrupt on a separate IDT vector. Until this patch is applied, bind all vmbus interrupts to the boot CPU.

---
 drivers/hv/channel_mgmt.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/hv/channel_mgmt.c +1 -1
index c80fe62..7478ef9 100644
@@ -337,7 +337,7 @@ static u32 get_vp_index(uuid_le *type_guid)
 		return 0;
 	}
 	cur_cpu = (++next_vp % max_cpus);
-	return hv_context.vp_index[cur_cpu];
+	return 0;
 }
 
 /*
Signature · 1 line
1.7.4.1
#1 lore raw
Quoted 26 lines

-----Original Message-----
From: K. Y. Srinivasan [mailto:[email protected]]
Sent: Friday, January 18, 2013 12:01 AM
To: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
Cc: KY Srinivasan
Subject: [PATCH 1/1] Drivers: hv: Bind all vmbbus interrupts to the boot CPU

The default interrupt delivery model in Linux does not support the Hyper-V vmbus delivery model when the guest is configured with multiple VCPUs. I have sent a patch to address this - delivering the vmbus interrupt on a separate IDT vector. Until this patch is applied, bind all vmbus interrupts to the boot CPU.

---
 drivers/hv/channel_mgmt.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/hv/channel_mgmt.c +0 -0
index c80fe62..7478ef9 100644

drivers/hv/channel_mgmt.c static u32 get_vp_index(uuid_le *type_guid) · line 341

Quoted 6 lines
drivers/hv/channel_mgmt.c +1 -1
@@ -337,7 +337,7 @@ static u32 get_vp_index(uuid_le *type_guid)
 		return 0;
 	}
 	cur_cpu = (++next_vp % max_cpus);
-	return hv_context.vp_index[cur_cpu];
+	return 0;
 }

Greg,

Please apply this patch. This temporary restriction will be removed once the Hyper-V IDT Patch (or some variant of that) is applied.

Regards,

K. Y

Quoted 6 lines
drivers/hv/channel_mgmt.c +0 -1
 /*
--

1.7.4.1