By the way, here's what the start of a successful ivtv load in dom0 looks like:
ivtv: ==================== START INIT IVTV ====================
ivtv: version 0.2.0 (rc3j) loading
ivtv: Linux version: 2.6.11.10-xen0 PENTIUM4 4KSTACKS gcc-3.3
ivtv: In case of problems please include the debug info
ivtv: between the START INIT IVTV and END INIT IVTV lines when
ivtv: mailing the ivtv-devel mailinglist.
ivtv: Autodetected WinTV PVR 250 card
ivtv: Found an iTVC15 based chip
PCI: Obtained IRQ 22 for device 0000:02:01.0
ivtv: Unreasonably low latency timer, setting to 64 (was 32)
ivtv: XXX PCI device: 0x2570 vendor: 0x8086
ivtv: i2c attach [client=tveeprom,ok]
And it goes on and on from there.
I'm pretty sure it's crashing on that "XXX PCI device" line, which is
line 676 in driver/ivtv-driver.c. But since I'm not a kernel coder, I
have no real clue why. My best guess would be that something bad is
happening with that pci_find_slot call. The if statement that line 676
is a part of is probably to implement some workarounds if you have a
VIA chipset motherboard - the ivtv cards bring out the bugginess in
some of the older VIA motherboards, leading to instability. I'm using
an Intel motherboard though.
Dave
On 7/4/05, David Muench <davemuench@xxxxxxxxx> wrote:
> Here's the output with ivtv_debug=255 specified. It's not a lot more
> output, it looks to be crashing pretty early:
>
> Linux video capture interface: v1.00
> ivtv: ==================== START INIT IVTV ====================
> ivtv: version 0.2.0 (rc3j) loading
> ivtv: Linux version: 2.6.11-xenU PENTIUM4 4KSTACKS gcc-3.3
> ivtv: In case of problems please include the debug info
> ivtv: between the START INIT IVTV and END INIT IVTV lines when
> ivtv: mailing the ivtv-devel mailinglist.
> ivtv: ... running on kernel 2.6.11-xenU
> ivtv: Setting some variables to invalid for detection
> ivtv: Scanning PCI bus..
> ivtv: Found card #0
> ivtv: Autodetected WinTV PVR 250 card
> ivtv: Found an iTVC15 based chip
> ivtv: base addr: 0xe4000000
> ivtv: Enabling pci device
> PCI: Obtained IRQ 22 for device 0000:02:01.0
> ivtv: Bus Mastering Enabled.<6>ivtv: Unreasonably low latency timer,
> setting to 64 (was 32)
> ivtv: 2051 (rev 1) at 02:01.0, ivtv: irq: 22, latency: 64,
> memory: 0xe4000000
> Unable to handle kernel NULL pointer dereference at virtual address 00000024
> printing eip:
> d08abe25
> *pde = ma 00000000 pa 55555000
> [<d08ac037>] ivtv_probe+0x97/0xa00 [ivtv]
> [<c0255ab2>] pci_device_probe_static+0x52/0x70
> [<c0255b0c>] __pci_device_probe+0x3c/0x50
> [<c0255b4c>] pci_device_probe+0x2c/0x50
> [<c0274d0f>] driver_probe_device+0x2f/0x80
> [<c0274e5c>] driver_attach+0x5c/0xa0
> [<c02753ad>] bus_add_driver+0x9d/0xd0
> [<c02759cf>] driver_register+0x2f/0x40
> [<c0255dc4>] pci_register_driver+0x64/0x90
> [<d08ace7c>] module_start+0xcc/0x1f0 [ivtv]
> [<c01309f2>] sys_init_module+0x152/0x1e0
> [<c0109040>] syscall_call+0x7/0xb
> Oops: 0000 [#1]
> Modules linked in: ivtv i2c_algo_bit videodev ehci_hcd uhci_hcd usbcore
> CPU: 0
> EIP: 0061:[<d08abe25>] Not tainted VLI
> EFLAGS: 00010246 (2.6.11-xenU)
> EIP is at ivtv_setup_pci+0x1e5/0x360 [ivtv]
> eax: 00000000 ebx: 00000000 ecx: 00000000 edx: 00000000
> esi: c047c000 edi: d08d0d20 ebp: c047c000 esp: ce4cce84
> ds: 007b es: 007b ss: 0069
> Process modprobe (pid: 5057, threadinfo=ce4cc000 task=ce835a80)
> Stack: 00000000 00000000 00000040 e4000000 00000001 00000000 011640b0 fffffff4
> d08d0d20 d08e4fb0 d08ac037 d08d0d20 c047c000 d08cf6c0 c0378db8 c0378db8
> 00000000 d08cf820 ffffffed c047c000 00000000 c0255ab2 c047c000 d08cf6c0
> Call Trace:
> [<d08ac037>] ivtv_probe+0x97/0xa00 [ivtv]
> [<c0255ab2>] pci_device_probe_static+0x52/0x70
> [<c0255b0c>] __pci_device_probe+0x3c/0x50
> [<c0255b4c>] pci_device_probe+0x2c/0x50
> [<c0274d0f>] driver_probe_device+0x2f/0x80
> [<c0274e5c>] driver_attach+0x5c/0xa0
> [<c02753ad>] bus_add_driver+0x9d/0xd0
> [<c02759cf>] driver_register+0x2f/0x40
> [<c0255dc4>] pci_register_driver+0x64/0x90
> [<d08ace7c>] module_start+0xcc/0x1f0 [ivtv]
> [<c01309f2>] sys_init_module+0x152/0x1e0
> [<c0109040>] syscall_call+0x7/0xb
> Code: 8c d0 89 44 24 04 e8 4b d7 86 ef b8 01 00 00 00 89 87 ec 40 01
> 00 66 81 7b 26 89 31 75 c7 b8 02 00 00 00 89 87 ec 40 01 00 eb ba <a1>
> 24 00 00 00 eb 98 8d 74 26 00 8b 87 d8 00 00 00 89 44 24 0c
>
> Thanks again. BTW, I've tried only presenting one of the TV cards to
> the domU (and I've tried each of the 3 by itself in turn), that
> doesn't make any difference.
>
> Dave
>
> On 7/4/05, Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> wrote:
> >
> > On 4 Jul 2005, at 13:26, David Muench wrote:
> >
> > > Thanks, I really appreciate it. I have tried the unstable driver - it
> > > loads, but it goes through each of the 3 cards and says something like
> > > "Can't find PCI slot", and "Error -6". I can get you exact error
> > > messages from the unstable driver if it would help.
> >
> > The driver is *really* big, so we'll need to narrow this down some
> > more. It's probably best to do this in domU, as there the driver was
> > crashing nice and early while probing for the card. The dom0 crash is
> > going to be harder to track down, and hopefully fixing domU will fix
> > dom0.
> >
> > You can get a lot more debug info out of the driver by specifying the
> > argument 'ivtv_debug=255' when you install the module. This will make
> > the very verbose indeed, but should narrow the crash down to within a
> > few lines of code.
> >
> > -- Keir
> >
> >
>
>
> --
> David Muench - davemuench@xxxxxxxxx
> Jabber ID: dave@xxxxxxxxxxxxxxxxxxxx
>
--
David Muench - davemuench@xxxxxxxxx
Jabber ID: dave@xxxxxxxxxxxxxxxxxxxx
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|