o noirqdebug_setup() is __init but it is being called by quirk_intel_irqbalance() which if of type __devinit. If CONFIG_HOTPLUG=y, quirk_intel_irqbalance() is put into text section and it is wrong to call a function in __init section. o MODPOST flags this on i386 if CONFIG_RELOCATABLE=y WARNING: vmlinux - Section mismatch: reference to .init.text:noirqdebug_setup from .text between 'quirk_intel_irqbalance' (at offset 0xc010969e) and 'i8237A_suspend' o Make noirqdebug_setup() non-init.
Unified · Split
| @@ -176,7 +176,7 @@ void note_interrupt(unsigned int irq, struct irq_desc *desc, · 175 unmodified lines | |||
| 176 | 176 | ||
| 177 | int noirqdebug __read_mostly; | 177 | int noirqdebug __read_mostly; |
| 178 | 178 | ||
| 179 | int __init noirqdebug_setup(char *str) | 179 | int noirqdebug_setup(char *str) |
| 180 | { | 180 | { |
| 181 | noirqdebug = 1; | 181 | noirqdebug = 1; |
| 182 | printk(KERN_INFO "IRQ lockup detection disabled\n"); | 182 | printk(KERN_INFO "IRQ lockup detection disabled\n"); |