Mailing List archive

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

[vdr] Re: ARM crashed while cutting, VDR watchdog timer failed.



Carsten Koch wrote:
...
> Dec 30 02:23:53 vdr kernel: dvb0: ARM crashed!
...
> And why does the watchdog timer not work?


OK, I fixed the failing watchdog timer:

Dec 31 18:49:06 vdr kernel: dvb0: ARM crashed!
Dec 31 18:49:18 vdr vdr[4849]: PANIC: watchdog timer expired - exiting!
...
Dec 31 19:03:51 vdr kernel: dvb0: ARM crashed!
Dec 31 19:04:03 vdr vdr[5326]: PANIC: watchdog timer expired - exiting!
...
Dec 31 20:01:04 vdr kernel: dvb0: ARM crashed!
Dec 31 20:01:16 vdr vdr[5943]: PANIC: watchdog timer expired - exiting!
...
Dec 31 20:20:23 vdr kernel: dvb0: ARM crashed!
Dec 31 20:20:35 vdr vdr[6403]: PANIC: watchdog timer expired - exiting!
...
Dec 31 20:25:46 vdr kernel: dvb0: ARM crashed!
Dec 31 20:25:57 vdr vdr[6820]: PANIC: watchdog timer expired - exiting!
...

Here is the patch:

--- dvbosd.c.orig       Mon Dec 31 18:19:16 2001
+++ dvbosd.c    Mon Dec 31 19:55:47 2001
@@ -347,6 +347,7 @@
      // must block all signals, otherwise the command might not be fully executed
      sigset_t set, oldset;
      sigfillset(&set);
+     sigdelset(&set, SIGALRM);
      sigprocmask(SIG_BLOCK, &set, &oldset);
      ioctl(videoDev, OSD_SEND_CMD, &dc);
      usleep(5000); // XXX Workaround for a driver bug (cInterface::DisplayChannel() displayed texts at wrong places


I tried various things both in vdr and in the driver, but so far I 
found no workaround for the ARM crash. Help and ideas appreciated.

I suspected the problem to be OSD-related, so I changed the usleep
in cDvbOsd::Cmd from 5 ms to 100 ms. That made the OSD jerky, but
the ARM still kept crashing.

I wondered if too much data was transferred in one OSD_SetBlock ioctl, 
so I put a printk into DVB/driver/dvb.c/OSDSetBlock that showed bnum
and brest, but all bnum's near an ARM crash were 0.

I also changed the 
    lpb=(32*1024)/bpl; 
in DVB/driver/dvb.c/OSDSetBlock to
    lpb=(1*1024)/bpl; 
which makes the OSD very smooth and slow, but the ARM still keeps crashing.

Any other ideas what I could try?

Thanks, Cheers and a happy new year!

Carsten.



Home | Main Index | Thread Index