[vdr] cUnbufferedFile and NFS mounted video dir

Klaus Schmidinger Klaus.Schmidinger at cadsoft.de
Thu Jan 26 23:53:15 CET 2006


Artur Skawina wrote:
> Andreas Holzhammer - GMX wrote:
> 
>> I'm using a diskless VDR 1.3.38 and noticed that during recordings the 
>> network is saturated for 1-2 seconds every 30 seconds. I haven't seen 
>> this with 1.3.22, so I asume this might be related to the 
>> cUnbufferedFile class in 1.3.35+.
>>
>> This leads to very uneven load on the vdr client (and the NFS-Server), 
>> where I've seen 10000 interrupts per second during the flushes (a few 
>> hundred irqs in between). I'm not sure whether this contributes to 
>> some of my recordings being broken (c*Repacker errors), but I'd like 
>> to distribute the writes more evenly.
>>
>> Is there a way to get cUnbufferedFile to write the data every second, 
>> er even continuously? The NFS-server is going to take care of writing 
>> the data to disk anyway.
> 
> 
> the attached patch makes vdr behave.
> ...
> --- vdr-1.3.39.org/cutter.c	2005-10-31 12:26:44.000000000 +0000
> +++ vdr-1.3.39/cutter.c	2006-01-15 18:31:51.000000000 +0000
> ...
> @@ -118,10 +121,11 @@ void cCuttingThread::Action(void)
>                   break;
>                if (FileSize > MEGABYTE(Setup.MaxVideoFileSize)) {
>                   toFile = toFileName->NextFile();
> -                 if (toFile < 0) {
> +                 if (!toFile) {
>...
> @@ -158,10 +162,11 @@ void cCuttingThread::Action(void)
>                   cutIn = true;
>                   if (Setup.SplitEditedFiles) {
>                      toFile = toFileName->NextFile();
> -                    if (toFile < 0) {
> +                    if (!toFile) {
>...

Are there more than these two actual bugfixes hidden in your patch?
It might be a good idea to post such fixes separately, because I
would certainly adopt these right away ;-)

Klaus



More information about the vdr mailing list