[linux-dvb] dvr device reading hangs
js at linuxtv.org
Thu Feb 17 20:36:28 CET 2005
Krzysztof Matula 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.
> I've observed similar behaviour on previous Fedora kernels (starting
> with the 2.4 ones). The difference is that it was necessary to
> rmmod/modprobe the skystar modules then, and now usually helps when only
> the process is restarted.
> Can I enable any debug messages to investigate the problem further? I
> can reproduce it easily...
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.
More information about the linux-dvb