[vdr] buffer usage / clearing transfer buffer

Artur Skawina art_k at o2.pl
Mon Nov 28 19:52:21 CET 2005


Martin Dauskardt wrote:
> Even with 1.3.37 I recognize often log messages like this:
> Oct 15 20:53:18 linvdr user.debug vdr[3004]: buffer usage: 70% (tid=58376)
> Oct 15 20:53:19 linvdr user.debug vdr[3004]: buffer usage: 80% (tid=58376)
> Oct 15 20:53:20 linvdr user.debug vdr[3004]: buffer usage: 90% (tid=58376)
> Oct 15 20:53:20 linvdr user.debug vdr[3003]: clearing transfer buffer to
> avoid overflows
> Oct 15 20:53:20 linvdr user.debug vdr[3004]: buffer usage: 0% (tid=58376)
> 
> It happens with different kernel versions and firmware versions,but it
> started some months ago. Yesterday it happend when I recorded a movie from
> Pro7 (budget card) while watching another channel from the FF-card.
> 
> It is much better since using Live AC3, but the problem still exists. Some
> guys on vdrportal have the same problem. Any idea what the reason could be?
> I even tried kernel 2.4 and the old driver, and it did not solve the
> problem!
> 
> It seems to occur especially when the mpeg bitrate goes high (above 5
> Mbit/s). DMA for the hard disc is on!
> 
> I am using gcc 2.95 and when compiling vdr, the following message appears:
> tools.o: In function `cUnbufferedFile::Close(void)':
> /usr/src/vdr-1.3.36/tools.c:885: warning: posix_fadvise is not implemented
> and will always fail
> 
> Could there be a connection to the problem? I always thought it would only
> effect that the old file cache behaviour is used.

you could try commenting out the fdatasync() calls in tools.c: 
cUnbufferedFile::Write() and Close() and see if anything changes. They should 
affect directly only the thread calling Write()/Close(), but fdatasync could 
block for several seconds...



More information about the vdr mailing list