A few words to clear this up.

> The kernel does support it.  The only problem is that the JVM is using
>      select(2) when it should use poll(2).

No, this is not correct.  The 1.1.7 JDK for glibc uses poll and not select (I
know because I rewrote it to use poll).  The problem is that glibc 2.0.7
replaces calls to poll with calls to select since sub 2.0 kernels did not
support poll.

Look at the glibc 2.0.7 (2.0.6) source rpm and you can find the code that
converts a call to poll to a syscall to select.

If you are using a 2.2 or 2.1.xxx kernel, you might try rewriting that code in
glibc to make it use poll (i.e. stop the conversion to select)

Another solution is try the upcoming glibc 2.1 version.  You can check the
source to see if they do a real poll (i.e. don't convert it to select).

Note, libc5 versions of the JDK, do use select because of a lack of a poll
function.

I hope this clears things up.

Kevin Hendricks

Blackdown porting team 

(now back to JDK 1.2 debugging!)

Reply via email to