mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
s390/time: return with irqs disabled from psw_idle
Modify the psw_idle waiting logic in entry[64].S to return with interrupts disabled. This avoids potential issues with udelay and interrupt loops as interrupts are not reenabled after clock comparator interrupts. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
6b169ac9b4
commit
0587d409ec
5 changed files with 4 additions and 6 deletions
|
@ -44,7 +44,6 @@ static void __udelay_disabled(unsigned long long usecs)
|
|||
do {
|
||||
set_clock_comparator(end);
|
||||
vtime_stop_cpu();
|
||||
local_irq_disable();
|
||||
} while (get_tod_clock() < end);
|
||||
lockdep_on();
|
||||
__ctl_load(cr0, 0, 0);
|
||||
|
@ -64,7 +63,6 @@ static void __udelay_enabled(unsigned long long usecs)
|
|||
set_clock_comparator(end);
|
||||
}
|
||||
vtime_stop_cpu();
|
||||
local_irq_disable();
|
||||
if (clock_saved)
|
||||
local_tick_enable(clock_saved);
|
||||
} while (get_tod_clock() < end);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue