diff options
author | afzal mohammed <afzal.mohd.ma@gmail.com> | 2020-02-24 06:22:26 +0530 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2020-03-21 15:15:47 +0100 |
commit | 4dd2a1b92b91b5f2acf853ee1dc0df135054698f (patch) | |
tree | 29228271151eae58b3fd9fcda4829d995ed1c1f9 /arch/x86/kernel/time.c | |
parent | e2bdafc1070f5db0bc1bc40116955f54188771cb (diff) | |
download | linux-next-4dd2a1b92b91b5f2acf853ee1dc0df135054698f.tar.gz |
x86: Replace setup_irq() by request_irq()
request_irq() is preferred over setup_irq(). The early boot setup_irq()
invocations happen either via 'init_IRQ()' or 'time_init()', while
memory allocators are ready by 'mm_init()'.
setup_irq() was required in old kernels when allocators were not ready by
the time early interrupts were initialized.
Hence replace setup_irq() by request_irq().
[ tglx: Use a local variable and get rid of the line break. Tweak the
comment a bit ]
Signed-off-by: afzal mohammed <afzal.mohd.ma@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/17f85021f6877650a5b09e0212d88323e6a30fd0.1582471508.git.afzal.mohd.ma@gmail.com
Diffstat (limited to 'arch/x86/kernel/time.c')
-rw-r--r-- | arch/x86/kernel/time.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/arch/x86/kernel/time.c b/arch/x86/kernel/time.c index d8673d8a779b..8c5213e6ec20 100644 --- a/arch/x86/kernel/time.c +++ b/arch/x86/kernel/time.c @@ -62,19 +62,16 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) return IRQ_HANDLED; } -static struct irqaction irq0 = { - .handler = timer_interrupt, - .flags = IRQF_NOBALANCING | IRQF_IRQPOLL | IRQF_TIMER, - .name = "timer" -}; - static void __init setup_default_timer_irq(void) { + unsigned long flags = IRQF_NOBALANCING | IRQF_IRQPOLL | IRQF_TIMER; + /* - * Unconditionally register the legacy timer; even without legacy - * PIC/PIT we need this for the HPET0 in legacy replacement mode. + * Unconditionally register the legacy timer interrupt; even + * without legacy PIC/PIT we need this for the HPET0 in legacy + * replacement mode. */ - if (setup_irq(0, &irq0)) + if (request_irq(0, timer_interrupt, flags, "timer", NULL)) pr_info("Failed to register legacy timer interrupt\n"); } |