lkml.org 
[lkml]   [2007]   [Feb]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: crash on CONFIG_CFAG12864B=y in 2.6.20-rc3-mm1
    On 2/1/07, Daniel Walker <dwalker@mvista.com> wrote:
    > 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
    >
    >

    Well, I use the word "module" for both cases: When I modprobe
    cfag12864b, if ks0108 fails, it doesn't get linked. So I thought the
    same happen for built-in drivers (in other words, I didn't think
    cfag12864b would be linked if ks0108 failed).

    So I'm waiting until someone tell me what is the right way to avoid
    drivers like cfag12864b been inited if their dependencies failed.

    Anyway, thanks for discovering the bug (I wouldn't have discovered it
    as my motherboard has parallel port ;).

    Miguel

    --
    Miguel Ojeda
    http://maxextreme.googlepages.com/index.htm
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-02-01 18:17    [W:8.037 / U:0.280 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site