Module Name: src
Committed By: jmcneill
Date: Sun Feb 21 23:37:10 UTC 2021
Modified Files:
src/sys/arch/aarch64/aarch64: idle_machdep.S
Log Message:
When waking from cpu_idle(), only call dosoftints if ci_intr_depth == 0
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/aarch64/aarch64/idle_machdep.S
I think this condition is not necessary since cpu_idle() is just called from idle_loop(),
and ci_intr_depth is always zero at this time.
After thinking about it, I realized that there is no need to even increment intr_depth.
curcpu()->ci_ntr_depth = 1;
ARM_IRQ_HANDLER();
curcpu()->ci_ntr_depth = 0;
In addition, because of the possibility of kpreemption (but aarch64 has no KPREEMPT yet),
the acquisition of curcpu() is moved to after DISABLE_INTERRUPT and got the following.