Re: 2.6.16 backtrace at boot (Ibook G4)
On Tue, 2006-04-18 at 17:20 +0200, Michael Schmitz wrote:
> > > Here a trace at boot from the sound driver :
> >
> > I think that bug happens if the sound driver loads before i2c-powermac.
>
> i2c-keywest is still request-module()d in 2.6.17-rc1, FWIW.
>
> Regarding other sound breakage with 2.6.17-rc1, I traced that to
>
> machine_is(powermac)
>
> returning zero in sound/ppc/pmac.c:snd_pmac_detect() when loading
> snd-powermac. The OSS driver spits -ENODEV as well on loading so I'd
> suspect the same thing here.
>
> machine_is boils down to a comparison machine_id == &mach_powermac, is
> that sort of thing illegal after kernel init?
Totally untested patch, please let me know if it helps:
Index: linux-work/include/asm-powerpc/machdep.h
===================================================================
--- linux-work.orig/include/asm-powerpc/machdep.h 2006-04-13 09:58:50.000000000 +1000
+++ linux-work/include/asm-powerpc/machdep.h 2006-04-19 07:55:26.000000000 +1000
@@ -253,7 +253,10 @@
#define __machine_desc __attribute__ ((__section__ (".machine.desc")))
-#define define_machine(name) struct machdep_calls mach_##name __machine_desc =
+#define define_machine(name) \
+ EXPORT_SYMBOL(mach_##name); \
+ struct machdep_calls mach_##name __machine_desc =
+
#define machine_is(name) \
({ \
extern struct machdep_calls mach_##name \
Reply to: