Hans Verkuil wrote:
> Hi all,
>
> I would appreciate it if people could start testing the latest ivtv on 
> the 0.10 branch, available here:
>
> http://ivtvdriver.org/viewcvs/ivtv/branches/0.10.tar.gz?view=tar
>
> The current driver has a problem with copying data from the MPEG card to 
> memory that are done using PIO instead of DMA (for good reasons). 
> Unfortunately PIO accesses are slow, so too much time is spent inside 
> the interrupt handler. This can lead to missing clock ticks and 
> problems with remotes (key hits that are missed).
>
> The patch I've committed moves these PIO copies to a separate handler 
> outside the interrupt handler, so this should solve these problems.
>
> However, I did not have much time to test it thoroughly, so I'd very 
> much appreciate it if people could start testing this and report 
> whether or not any new problems were introduced.
>
> This patch is also queued for the 2.6.22 kernel, by the way.
>
> If this change solves the problems that I've mentioned above, then I'll 
> make a new 0.10.3 release in two weeks time.
>
> Thanks,
>
>       Hans
>
>   
Hans,

I've been putting the new driver through some stress tests.  Things look 
pretty good.  There does appear to still be a 'clock drift' issue - 
thought I'm not sure if it's the driver, my hardware, or some 
combination of both, or something else all together. 

I first ran a 1 hour test via myth on all three pvr inputs (pvr-150 and 
pvr-500).  For the first hour, I only got 2 or 3 DMA errors,  I then ran 
a 1 hour cat /dev/videoN > file and got DMA errors more frequently.  
Finally, ran another test via myth but, started running adjtimex -a 
shortly after the start of the test, and never got a DMA error.  See 
below for an edited messages output..

A 4 recorder test (3 IVTV devices and a HDHR), did produce more DMA 
errors - this leads me to believe I just need to tweak the latency of 
either the disk subsystem or the   pvr500 (it seems ivtv1 and ivtv2 are 
the only devices that generate the DMA errors and these equate to the  
two tuners on the 500).

Given this, if I run adjtimex, I seem to have a pretty stable system 
now....THANKS!!

<< start of 3 recordings w/ Myth >>
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 0 -> 128
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
0 -> 128
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 64
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
128 -> 64
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 64 -> 0
May 20 08:04:24 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
64 -> 0
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 0 -> 128
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
0 -> 128
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 64
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
128 -> 64
May 20 08:06:34 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 64 -> 0
May 20 08:06:35 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
64 -> 0
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
0 -> 88
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 80
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
88 -> 80
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 80 -> 16
May 20 08:57:06 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
80 -> 16
<< End of three recodings w/ Myth>

<< Start of 3 cat's at 09:00>>
May 20 09:21:51 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:21:51 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:21:51 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 16 -> 128
May 20 09:21:51 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:21:51 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:21:51 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
16 -> 0
May 20 09:22:34 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:22:34 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:22:34 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:22:34 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:22:34 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:22:55 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:22:55 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:22:55 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
0 -> 128
May 20 09:22:55 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:22:55 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
128 -> 0
May 20 09:23:02 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 09:23:02 mythtvserver1 kernel: ivtv2 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:23:02 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:23:02 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
0 -> 128
May 20 09:23:02 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:23:02 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
128 -> 0
May 20 09:23:37 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:23:37 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:23:37 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
0 -> 124
May 20 09:23:37 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 60
May 20 09:23:37 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
124 -> 60
May 20 09:23:46 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:23:46 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:23:47 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 60 -> 128
May 20 09:23:47 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
60 -> 124
May 20 09:23:47 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 60
May 20 09:23:47 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
124 -> 60
May 20 09:24:31 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:24:31 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 60 -> 128
May 20 09:24:31 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
60 -> 128
May 20 09:24:31 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:24:31 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
128 -> 0
May 20 09:24:40 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:24:40 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:24:40 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
0 -> 124
May 20 09:24:40 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 48
May 20 09:24:40 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
124 -> 48
May 20 09:26:30 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:26:30 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:26:30 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 48 -> 128
May 20 09:26:30 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
48 -> 124
May 20 09:26:30 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 36
May 20 09:26:30 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
124 -> 36
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
0 -> 128
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 64
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
128 -> 64
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 64 -> 0
May 20 09:26:52 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
64 -> 0
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 100
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
0 -> 100
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 100 -> 36
May 20 09:27:25 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
100 -> 36
May 20 09:29:35 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 09:29:35 mythtvserver1 kernel: ivtv2 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:29:35 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 36 -> 128
May 20 09:29:35 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:29:35 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
36 -> 0
May 20 09:31:25 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 09:31:25 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:31:25 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 72
May 20 09:31:25 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
0 -> 72
May 20 09:31:25 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 72 -> 8
May 20 09:31:25 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
72 -> 8
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 36 -> 128
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 112
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
36 -> 112
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 112 -> 48
May 20 09:36:38 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
112 -> 48
May 20 09:36:39 mythtvserver1 kernel: ivtv2 warning: ENC DMA ERROR b
May 20 09:36:39 mythtvserver1 kernel: ivtv2 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:36:39 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 8 -> 128
May 20 09:36:39 mythtvserver1 kernel: ivtv2 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:36:39 mythtvserver1 kernel: ivtv2 warning: encoder VBI: offset 
8 -> 0
May 20 09:40:15 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:40:15 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:40:15 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 48 -> 128
May 20 09:40:15 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
48 -> 84
May 20 09:40:15 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 20
May 20 09:40:15 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
84 -> 20
May 20 09:51:23 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:51:23 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 20 -> 128
May 20 09:51:23 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
20 -> 112
May 20 09:51:23 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 48
May 20 09:51:23 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
112 -> 48
May 20 09:53:43 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:53:43 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 48 -> 128
May 20 09:53:43 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
May 20 09:53:43 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
48 -> 0
May 20 09:56:12 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 09:56:12 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 09:56:12 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 09:56:12 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
<< End of three cats >>

<< Start of 3 recordings w/ Myth>>
May 20 10:04:59 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 10:04:59 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 10:04:59 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 10:04:59 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 0
May 20 10:05:59 mythtvserver1 kernel: ivtv1 warning: ENC DMA ERROR b
May 20 10:05:59 mythtvserver1 kernel: ivtv1 warning: encoder VBI: 
Couldn't find start of buffer within the first 256 bytes
May 20 10:05:59 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 0 -> 128
May 20 10:05:59 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
0 -> 124
May 20 10:05:59 mythtvserver1 kernel: ivtv1 warning: encoder MPEG: 
offset 128 -> 60
May 20 10:05:59 mythtvserver1 kernel: ivtv1 warning: encoder VBI: offset 
124 -> 60

->>>> Started running adjtimex -a every 2 minutes
May 20 10:13:42 mythtvserver1 ntpd[2545]: time reset +0.893229 s
May 20 10:18:17 mythtvserver1 ntpd[2545]: synchronized to 
193.120.142.71, stratum 1
May 20 10:33:17 mythtvserver1 ntpd[2545]: time reset +0.373788 s
<< no errors till end of recording at 11:00>>




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

Reply via email to