Re: [PATCH -mm] console: console_drivers not initialized

From: Russell King
Date: Mon Sep 25 2006 - 17:30:56 EST


On Mon, Sep 25, 2006 at 02:26:21PM -0700, Daniel Walker wrote:
> On Mon, 2006-09-25 at 22:11 +0100, Russell King wrote:
> > On Mon, Sep 25, 2006 at 02:07:10PM -0700, dwalker@xxxxxxxxxx wrote:
> > > I was doing -rt stuff on a PPC PowerBook G4. It would always reboot
> > > itself when it hit console_init() .
> > >
> > > I noticed that the console code seems to want console_drivers = NULL,
> > > but it never actually sets it that way. Once I added this, the reboot
> > > issue was gone..
> >
> > It's a BSS variable, it _should_ be zeroed by the architecture's BSS
> > initialisation. If not, it suggests there's something very _very_
> > wrong in the architecture's C runtime initialisation code.
> >
> > As such, this patch is merely a band-aid, not a correct fix.
>
> It happens on two different compilers gcc 4.1 and 3.3 ..

The zeroing of the BSS is not a function of the compiler, but the C startup
code, which might be written in assembly or c.

> I was using
> arch/powerpc/ which is fairly new .. However, If stuff was suppose to be
> zero'd and wasn't, I'd imagine this machine would be rebooting _a lot_
> more often.

The alternative explaination is that explicitly changing a variable from
the BSS to have an explicit initialisation moves it into the data segment,
which results in quite a bit of data moving around. So it might not even
be related to this - maybe a data structure alignment issue somewhere?
Shrug - but it's for powerpc folk to investigate.

Suggest you report it to powerpc folk as a bug.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/