Anssi Hannula wrote:
Klaus Schmidinger wrote:


There is still a small problem with buffers running full, but I guess
this is a thread problem that has nothing to do with the kfir device, since
that device does deliver lots of data, while the rest of VDR is apparently
not starting to process it in time. But once it has started, it runs fine.



My patch ignored the O_NONBLOCK, here's a bugfix (against kfir-2.6-driver.tar.bz2) for that, maybe it'll help.



------------------------------------------------------------------------

diff -Nur kfir-2.6-driver-old/driver/kfir.c kfir-2.6-driver/driver/kfir.c
--- kfir-2.6-driver-old/driver/kfir.c   2005-02-13 20:51:01.000000000 +0200
+++ kfir-2.6-driver/driver/kfir.c       2005-02-17 22:07:06.000000000 +0200
@@ -2614,7 +2614,7 @@
        struct kfir_dev *kfir = (struct kfir_dev *) dev;
        int todo = count;
        int blocksize, split;
-       int nonblock = 0;
+       int nonblock = file->f_flags & O_NONBLOCK;
        DECLARE_WAITQUEUE(wait, current);
        dbprintk(KERN_DEBUG "kfir: called kfir_read, nonblock=%d count=%d\n",
                 nonblock, count);

With this it works really good!

After letting it run for a while suddenly this happened:

Feb 18 15:19:42 video kernel: irq 5: nobody cared!
Feb 18 15:19:42 video kernel:  [<c010868c>] __report_bad_irq+0x1c/0x70
Feb 18 15:19:42 video kernel:  [<c010875b>] note_interrupt+0x5b/0x80
Feb 18 15:19:42 video kernel:  [<c010894c>] do_IRQ+0xdc/0x120
Feb 18 15:19:42 video kernel:  [<c0106cd8>] common_interrupt+0x18/0x20
Feb 18 15:19:42 video kernel:  [<c0104030>] default_idle+0x0/0x30
Feb 18 15:19:42 video kernel:  [<c0104054>] default_idle+0x24/0x30
Feb 18 15:19:42 video kernel:  [<c01040bc>] cpu_idle+0x1c/0x40
Feb 18 15:19:42 video kernel:  [<c03ce6bd>] start_kernel+0x16d/0x1d0
Feb 18 15:19:42 video kernel: handlers:
Feb 18 15:19:42 video kernel: [<d8d58eb0>] (kfir_irq+0x0/0x2f0 [kfir])
Feb 18 15:19:42 video kernel: Disabling IRQ #5


IRQ #5 is apparently the one assigned to the kfir card:


CPU0 0: 2748867 XT-PIC timer 2: 0 XT-PIC cascade 5: 100474 XT-PIC kfir 10: 140526 XT-PIC saa7146 (2) 11: 394979 XT-PIC saa7146 (1) 12: 7825916 XT-PIC eth0, saa7146 (0) 14: 8249 XT-PIC ide0 15: 0 XT-PIC ide1 NMI: 0 LOC: 0 ERR: 0 MIS: 0


Do you have any idea what might be the problem here?

Klaus

_______________________________________________
mpeg2 mailing list
mpeg2@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/mpeg2

Reply via email to