http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35536 --- origsrc/gcc-4.5.0/libjava/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c 2007-12-28 11:49:56.000000000 -0600 +++ src/gcc-4.5.0/libjava/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c 2010-05-11 03:55:47.789066200 -0500 @@ -1601,7 +1601,7 @@ Java_gnu_java_nio_VMChannel_available (J if (ioctl (fd, FIONREAD, &avail) == -1) { #if defined(ENOTTY) && defined(HAVE_FSTAT) - if (errno == ENOTTY) + if (errno == ENOTTY || errno == EINVAL) { if ((fstat (fd, &statBuffer) == 0) && S_ISREG (statBuffer.st_mode)) {