|
|
@@ -52,6 +52,7 @@ asmlinkage void spurious_interrupt(void)
|
|
|
void __init init_IRQ(void)
|
|
|
{
|
|
|
int i;
|
|
|
+ unsigned int order = get_order(IRQ_STACK_SIZE);
|
|
|
|
|
|
for (i = 0; i < NR_IRQS; i++)
|
|
|
irq_set_noprobe(i);
|
|
|
@@ -62,8 +63,7 @@ void __init init_IRQ(void)
|
|
|
arch_init_irq();
|
|
|
|
|
|
for_each_possible_cpu(i) {
|
|
|
- int irq_pages = IRQ_STACK_SIZE / PAGE_SIZE;
|
|
|
- void *s = (void *)__get_free_pages(GFP_KERNEL, irq_pages);
|
|
|
+ void *s = (void *)__get_free_pages(GFP_KERNEL, order);
|
|
|
|
|
|
irq_stack[i] = s;
|
|
|
pr_debug("CPU%d IRQ stack at 0x%p - 0x%p\n", i,
|