bcm64: use exclusive monitor on nrdy to wake up idlehands()
when the exclusive monitor is cleared, a event is generated which we can use to wake up idlehands. that way we do not need to wait for the next timer interrupt until a cpu takes work from the run queue.
This commit is contained in:
parent
addb36ee48
commit
db3bf8271b
1 changed files with 7 additions and 4 deletions
|
@ -293,10 +293,13 @@ TEXT splx(SB), 1, $-4
|
||||||
|
|
||||||
TEXT idlehands(SB), 1, $-4
|
TEXT idlehands(SB), 1, $-4
|
||||||
DMB $ISH
|
DMB $ISH
|
||||||
MOVW nrdy(SB), R0
|
MOV $nrdy(SB), R1
|
||||||
CBNZ R0, _ready
|
LDXRW (R1), R0
|
||||||
WFI
|
CBZ R0, _goodnight
|
||||||
_ready:
|
CLREX
|
||||||
|
SEVL
|
||||||
|
_goodnight:
|
||||||
|
WFE
|
||||||
RETURN
|
RETURN
|
||||||
|
|
||||||
TEXT cycles(SB), 1, $-4
|
TEXT cycles(SB), 1, $-4
|
||||||
|
|
Loading…
Reference in a new issue