Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: Recordings menu sluggish - *the real* solution. :-)



On 05 Oct 2003 Michael Hoffmann <linux@f-j-hoffmann.de> wrote:

Hi,
may I give some comments?

> diff -Nru VDR/recording.c vdr_patched/recording.c
> --- VDR/recording.c     2003-08-17 11:10:46.000000000 +0200
> +++ vdr_patched/recording.c     2003-10-05 16:39:45.000000000 +0200
> @@ -175,7 +177,7 @@
>          if ((st.st_mode & S_IWUSR) == 0) // no write access, assume no resume
>             return -1;
>          }
> -     int f = open(fileName, O_RDONLY);
> +     int f = open(fileName, O_RDONLY | O_STREAMING);
>       if (f >= 0) {

This is the open() for the resume file. Streaming mode doesn't
makes much sense here.

> @@ -807,7 +809,7 @@
>                   size = last + 1;
>                   index = MALLOC(tIndex, size);
>                   if (index) {
> -                    f = open(fileName, O_RDONLY);
> +                    f = open(fileName, O_RDONLY | O_STREAMING);
>                      if (f >= 0) {

This is the index file. As this one isn't huge, may be it makes
sense to let it be cached. May improve response for
jumping/trickmodes. In any case the create open() some lines down
(at line 834) should use streaming flag IMO.

> @@ -1041,7 +1043,7 @@
>       else {
>          if (access(fileName, R_OK) == 0) {
>             dsyslog("playing '%s'", fileName);
> -           file = open(fileName, O_RDONLY | BlockingFlag);
> +           file = open(fileName, O_RDONLY | BlockingFlag | O_STREAMING);
>             if (file < 0)

The create open() used for recordings is some lines above this
(line 1038). You askes this in another posting.

What a pitty we all have to patch the kernel to use this...

Regards.

-- 
Stefan Huelswitt
huels@iname.com  | http://home.pages.de/~nathan


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe vdr" as subject.



Home | Main Index | Thread Index