Revision b614106a hw/pc.c
b/hw/pc.c | ||
---|---|---|
118 | 118 |
{ |
119 | 119 |
CPUState *env = first_cpu; |
120 | 120 |
|
121 |
if (!level) |
|
122 |
return; |
|
123 |
|
|
124 | 121 |
if (env->apic_state) { |
122 |
if (!level) |
|
123 |
return; |
|
125 | 124 |
while (env) { |
126 | 125 |
if (apic_accept_pic_intr(env)) |
127 | 126 |
apic_local_deliver(env, APIC_LINT0); |
128 | 127 |
env = env->next_cpu; |
129 | 128 |
} |
130 | 129 |
} else { |
131 |
cpu_interrupt(env, CPU_INTERRUPT_HARD); |
|
130 |
if (level) |
|
131 |
cpu_interrupt(env, CPU_INTERRUPT_HARD); |
|
132 |
else |
|
133 |
cpu_reset_interrupt(env, CPU_INTERRUPT_HARD); |
|
132 | 134 |
} |
133 | 135 |
} |
134 | 136 |
|
Also available in: Unified diff