Discovering select(2) parameters from driver's poll method

From: Ozan Eren Bilgen
Date: Fri Jun 09 2006 - 07:48:45 EST


*** Please CC me your responses ***

Hi,

I am writing a device driver and I have problem with poll method. For
some reason, I need learn the timeout and descriptor sets of select(2)
call. Other words to say, if the user space process calls:

select(n, &readfds, NULL, &exceptionfds, &tv);

With the help of my poll implementation in device driver, I want to
learn that only the write fds is empty. I am also interested in the
value of timeout parameter. Please let me know if this is possible.

By the way, I checked out some Linux device drivers, which are
implemented poll method, and related books like LDD. Everywhere,
poll_wait is called for both read and write queues, without taking the
select(2) call's parameters into account. For example it still waits
for the read queue although the select call was looking only for write
fds. My second question is, why a poll method queries all the queues,
instead of querying only the necessary one?


Thank you in advance,

Ozan Eren Bilgen



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/