freeze: allow interrupts in frozen state
Change-Id: I1d502f828ab9f9c0e1223d021979ac3dcf4d0c25
This commit is contained in:
committed by
Masamichi Takagi
parent
ff982b8594
commit
8e4073c2ca
@ -14,14 +14,17 @@ extern void __freeze();
|
||||
void
|
||||
freeze()
|
||||
{
|
||||
unsigned long flags;
|
||||
struct ihk_os_cpu_monitor *monitor = cpu_local_var(monitor);
|
||||
|
||||
monitor->status_bak = monitor->status;
|
||||
monitor->status = IHK_OS_MONITOR_KERNEL_FROZEN;
|
||||
flags = cpu_enable_interrupt_save();
|
||||
while (monitor->status == IHK_OS_MONITOR_KERNEL_FROZEN) {
|
||||
cpu_halt();
|
||||
cpu_pause();
|
||||
}
|
||||
cpu_restore_interrupt(flags);
|
||||
monitor->status = monitor->status_bak;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user