diff options
author | 2020-12-14 22:36:03 +0100 | |
---|---|---|
committer | 2020-12-16 14:55:49 +0100 | |
commit | 7494755a9ad62be7e389b535c77e85ed9c66bece (patch) | |
tree | 3600442d8cede16d2b26b05e3e14018aee993d43 /arch | |
parent | s390/idle: merge enabled_wait() and arch_cpu_idle() (diff) | |
download | linux-7494755a9ad62be7e389b535c77e85ed9c66bece.tar.gz linux-7494755a9ad62be7e389b535c77e85ed9c66bece.tar.bz2 linux-7494755a9ad62be7e389b535c77e85ed9c66bece.zip |
s390/idle: remove raw_local_irq_save()/restore() from arch_cpu_idle()
arch_cpu_idle() gets called with interrupts disabled,
and psw_idle() returns with interrupts disabled.
No reason to use raw_local_irq_save() / restore().
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/kernel/idle.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/s390/kernel/idle.c b/arch/s390/kernel/idle.c index bbf6b7d959c2..ae27e9fb5d94 100644 --- a/arch/s390/kernel/idle.c +++ b/arch/s390/kernel/idle.c @@ -25,18 +25,15 @@ void arch_cpu_idle(void) { struct s390_idle_data *idle = this_cpu_ptr(&s390_idle); unsigned long long idle_time; - unsigned long psw_mask, flags; - + unsigned long psw_mask; /* Wait for external, I/O or machine check interrupt. */ psw_mask = PSW_KERNEL_BITS | PSW_MASK_WAIT | PSW_MASK_DAT | PSW_MASK_IO | PSW_MASK_EXT | PSW_MASK_MCHECK; clear_cpu_flag(CIF_NOHZ_DELAY); - raw_local_irq_save(flags); - /* Call the assembler magic in entry.S */ + /* psw_idle() returns with interrupts disabled. */ psw_idle(idle, psw_mask); - raw_local_irq_restore(flags); /* Account time spent with enabled wait psw loaded as idle time. */ raw_write_seqcount_begin(&idle->seqcount); |