[linux-dvb] problems and workaround when tuning to a channel with DD enabled

C.Y.M syphir at syphir.sytes.net
Thu Jun 16 15:37:22 CEST 2005


Oliver Endriss wrote:
> Johannes Stezenbach wrote:
> 
>>On Sat, Jun 11, 2005 at 02:01:37PM +0200, Wolfgang Rohdewald wrote:
>>
>>>Here comes a new patch
>>>- make sure ERESTARTSYS will always be propagated
>>>- ReleaseBitmap: starting with Firmware 261e, also release when
>>>  BMP_LOADING
>>>- removes unused #define BMP_LOADINGS
>>>- in many cases changed the return value from -1 to something more
>>>  meaningful like ETIMEDOUT, EINVAL
>>>- changed syslog message timeout waiting for COMMAND such that it 
>>>  indicates what command did not complete
>>>- reduce # of arguments for LoadBitmap and BlitBitmap
>>>- av7110_osd_cmd: remove the out: label
>>
>>Patch is in CVS now. The 261e firmware will be released real soon now.
> 
> 
> Looks ok if OSDSetBlock is _never_ used by more than one thread at the
> same time. Otherwise, some race conditions might occur.
> 
> Anyway, as the OSD interface has state variables like av7110->osdwin
> it is not thread-safe 'by design'.
> 

After testing 0x261e with current CVS of the drivers for a few days, I believe I
have run into the race condition that you mention above. If I am on a Dolby
channel and then go into the menu of VDR, VDR will crash with the following msg:

--SNIP--

Jun 15 23:21:29 sid last message repeated 4 times
Jun 15 23:21:30 sid kernel: dvb-ttpci: warning: timeout waiting in LoadBitmap: 0, 1
Jun 15 23:21:31 sid vdr[17482]: clearing device because of consecutive poll timeouts
Jun 15 23:21:40 sid last message repeated 5 times
Jun 15 23:21:40 sid kernel: dvb-ttpci: warning: timeout waiting in LoadBitmap: 0, 1
Jun 15 23:21:41 sid vdr[17482]: clearing device because of consecutive poll timeouts
Jun 15 23:21:43 sid last message repeated 2 times
Jun 15 23:21:43 sid vdr[17482]: ERROR: result buffer overflow, dropped 2048 out
of 2048 byte
Jun 15 23:21:44 sid last message repeated 27 times
Jun 15 23:21:44 sid vdr[17482]: ERROR: result buffer overflow, dropped 1284 out
of 1284 byte
Jun 15 23:21:45 sid vdr[17482]: clearing device because of consecutive poll timeouts
Jun 15 23:22:09 sid last message repeated 13 times

--SNIP--

It is as if opening the menu in VDR triggers the error when the firmware is
processing the Dolby audio.

Best Regards,
C.




More information about the linux-dvb mailing list