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

Wolfgang Rohdewald wolfgang at rohdewald.de
Tue Jun 7 21:53:55 CEST 2005


On Dienstag 07 Juni 2005 21:04, Oliver Endriss wrote:
> If I understood this -ERESTARTSYS thing correctly, the interrupted ioctl
> will be automagically restarted when the user space signal handler has
> completed.
> 
> Signals can occur anytime, so the driver is broken and has to be fixed.
> 
> The easiest and most robust fix would be to abort OSDSetBlock and
> restart from the beginning. Can we tell the firmware to abort the
> current bitmap transfer?

My idea would be: on entry of OSDSetBlock: if there is a current transfer,
wait for it to finish, call ReleaseBitmap and start all over.

it is not just OSDSetBlock but half a dozen other functions where
ERESTARTSYS is thrown away where it probably shouldn't.

I am currently trying to fix that up, I hope to have a patch proposal
tonight. That would be my first kernel patch...

-- 
Wolfgang




More information about the linux-dvb mailing list