[9] RFR (S): 8177963: Parallel GC fails fast when per-thread task log overflows
sangheon
sangheon.kim at oracle.com
Tue Apr 4 19:40:44 UTC 2017
Hi Thomas,
Thank you for fixing this!
http://cr.openjdk.java.net/~tschatzl/8177963/webrev/src/share/vm/gc/parallel/gcTaskThread.cpp.frames.html
62 uint time = MIN2(_time_stamp_index, (uint)GCTaskTimeStampEntries - 1);
Variable name seems not appropriate. 'index' instead of 'time'?
68 _time_stamp_index++;
We would face overflow here, so increase only if it is less than
GCTaskTimeStampEntries?
(Because you want to re-use the last buffer when buffers overflow, if
not line 58 also should be '>=')
Or simply rotate it, _time_stamp_index%=GCTaskTimeStampEntries
http://cr.openjdk.java.net/~tschatzl/8177963/webrev/src/share/vm/gc/parallel/gcTaskThread.hpp.frames.html
You already updated all other files except this.
Thanks,
Sangheon
On 04/04/2017 02:48 AM, Thomas Schatzl wrote:
> Hi all,
>
> can I have reviews for this small fix that changes a guarantee() in
> parallel gc when some logging buffer overflows into a warning message
> about the overflow and (continued) reuse of the last entry of that
> buffer so that the user then can then rerun with a larger buffer.
>
> Since it is so late in the release cycle I would like to keep the fix
> simple instead of rewriting the buffer logic, i.e. make it expandable
> etc.
>
> This change has been mostly contributed by Ramki from Twitter, as part
> of JDK-7180571; however we just got this bug from release testing that
> is a duplicate, and he's unavailable to do an RFR right now, and I want
> this fixed asap. I intend to put him as author for this change.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8177963
> Webrev:
> http://cr.openjdk.java.net/~tschatzl/8177963/webrev/
> Testing:
> local testing, new test, jprt
>
> Thanks,
> Thomas
>
More information about the hotspot-gc-dev
mailing list