diff -rauN hotspot-jdk8u181-b13/src/os/linux/vm/os_linux.inline.hpp hotspot-jdk8u181-b13-readdir_r-patch/src/os/linux/vm/os_linux.inline.hpp --- hotspot-jdk8u181-b13/src/os/linux/vm/os_linux.inline.hpp 2018-07-04 03:01:40.000000000 +0200 +++ hotspot-jdk8u181-b13-readdir_r-patch/src/os/linux/vm/os_linux.inline.hpp 2018-08-29 16:58:42.460758701 +0200 @@ -117,18 +117,10 @@ inline struct dirent* os::readdir(DIR* dirp, dirent *dbuf) { dirent* p; - int status; assert(dirp != NULL, "just checking"); - - // NOTE: Linux readdir_r (on RH 6.2 and 7.2 at least) is NOT like the POSIX - // version. Here is the doc for this function: - // http://www.gnu.org/manual/glibc-2.2.3/html_node/libc_262.html - - if((status = ::readdir_r(dirp, dbuf, &p)) != 0) { - errno = status; - return NULL; - } else - return p; + + p = ::readdir(dirp); + return p; } inline int os::closedir(DIR *dirp) {