[9] RFR(S): 8150441: CompileTask::print_impl() is broken after JDK-8146905
Tobias Hartmann
tobias.hartmann at oracle.com
Tue Feb 23 10:19:11 UTC 2016
Hi,
please review the following patch.
https://bugs.openjdk.java.net/browse/JDK-8150441
http://cr.openjdk.java.net/~thartmann/8150441/webrev.00/
The fix for JDK-8146905 [1] removed staticBufferStream and instead passes VMError::out/log to CompileTask::print_line_on_error() to print the current compile task if an error occurs. The problem is that fdStream VMError::out/log does not initialize the TimeStamp outputStream::_stamp and we hit the "must not be clear" assert in TimeStamp::milliseconds() which is called from CompileTask::print_impl(). Before, the TimeStamp was initialized in the staticBufferStream constructor [2].
The time stamps should be explicitly initialized like we do in ostream_init(). I verified that my patch solves the problem.
Thanks,
Tobias
[1] http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/rev/64ba9950558b
[2] http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/rev/64ba9950558b#l1.102
More information about the hotspot-dev
mailing list