mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-06-19 12:12:16 +00:00
hv:add volatile keyword for some variables
pcpu_active_bitmap was read continuously in wait_pcpus_offline(), acrn_vcpu->running was read continuously in pause_vcpu(), add volatile keyword to ensure that such accesses are not optimised away by the complier. Tracked-On: #1842 Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
This commit is contained in:
parent
be0c2a8124
commit
c691c5bd3c
@ -37,7 +37,7 @@ static uint64_t pcpu_sync = 0UL;
|
|||||||
static uint64_t startup_paddr = 0UL;
|
static uint64_t startup_paddr = 0UL;
|
||||||
|
|
||||||
/* physical cpu active bitmap, support up to 64 cpus */
|
/* physical cpu active bitmap, support up to 64 cpus */
|
||||||
static uint64_t pcpu_active_bitmap = 0UL;
|
static volatile uint64_t pcpu_active_bitmap = 0UL;
|
||||||
|
|
||||||
static void pcpu_xsave_init(void);
|
static void pcpu_xsave_init(void);
|
||||||
static void set_current_pcpu_id(uint16_t pcpu_id);
|
static void set_current_pcpu_id(uint16_t pcpu_id);
|
||||||
|
@ -360,7 +360,7 @@ struct acrn_vcpu {
|
|||||||
|
|
||||||
struct sched_object sched_obj;
|
struct sched_object sched_obj;
|
||||||
bool launched; /* Whether the vcpu is launched on target pcpu */
|
bool launched; /* Whether the vcpu is launched on target pcpu */
|
||||||
bool running; /* vcpu is picked up and run? */
|
volatile bool running; /* vcpu is picked up and run? */
|
||||||
|
|
||||||
struct instr_emul_ctxt inst_ctxt;
|
struct instr_emul_ctxt inst_ctxt;
|
||||||
struct io_request req; /* used by io/ept emulation */
|
struct io_request req; /* used by io/ept emulation */
|
||||||
|
Loading…
Reference in New Issue
Block a user