[linux-dvb] dvr device reading hangs
Johannes Stezenbach
js at linuxtv.org
Sat Feb 19 22:07:59 CET 2005
Krzysztof Matula wrote:
> nuclearcat wrote:
> >>>SkyStar2, kernel: 2.6.10-1.760_FC3
> >>>
> >>>I'm waiting for the dvr fd with select, and then if FD_ISSET I issue a
> >>>read() call to it. Usually it works perfectly well, but sometimes,
> >>>especially when other thread is performing multiple repeated tunings on
> >>>the forntend the read() blocks infinitely until the process is killed...
> >
> >
> >>Open with O_NONBLOCK.
>
> Will it help? I assume the read() will not block, but will it actually
> receive any data?
Of course not. If there's no data O_NONBLOCK can do nothing about it.
> >>It has been reported a few times that the skystar2 driver has a bug where
> >>it stops outputting data. I assume a race in irq/dma handling, but
> >>didn't have the time to investigate (I also don't have hardware).
> >>You could do 'cat /proc/interrupts' to see if there are still irqs
> >>when your read() hangs.
>
> The counter stops.
> The frontend reports a locked state however.
>
> Any suggestions how to investigate it further?
Patrick Boettcher is currently working on the driver. Let's wait
what comes out of that.
Johannes
More information about the linux-dvb
mailing list