Subject: Re: [PATCH 4/25] powerpc: Reworking machine check handling and Fix 440/440A

From: Josh Boyer <[email-masked]>
Date: Mon, 10 Dec 2007 14:44:34 -0600

On Tue, 11 Dec 2007 07:33:35 +1100
Benjamin Herrenschmidt <[email-masked]> wrote:

> 
> On Mon, 2007-12-10 at 11:59 -0600, Josh Boyer wrote:
> > 
> > This breaks ARCH=ppc builds.  Unfortunately, that tree shares the
> > cputable.[ch] files, but has it's own traps.c.  Which means you get
> > lots of nice undefined references like below for example:
> > 
> > arch/powerpc/kernel/built-in.o:(.init.data+0x44): undefined reference
> > to `machine_check_4xx'
> > arch/powerpc/kernel/built-in.o:(.init.data+0x8c): undefined reference
> > to `machine_check_4xx'
> > arch/powerpc/kernel/built-in.o:(.init.data+0xd4): undefined reference
> > to `machine_check_4xx'
> > 
> > Because the cputable entries for the processors are setting
> > the .machine_check function and it's never built.
> > 
> > I'm not sure which would be easier, making arch/ppc use traps.c from
> > arch/powerpc, or adding similar functionality there.
> 
> Split cputable.c ? I hate arch/ppc sharing files ... Or I could port the
> changes to arch/ppc. I don't want to use the same traps.c file. Sharing
> file is just a pain every time we do major changes.

Splitting cputable.c at this point would be rather annoying, given the
number of changes we've made to arch/ppc recently to accommodate for it
being shared.  Porting the changes to arch/ppc sounds like the most
reasonable path.

I can't wait for arch/ppc to die.

josh