[linux-dvb] problems and workaround when tuning to a channel with
wolfgang at rohdewald.de
Wed Jun 8 08:18:34 CEST 2005
On Dienstag 07 Juni 2005 17:44, Johannes Stezenbach wrote:
> Why don't you just fix the problem with the b0rked error
> handling in Load/BlitBitmap and be done with it?
OK, here comes my first try. I hope this propagates all ERESTARTSYS,
not only in OSDSetBlock
yesterday I said these problems do not happen with a non preempting kernel.
Wrong, they do happen, but only rarely.
about OSDSetBlock: If it is interrupted, it starts all over again
until it can finish. I don't know how big the risk of endless trying is.
Actually I think it can be neglected. Otherwise, possible solutions:
1. remember how much has been done: add a counter to struct av7110
which is incremented in relevant places. On next try, dry-run these
places (i.e. do not pass anything to the card).
2. at the second time, use wait_event instead of wait_event_interruptible
If OSDSetBlock times out, -ETIMEDOUT is returned. Most other timeouts
will return -1. Could this be made more consistent? Also, the return codes
in <dvb/osd.h> don't match what the driver does. I don't know what should
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 11118 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/linux-dvb/attachments/20050608/1581a7b9/restart.bin
More information about the linux-dvb