Files
acrn-hypervisor/hypervisor/arch/x86
Shuo A Liu 53de3a727c hv: reset vcpu events in reset_vcpu
On UEFI UP2 board, APs might execute HLT before SOS kernel INIT them.
After SOS kernel take over and will re-init the APs directly. The flows
from HV perspective is like:
    HLT trap:
       wait_event(VCPU_EVENT_VIRTUAL_INTERRUPT) -> sleep_thread
    SOS kernel INIT, SIPI APs:
       pause_vcpu(ZOMBIE) -> sleep_thread
    -> reset_vcpu
    -> launch_vcpu -> wake_vcpu

However, the last wake_vcpu will fail because the cpu event
VCPU_EVENT_VIRTUAL_INTERRUPT had not got signaled.

This patch will reset all vcpu events in reset_vcpu. If the thread was
previously waiting for a event, its waiting status will be cleared and
launch_vcpu will wake it to running.

Tracked-On: #4402
Signed-off-by: Shuo A Liu <shuo.a.liu@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2020-02-23 16:27:57 +08:00
..
2020-02-23 16:27:57 +08:00
2019-06-14 14:22:51 +08:00
2019-10-31 09:02:59 +08:00
2019-12-02 09:31:12 +08:00
2020-01-14 10:21:23 +08:00
2019-02-22 13:14:36 +08:00
2019-12-13 10:13:09 +08:00
2020-02-11 08:53:56 +08:00
2020-01-14 10:21:23 +08:00
2020-01-14 10:21:23 +08:00
2020-01-14 10:21:23 +08:00
2020-02-11 08:53:56 +08:00
2020-01-14 10:21:23 +08:00
2019-09-11 17:30:24 +08:00