Patchwork PROBLEM: Linux 3.6.2 fails to boot on IBM Cell

login
register
mail settings
Submitter Grant Likely
Date Nov. 15, 2012, 5:58 p.m.
Message ID <20121115175835.652C43E197F@localhost>
Download mbox | patch
Permalink /patch/199370/
State Accepted, archived
Commit 51e0eaf98d48dc6fc385d1aee9e208afe3ce0cf1
Headers show

Comments

Grant Likely - Nov. 15, 2012, 5:58 p.m.
On Thu, 25 Oct 2012 21:33:41 +0200, Dennis Schridde <devurandom@gmx.net> wrote:
> Hello everyone!
> 
> Am Freitag, 19. Oktober 2012, 09:04:08 schrieb Dennis Schridde:
> > Am Freitag, 19. Oktober 2012, 00:17:55 schrieb Grant Likely:
> > > What does the boot log look like with the attached patch? (compiled
> > > only, I haven't booted with it)
> > 
> > Please find the log attached.
> Have you found the cause or a fix for the problem?

Umm, no. Some suggestions were made so I assumed you'd try those.

Anyway, here is a real patch. Try this:

g.
Dennis Schridde - Dec. 24, 2012, 1:39 p.m.
Am Donnerstag, 15. November 2012, 17:58:35 schrieb Grant Likely:
> Anyway, here is a real patch.
Thanks a lot, Grant!

Your patch improves the situation significantly. However, it is still not 
entirely fixed:
irq: irq-93==>hwirq-0x5d mapping failed: -22

There are a lot less error messages than before, though. Please see attached 
log.

Best regards,
Dennis Schridde
Dennis Schridde - April 21, 2013, 12:31 p.m.
Hello all of you!

Am Donnerstag, 15. November 2012, 17:58:35 schrieb Grant Likely:
> Umm, no. Some suggestions were made so I assumed you'd try those.
> 
> Anyway, here is a real patch. Try this:
> 
> -	for_each_node(node) {
> +	for_each_online_node(node) {

I am running my 3.8.6 kernel with your patch now (will this be merged anytime 
soon?), but I still get a bunch of irq mapping failed messages.

Examples:
[    0.490734] irq: irq-93==>hwirq-0x5d mapping failed: -22
[   22.016469] irq: no irq domain found for /axon@10000000000/plb5/pciex-
utl@a00000a000004000 !

Please see attached log.

In addition I see a weird issue: All programs run on CPU 0 (cores 0+1) only, 
while CPU 1 (cores 2+3) is always idle. Could this have anything to do with 
the IRQ issue, or shall I start a new thread/report for that?

Best regards,
Dennis

Patch

diff --git a/arch/powerpc/platforms/cell/pmu.c b/arch/powerpc/platforms/cell/pmu.c
index 59c1a16..348a27b 100644
--- a/arch/powerpc/platforms/cell/pmu.c
+++ b/arch/powerpc/platforms/cell/pmu.c
@@ -382,7 +382,7 @@  static int __init cbe_init_pm_irq(void)
 	unsigned int irq;
 	int rc, node;
 
-	for_each_node(node) {
+	for_each_online_node(node) {
 		irq = irq_create_mapping(NULL, IIC_IRQ_IOEX_PMI |
 					       (node << IIC_IRQ_NODE_SHIFT));
 		if (irq == NO_IRQ) {