Hello all,
I am using blocking IO to block the buffers when there is no data.
if (wait_event_interruptible_timeout (
iface->queue, !plx_rx_isempty (dma),HZ*3)) {
up (&iface->buf_sem);
return -ERESTARTSYS;
}
The code above needed to be changed in order to introduce timeout so
that an application would know when there is a timeout and act
accordingly. The driver code is for DVB ASI receiver part. I would like
the receiver to print timeout when there is actual timeout. However,
with this code, the receiver exits without even receiving any data. This
is for fedora core 4 kernel 2.6.17. I also tested ETIMEDOUT to see if
that made any difference.
Am I correctly assuming that wait_event_interrupt_timeout shouldn't exit
the process?
I am not sure if I gave you all the details. Please let me know if you
need to know any further information. I am really stuck in this loop. If
I change it to wait_event_interruptible everything works fine.
Thanks,
Dinesh
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/