On Tue, 2010-06-08 at 17:38 +1000, Matt Evans wrote: > kexec_perpare_cpus_wait() iterates i through NR_CPUS to check > paca[i].kexec_state of each to make sure they have quiesced. > However now we have dynamic PACA allocation, paca[NR_CPUS] is not necessarily > valid and we overrun the array; spurious "cpu is not possible, ignoring" > errors result. This patch iterates for_each_online_cpu so stays > within the bounds of paca[] -- and every CPU is now 'possible'. > > Signed-off-by: Matt Evans <matt at ozlabs.org> Looks good .. Cautiously-acked-by: Michael Ellerman <michael at ellerman.id.au> > - if (!cpu_online(i)) { > - /* Fixme: this can be spinning in > - * pSeries_secondary_wait with a paca > - * waiting for it to go online. > - */ > - printk("kexec: cpu %d hw_cpu_id %d is not" > - " online, ignoring\n", > - i, paca[i].hw_cpu_id); > - break; > - } I don't see how the state in the Fixme could ever happen, but maybe Milton can seeing I think he wrote it? cheers -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part URL: <http://lists.infradead.org/pipermail/kexec/attachments/20100609/57748ffb/attachment.sig>