[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110109.153745.35032992.davem@davemloft.net>
Date: Sun, 09 Jan 2011 15:37:45 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: sam@...nborg.org
Cc: peterz@...radead.org, linux-kernel@...r.kernel.org,
sparclinux@...r.kernel.org
Subject: Re: sparc boot failure due to perf init
From: Sam Ravnborg <sam@...nborg.org>
Date: Fri, 7 Jan 2011 21:31:19 +0100
> Then you guys can sort it out and I can test any patches
> you come up with.
Here is the fix I will be pushing to Linus to fix this:
--------------------
sparc64: Fix bootup regression due to perf init ordering.
Commit 004417a6d468e24399e383645c068b498eed84ad
("perf, arch: Cleanup perf-pmu init vs lockup-detector")
move the perf events init to be an early_initcall.
But this won't work properly unless the dependencies for
this code initialize beforehand.
Fix it by making cpu_type_probe and pcr_arch_init be
an early_initcall as well.
Reported-by: Sam Ravnborg <sam@...nborg.org>
Signed-off-by: David S. Miller <davem@...emloft.net>
---
arch/sparc/kernel/cpu.c | 2 +-
arch/sparc/kernel/pcr.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/sparc/kernel/cpu.c b/arch/sparc/kernel/cpu.c
index e447938..0dc714f 100644
--- a/arch/sparc/kernel/cpu.c
+++ b/arch/sparc/kernel/cpu.c
@@ -375,5 +375,5 @@ static int __init cpu_type_probe(void)
return 0;
}
-arch_initcall(cpu_type_probe);
+early_initcall(cpu_type_probe);
#endif
diff --git a/arch/sparc/kernel/pcr.c b/arch/sparc/kernel/pcr.c
index b87873c..ae96cf5 100644
--- a/arch/sparc/kernel/pcr.c
+++ b/arch/sparc/kernel/pcr.c
@@ -168,4 +168,4 @@ out_unregister:
return err;
}
-arch_initcall(pcr_arch_init);
+early_initcall(pcr_arch_init);
--
1.7.3.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists