Sorry; it's Solaris 9 / SPARC.
Errno 13 is usually EACCES. What are the permissions on /dev/poll?
They look ok to me too. The poll(7d) man page says the following about EACCESS:
EACCES A process does not have permission to access the con- tent cached in /dev/poll.
Oops, I missed the following segment:
The /dev/poll driver caches a list of polled file descrip- tors, which are specific to a process. Therefore, the /dev/poll file descriptor of a process will be inherited by its child process, just like any other file descriptors. But the child process will have very limited access through this inherited /dev/poll file descriptor. Any attempt to write or do ioctl by the child process will result in an EACCES error. The child process should close the inherited /dev/poll file descriptor and open its own if desired.
So it looks like Pike's fork() will need to do some extra work for each /dev/poll fd...
Bill
/ Henrik Grubbström (Lysator)
Previous text:
2004-04-01 20:55: Subject: Re: fatal poll error
Sorry; it's Solaris 9 / SPARC.
Errno 13 is usually EACCES. What are the permissions on /dev/poll?
lrwxrwxrwx 1 root root 29 Oct 13 12:38 /dev/poll -> ../devices/pseudo/poll@0:poll crw-rw-rw- 1 root sys 138, 0 Apr 1 12:21 /dev/../devices/pseudo/poll@0:poll
So, to me the permissions look okay...
They look ok to me too. The poll(7d) man page says the following about EACCESS:
EACCES A process does not have permission to access the con- tent cached in /dev/poll.
I have no idea why you get it.
Have you changed uid or gid since the pike process started?
It's a fatal error because there's currently only support for one backend implementation at a time (ie there's no fallback available when the error is detected).
Yikes... is that as bad as it sounds to me?
Probably not. It just means that you have to compile with --without-devpoll.
Bill
/ Henrik Grubbström (Lysator)