2.0/2.1 select/poll differences?

Michael Poole (poole+@andrew.cmu.edu)
Tue, 3 Jun 1997 13:44:52 -0400 (EDT)


What are the differences in expected behavior for file system poll
calls (i.e. file_operations.select(inode, file, seltype, wait) versus
file_operations.poll(file, wait))? I more or less understand how select()
should act; from reading the kernel source, it appears that poll() should
return a mask (bitwise or) of all the events which happened to the file it
was passed, but the flags aren't documented.

Specifically, which flags should the file system driver fill in,
and what do they mean? POLLIN and POLLOUT seem straightforward (data
available to be read and all data was written), and I'd guess that POLLERR
means a device error was encountered; what about POLLPRI, POLLHUP,
POLLNVAL, POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND, and POLLMSG?

Thanks,
Michael Poole