hv:Replace dynamic memory allocation for apic access address

Replace pointer with static memory for apicv_apic_access_addr

Tracked-On: #861
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Mingqiang Chi 2018-09-07 14:26:17 +08:00 committed by lijinxia
parent 887ebf0b08
commit fdb64095c4

View File

@ -82,7 +82,7 @@ vlapic_dump_isr(__unused struct acrn_vlapic *vlapic, __unused char *msg) {}
#endif
/*APIC-v APIC-access address */
static void *apicv_apic_access_addr;
static uint8_t apicv_apic_access_addr[CPU_PAGE_SIZE] __aligned(CPU_PAGE_SIZE);
static int
apicv_set_intr_ready(struct acrn_vlapic *vlapic, uint32_t vector,
@ -2098,13 +2098,6 @@ apicv_batch_set_tmr(struct acrn_vlapic *vlapic)
uint64_t
vlapic_apicv_get_apic_access_addr(__unused struct vm *vm)
{
if (apicv_apic_access_addr == NULL) {
apicv_apic_access_addr = alloc_page();
ASSERT(apicv_apic_access_addr != NULL,
"apicv allocate failed.");
(void)memset((void *)apicv_apic_access_addr, 0U, CPU_PAGE_SIZE);
}
return hva2hpa(apicv_apic_access_addr);
}