[mythtv] HD3000 buffer overrun solution -
patches for hdtvrecorder.cpp/.h against mythtv 0.16
Eric Anderson
rico99 at sbcglobal.net
Tue Dec 7 15:42:33 UTC 2004
John -
Thanks for posting the patches.
A couple of things...
> I actually hope that Eric Anderson's version is more effective than
> mine. I won't have a chance to test his for a couple of days, though.
#1. I should warn people -- in the testing I had done, I had also
increased the size of the kernel buffer
(from 96KB to 282KB). When I posted yesterday, I had not yet tried
switching back to the smaller kernel
buffer. It turns out that I got buffer overruns again (only under heavy
system load though) with the smaller
buffer.
But changing the kernel buffer size in the HD3000 rev-4 driver is quite
easy:
Edit
HD-3000-CD-04/FedoraCore2-Kernel-2.6-systems/drivers/FedoraCore2-
HD3000-driver-rev-1.4/cx88-atsc.c :
Change: BUF_DEFAULT from 188*512 to 188*1536.
make ; make install
Warning: Going much larger than this will not necessarily work. There
are some restrictions
on the size of the buffer (having to do with limitations on how the
Conexant chip's DMA controller
can be configured). (A coworker of mine was able to set BUF_DEFAULT to
188*3072, but he also
had to set TRANSPORT_SIZE to 188*16.)
> Isaac's idea of creating a thread for the sole purpose of syncing the
> file system helped a lot, but I still cannot consistently record three
> shows while watching another for more than 90 minutes. I can record a
> single show all night long without more than 4MB of ringbuffer being
> used.
#2. John, I'll see how hard it is to backport the file system sync'ing
thread into my changes. Not trying
to fork things here or anything -- but for someone still playing around
with 0.16, this might help them
get to a more stable system.
-Eric
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/enriched
Size: 1763 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20041207/102a5911/attachment.bin
More information about the mythtv-dev
mailing list