On Sat, 2008-11-22 at 22:25 -0500, Gary Desrochers wrote:
> I am getting these errors and not sure what I can do.
> 
> 
> What have I done so far:
>       * replaced a two fan system with a five fan cooling system which
>         lowered temperature in the case tremendously.
>       * Put in "options ivtv enc_mpg_buffers=16" (did not even see
>         this ever change anything, not even the dmesg)
>       * In rc.local changed the pci latency (cards were at a higher
>         then anything else) /sbin/setpci -v -s "00:0f.*"
>         latency_timer="b0" (0f.* are my hard drives).
> Kernel version from dmesg:
>         Linux version 2.6.24.3-50.fc8
>         ([EMAIL PROTECTED]) (gcc versi
>         on 4.1.2 20070925 (Red Hat 4.1.2-33)) #1 SMP Thu Mar 20
>         14:47:10 EDT 2008
> 
> 
> 
> 
> ivtv version from dmesg on startup:
>         ivtv:  Start initialization, version 1.1.0
> 
> 
> Card #1 (PVR 150) initializations:
> ivtv0: Initializing card #0
> ivtv0: Autodetected Hauppauge card (cx23416 based)
> ACPI: PCI Interrupt 0000:00:05.0[A] -> GSI 16 (level, low) -> IRQ 21
> tveeprom 1-0050: Hauppauge model 26132, rev F0B2, serial# 9405545
> tveeprom 1-0050: tuner model is TCL M2523_5N_E (idx 112, type 50)
> tveeprom 1-0050: TV standards NTSC(M) (eeprom 0x08)
> tveeprom 1-0050: audio processor is CX25841 (idx 35)
> tveeprom 1-0050: decoder processor is CX25841 (idx 28)
> tveeprom 1-0050: has no radio, has IR receiver, has IR transmitter
> ivtv0: Autodetected Hauppauge WinTV PVR-150
> ivtv0: Reopen i2c bus for IR-blaster support
> udev: renamed network interface eth0 to eth1
> tuner 1-0061: chip found @ 0xc2 (ivtv i2c driver #0)
> cx25840 1-0044: cx25841-24 found @ 0x88 (ivtv i2c driver #0)
> wm8775 1-001b: chip found @ 0x36 (ivtv i2c driver #0)
> tuner-simple 1-0061: type set to 50 (TCL 2002N)
> tuner 1-0061: type set to TCL 2002N
> ivtv0: Registered device video0 for encoder MPG (16384 kB)
> ivtv0: Registered device video32 for encoder YUV (2048 kB)
> ivtv0: Registered device vbi0 for encoder VBI (1024 kB)
> ivtv0: Registered device video24 for encoder PCM (320 kB)
> ivtv0: Initialized card #0: Hauppauge WinTV PVR-150
> 
> 
> Card #2 (PVR 500) initialization from dmesg:
>                 ivtv1: Initializing card #1
>                 ivtv1: Autodetected Hauppauge card (cx23416 based)
>                 ACPI: PCI Interrupt 0000:04:08.0[A] -> GSI 17 (level,
>                 low) -> IRQ 22
>                 TEA5767 detected.
>                 tuner 2-0060: chip found @ 0xc0 (ivtv i2c driver #1)
>                 tea5767 2-0060: type set to Philips TEA5767HN FM Radio
>                 tuner 2-0060: type set to tea5767
>                 tuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1)
>                 cx25840 2-0044: cx25843-24 found @ 0x88 (ivtv i2c
>                 driver #1)
>                 wm8775 2-001b: chip found @ 0x36 (ivtv i2c driver #1)
>                 tveeprom 2-0050: Hauppauge model 23552, rev E787,
>                 serial# 9935555
>                 tveeprom 2-0050: tuner model is Samsung TCPN 2121P30A
>                 (idx 87, type 70)
>                 tveeprom 2-0050: TV standards NTSC(M) (eeprom 0x08)
>                 tveeprom 2-0050: second tuner model is Philips
>                 TEA5768HL FM Radio (idx 101, type 62)
>                 tveeprom 2-0050: audio processor is CX25843 (idx 37)
>                 tveeprom 2-0050: decoder processor is CX25843 (idx 30)
>                 tveeprom 2-0050: has radio, has no IR receiver, has no
>                 IR transmitter
>                 ivtv1: Autodetected WinTV PVR 500 (unit #1)
>                 tuner-simple 2-0061: type set to 70 (Samsung TCPN
>                 2121P30A)
>                 tuner 2-0061: type set to Samsung TCPN 2121P3
>                 ivtv1: Registered device video1 for encoder MPG (16384
>                 kB)
>                 ivtv1: Registered device video33 for encoder YUV (2048
>                 kB)
>                 ivtv1: Registered device vbi1 for encoder VBI (1024
>                 kB)
>                 ivtv1: Registered device video25 for encoder PCM (320
>                 kB)
>                 ivtv1: Registered device radio1 for encoder radio
>                 ivtv1: Initialized card #1: WinTV PVR 500 (unit #1)
>                 ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 24 (level,
>                 low) -> IRQ 23
>                 PCI: Setting latency timer of device 0000:02:00.0 to
>                 64
>                 NVRM: loading NVIDIA UNIX x86 Kernel Module  169.12
>                  Thu Feb 14 17:53:07 PST 2008
>                 ACPI: PCI Interrupt Link [ALKC] enabled at IRQ 22
>                 ACPI: PCI Interrupt 0000:00:11.5[C] -> Link [ALKC] ->
>                 GSI 22 (level, low) -> IRQ 24
>         
>                 PCI: Setting latency timer of device 0000:00:11.5 to
>                 64
>                         ivtv2: Initializing card #2
>                         ivtv2: Autodetected Hauppauge card (cx23416
>                         based)
>                         ACPI: PCI Interrupt 0000:04:09.0[A] -> GSI 18
>                         (level, low) -> IRQ 25
>                         tuner 3-0061: chip found @ 0xc2 (ivtv i2c
>                         driver #2)
>                         cx25840 3-0044: cx25843-24 found @ 0x88 (ivtv
>                         i2c driver #2)
>                         wm8775 3-001b: chip found @ 0x36 (ivtv i2c
>                         driver #2)
>                         tveeprom 3-0050: Hauppauge model 23552, rev
>                         E787, serial# 9935555
>                         tveeprom 3-0050: tuner model is Samsung TCPN
>                         2121P30A (idx 87, type 70)
>                         tveeprom 3-0050: TV standards NTSC(M) (eeprom
>                         0x08)
>                         tveeprom 3-0050: second tuner model is Philips
>                         TEA5768HL FM Radio (idx 101, type 62)
>                         tveeprom 3-0050: audio processor is CX25843
>                         (idx 37)
>                         tveeprom 3-0050: decoder processor is CX25843
>                         (idx 30)
>                         tveeprom 3-0050: has radio, has no IR
>                         receiver, has no IR transmitter
>                         ivtv2: Correcting tveeprom data: no radio
>                         present on second unit
>                         ivtv2: Autodetected WinTV PVR 500 (unit #2)
>                         tuner-simple 3-0061: type set to 70 (Samsung
>                         TCPN 2121P30A)
>                         tuner 3-0061: type set to Samsung TCPN 2121P3
>                         ivtv2: Registered device video2 for encoder
>                         MPG (16384 kB)
>                         ivtv2: Registered device video34 for encoder
>                         YUV (2048 kB)
>                         ivtv2: Registered device vbi2 for encoder VBI
>                         (1024 kB)
>                         ivtv2: Registered device video26 for encoder
>                         PCM (320 kB)
>                         ivtv2: Initialized card #2: WinTV PVR 500
>                         (unit #2)
>                         ivtv:  End initialization
>         Then loading firmware:
>                         ivtv0: Loaded v4l-cx2341x-enc.fw firmware
>                         (376836 bytes)
>                         ivtv0: Encoder revision: 0x02060039
>                         cx25840 1-0044: loaded v4l-cx25840.fw firmware
>                         (16382 bytes)
>                         ivtv1: Loaded v4l-cx2341x-enc.fw firmware
>                         (376836 bytes)
>                         ivtv1: Encoder revision: 0x02060039
>                         cx25840 2-0044: loaded v4l-cx25840.fw firmware
>                         (16382 bytes)
>                         ivtv2: Loaded v4l-cx2341x-enc.fw firmware
>                         (376836 bytes)
>                         ivtv2: Encoder revision: 0x02060039
>                         cx25840 3-0044: loaded v4l-cx25840.fw firmware
>                         (16382 bytes)
>                 
>                 
>                 Then I see some stuff from mythbackend (crashes) which
>                 I have searched on the web and it says that this is
>                 normal for lots of people so I usually ignore it.
>                 
>                         mythfilldatabas[4871] general protection
>                         eip:1b6e176 esp:8a9dccc error:0
>                         mythfilldatabas[5786]: segfault at 4e880a89
>                         eip 09cd6dcc esp 038e3ccc error 6
>                         mythfilldatabas[6684] general protection
>                         eip:38a4175 esp:42a6cd0 error:0
>                         mythfilldatabas[8301]: segfault at 00000000
>                         eip 04cef17a esp 09352e38 error 4
>                         mythfilldatabas[9206]: segfault at 00000000
>                         eip 0945016b esp 063fdccc error 6
>                         mythfilldatabas[10183]: segfault at d21264f0
>                         eip 04f2e17b esp 03be5cc8 error 5
>                         mythfilldatabas[11438] general protection
>                         eip:9668550 esp:3decccc error:0

That's the listing/channel list grabber that's crashing - not the
backend.  It's safe to ignore that.


>                 Then I get the errors:
>                 
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         ivtv1: DMA TIMEOUT 00000001 0
>                         
>                         
>                         So what is going on here?

One of a few things:

1. The ivtv driver irq handler is too slow and can't keep up with the
card (unlikely if the others are OK).

2. The ivtv driver has a bug in irq_handling which causes it to miss
interrupts for that one card (unlikely if the others are OK)

3. The PCI bus between the host and the card is experiencing errors, so
transfers don't always get set up properly (unlikely if the second half
of the PVR-500 is doing OK)

4. The first CX23416 on the PVR-500 card is malfunctioning and not
generating interrupts reliably

5.  Something about your system is holding off interrupts from the ivtv
driver and causing it to miss handling of the interrupt for that CX23416
chip altogether.


There may be some others, but those are the ones I can dream up right
now.  You can't take reliable action until you narrow down the cause.
(I'd put my money on #5, BTW)


So:

Do you only get DMA Timeouts on that one of the three?  Does it happen
with single captures or multiple captures going on? 

Can you provide the output of 

$ cat /proc/interrupts

?
because it looks like the device isn't getting interrupts at times.  It
may be helpful to know what device & device driver is sharing the IRQ
with that CX23416 and how many interrupts your system is serving.

Do you get a "nobody cared" message in your dmesg or system log
somewhere, followed by a message about the kernel disabling an interrupt
line?

Could you set the 'printk.time=1' kernel command line option so it's
easy to see how often these things show up in the log?  The DMA timeout
messages shouldn't be closer than 300 ms because the timeout is that
long, but how far apart are the messages?.


Regards,
Andy



_______________________________________________
ivtv-users mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-users

Reply via email to