Re: Oops on bttv 2.2-pre8

Arnd Bergmann (arnd@uni.de)
Wed, 20 Jan 1999 15:24:38 +0100


On Wed, 20 Jan 1999 06:17:01, Bradley Wendelboe wrote
>
> I have bttv compiled into the kernel:
>
> bttv0: model: BT848(STB)
> Unable to handle Kernel NULL pointer dereference at virtual address
> 0000012c
> current->tss.cr3 = 00101000, %cr3=0101000
> *pde=00000000
> Oops=0000
>
> I'd include stack dump, but I'm not sure how to capture an Oops.
>

I found the same Oops and tracked it down. The solution is a missing
#include <linux/version.h> in linux/videodev.h and maybe in
bttv.h and i2c.h as well.

The Oops is caused when the bttv driver fails to call
video_register_device() in init_bt848() and therefore never calls
i2c_register_bus(). Then, in release_bttv(), it tries to unregister
the btv->i2c, which contains an uninitialized pointer for its devices.

Arnd Bergmann

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/