hv: add param to control INIT used to kick pCPU

By default, notification IPI used to kick sharing pCPU, INIT
used to kick partition pCPU. If USE_INIT_IPI flag is passed to
hypervisor, only INIT will be used to kick pCPU.

Tracked-On: #8207
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Minggui Cao
2022-09-21 15:27:57 +08:00
committed by acrnsi-robot
parent 2c140addaf
commit bc4c773cf8
4 changed files with 18 additions and 1 deletions

View File

@@ -25,6 +25,14 @@ struct hv_timer console_timer;
#define GUEST_CONSOLE_TO_HV_SWITCH_KEY 0 /* CTRL + SPACE */
uint16_t console_vmid = ACRN_INVALID_VMID;
/* if use INIT to kick pcpu only, if not notification IPI still is used for sharing CPU */
static bool use_init_ipi = false;
bool is_using_init_ipi(void)
{
return use_init_ipi;
}
static void parse_hvdbg_cmdline(void)
{
const char *start = NULL;
@@ -43,6 +51,9 @@ static void parse_hvdbg_cmdline(void)
if (!handle_dbg_cmd(start, (int32_t)(end - start))) {
/* if not handled by handle_dbg_cmd, it can be handled further */
if (strncmp(start, "USE_INIT_IPI", (size_t)(end - start)) == 0) {
use_init_ipi = true;
}
}
start = end;
}