[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