s390/irq: Set CIF_NOHZ_DELAY in do_io_irq()
Both do_airq_interrupt() and do_io_interrupt() set CIF_NOHZ_DELAY. Move it to do_io_irq() to simplify the code. Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Sven Schnelle <svens@linux.ibm.com> Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
This commit is contained in:
parent
f2ebdadd85
commit
1084562ec8
@ -150,6 +150,7 @@ void noinstr do_io_irq(struct pt_regs *regs)
|
|||||||
if (from_idle)
|
if (from_idle)
|
||||||
account_idle_time_irq();
|
account_idle_time_irq();
|
||||||
|
|
||||||
|
set_cpu_flag(CIF_NOHZ_DELAY);
|
||||||
do {
|
do {
|
||||||
regs->tpi_info = S390_lowcore.tpi_info;
|
regs->tpi_info = S390_lowcore.tpi_info;
|
||||||
if (S390_lowcore.tpi_info.adapter_IO)
|
if (S390_lowcore.tpi_info.adapter_IO)
|
||||||
|
@ -90,7 +90,6 @@ static irqreturn_t do_airq_interrupt(int irq, void *dummy)
|
|||||||
struct airq_struct *airq;
|
struct airq_struct *airq;
|
||||||
struct hlist_head *head;
|
struct hlist_head *head;
|
||||||
|
|
||||||
set_cpu_flag(CIF_NOHZ_DELAY);
|
|
||||||
tpi_info = &get_irq_regs()->tpi_info;
|
tpi_info = &get_irq_regs()->tpi_info;
|
||||||
trace_s390_cio_adapter_int(tpi_info);
|
trace_s390_cio_adapter_int(tpi_info);
|
||||||
head = &airq_lists[tpi_info->isc];
|
head = &airq_lists[tpi_info->isc];
|
||||||
|
@ -535,7 +535,6 @@ static irqreturn_t do_cio_interrupt(int irq, void *dummy)
|
|||||||
struct subchannel *sch;
|
struct subchannel *sch;
|
||||||
struct irb *irb;
|
struct irb *irb;
|
||||||
|
|
||||||
set_cpu_flag(CIF_NOHZ_DELAY);
|
|
||||||
tpi_info = &get_irq_regs()->tpi_info;
|
tpi_info = &get_irq_regs()->tpi_info;
|
||||||
trace_s390_cio_interrupt(tpi_info);
|
trace_s390_cio_interrupt(tpi_info);
|
||||||
irb = this_cpu_ptr(&cio_irb);
|
irb = this_cpu_ptr(&cio_irb);
|
||||||
|
Loading…
Reference in New Issue
Block a user