Re: crash on CONFIG_CFAG12864B=y in 2.6.20-rc3-mm1

From: Daniel Walker
Date: Thu Feb 01 2007 - 10:18:25 EST


On Thu, 2007-02-01 at 16:16 +0100, Miguel Ojeda wrote:
> The problem is easy:
>
> ks0108_init() prints the error message and exit with -EINVAL, so the
> module isn't loaded properly.
>
> However, cfag12864b_init() is called, although ks0108 failed. It
> returns 0 and after a while cfag12864b calls ks0108_writecontrol()
> which dereferences the uninitialized pointer ks0108_parport:
>
> parport_write_control(ks0108_parport, byte ^ (bit(0) | bit(1) | bit(3)));
>
> Why is cfag12864b_init() called if ks0108 module didn't load properly?
> Is that normal? If so, how a module should alarm other modules about
> it failed loading?

I don't know if this matters, but I had this driver built-in , and not a
module ..

Daniel

-
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/