Hi Thomas, it's good that somebody finally addresses this long standing issue :) However I wonder if it would be possible to align this effort with the core libraries group (CC'ed). They already fix this issue with: 8133249: Occasional SIGSEGV: non thread-safe use of strerr in getLastErrorString https://bugs.openjdk.java.net/browse/JDK-8133249 I would be nice if we could use the same version in hotspot and the core libraries. Regards, Volker On Fri, Feb 26, 2016 at 5:05 PM, Thomas Stüfe <thomas.stuefe@gmail.com> wrote:
Hi,
please take a look at this proposed fix:
Bug: https://bugs.openjdk.java.net/browse/JDK-8148425 Webrev: http://cr.openjdk.java.net/~stuefe/webrevs/8141425-strerror-replacement/webr...
This adds a replacement function os::strerror() as a drop-in for strerror(), which has a number of issues.
strerror() is unsafe to use and may cause (and has caused) crashes in multithreaded scenarios. It is also not ideal for log files because of the implicit localization of the error messages.
For details please see the discussion under the bug report.
Please note that I did not yet change any call sites, although all call sites in the os namespace should already use the new function. I wanted to see whether there would be any general objections.
Kind Regards, Thomas