Mailing List archive

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

[linux-dvb] Driver locks entire PC



Ever since I switched to driver version 2002-12-08 (which is actually
the same as 2002-12-06) I noticed that from time to time when I restart
VDR (which I do quite often when further developing the program ;-)
my entire system got totally frozen (and only a hard reset would help).

Apparently this is caused when the frontend is opened/closed to quickly.
The following test program runs stable for quite a while with driver 2002-12-01,
but with driver 2002-12-06 it locks the machine after just a few loops.

--------------------------------------------------------------------------------
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>

int main(void)
{
  fprintf(stderr, "start\n");
  for (int i = 0; ; i++) {
      fprintf(stderr, "%d opening...", i);
      int f = open("/dev/dvb/adapter0/frontend0", O_RDWR | O_NONBLOCK);
      if (f < 0) {
         fprintf(stderr, "%m\n");
         break;
         }
      fprintf(stderr, "open...");
      fprintf(stderr, "closing...");
      //sleep(1);
      close(f);
      fprintf(stderr, "closed\n");
      //sleep(1);
      }
}
--------------------------------------------------------------------------------

When I uncomment the sleep(1) calls it runs a little longer with driver 2002-12-06,
but still locks the machine after a short while.

With driver 2002-12-01 the program does hang after some 1016 loops, apparently because 
there are too many processes running by then (I have over 1000 'kdvb-fe <defunct>'
processes in that case, which go away only after killing the test program). Interestingly
just re-starting the test program doesn't help, I have to re-load the driver to make it
work again. But at least it doesn't freeze the entire machine.

I am aware that this is a pretty stressful test environment, but IMHO the driver
should be stable enough to handle this. After all, there's no telling how often
and at what rate the frontend could be opened/closed. So for the moment I'll need to
go back to driver 2002-12-01 (with firmware dated April 15, 2002, because of the RTL
replay problems). Maybe one of the driver developers can find out why these lockups
happen...

Klaus
-- 
_______________________________________________________________

Klaus Schmidinger                       Phone: +49-8635-6989-10
CadSoft Computer GmbH                   Fax:   +49-8635-6989-40
Hofmark 2                               Email:   kls@cadsoft.de
D-84568 Pleiskirchen, Germany           URL:     www.cadsoft.de
_______________________________________________________________


-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index