hv: add priority based scheduler

This patch adds a new priority based scheduler to support
vCPU scheduling based on their pre-configured priorities.
A vCPU can be running only if there is no higher priority
vCPU running on the same pCPU.

Tracked-On: #6571
Signed-off-by: Jie Deng <jie.deng@intel.com>
This commit is contained in:
Jie Deng
2021-09-09 16:21:30 +08:00
committed by wenlingz
parent dfe49ee972
commit 064fd7647f
12 changed files with 149 additions and 2 deletions

View File

@@ -41,6 +41,7 @@ struct per_cpu_region {
struct sched_noop_control sched_noop_ctl;
struct sched_iorr_control sched_iorr_ctl;
struct sched_bvt_control sched_bvt_ctl;
struct sched_prio_control sched_prio_ctl;
struct thread_object idle;
struct host_gdt gdt;
struct tss_64 tss;

View File

@@ -169,6 +169,7 @@ struct acrn_vm_config {
* GUEST_FLAG_LAPIC_PASSTHROUGH
* We could add more guest flags in future;
*/
uint32_t vm_prio; /* The priority for VM vCPU scheduling */
struct acrn_vm_mem_config memory; /* memory configuration of VM */
struct epc_section epc; /* EPC memory configuration of VM */
uint16_t pci_dev_num; /* indicate how many PCI devices in VM */