• M
    powerpc/cell: Only iterate over online nodes in cbe_init_pm_irq() · 51e0eaf9
    Michael Ellerman 提交于
    None of the cell platforms support CPU hotplug, so we should iterate
    only over online nodes when setting PMU interrupts.
    
    This also fixes a warning during boot when NODES_SHIFT is large enough:
    
    WARNING: at /scratch/michael/src/kmk/linus/kernel/irq/irqdomain.c:766
    ...
    NIP [c0000000000db278] .irq_linear_revmap+0x30/0x58
    LR [c0000000000dc2a0] .irq_create_mapping+0x38/0x1a8
    Call Trace:
    [c0000003fc9c3af0] [c0000000000dc2a0] .irq_create_mapping+0x38/0x1a8 (unreliable)
    [c0000003fc9c3b80] [c000000000655c1c] .__machine_initcall_cell_cbe_init_pm_irq+0x84/0x158
    [c0000003fc9c3c20] [c00000000000afb4] .do_one_initcall+0x5c/0x1e0
    [c0000003fc9c3cd0] [c000000000644580] .kernel_init_freeable+0x238/0x328
    [c0000003fc9c3db0] [c00000000000b784] .kernel_init+0x1c/0x120
    [c0000003fc9c3e30] [c000000000009fb8] .ret_from_kernel_thread+0x64/0xac
    
    This is caused by us overflowing our linear revmap because we're
    requesting too many interrupts.
    Reported-by: NDennis Schridde <devurandom@gmx.net>
    Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
    Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
    51e0eaf9
pmu.c 9.5 KB