[9] RFR (S): 8177963: Parallel GC fails fast when per-thread task log overflows
Thomas Schatzl
thomas.schatzl at oracle.com
Wed Apr 5 09:17:18 UTC 2017
Hi Sangheon,
On Tue, 2017-04-04 at 12:40 -0700, sangheon wrote:
> Hi Thomas,
>
> Thank you for fixing this!
>
> http://cr.openjdk.java.net/~tschatzl/8177963/webrev/src/share/vm/gc/p
> arallel/gcTaskThread.cpp.frames.html
> 62 uint time = MIN2(_time_stamp_index, (uint)GCTaskTimeStampEntries
> - 1);
> Variable name seems not appropriate. 'index' instead of 'time'?
Kind of fixed after incorporating Kim's suggestions.
>
> 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
I do not really care either way, we just should not crash. In this
version I implemented Kim's suggestion to ignore all further time
stamps.
> http://cr.openjdk.java.net/~tschatzl/8177963/webrev/src/share/vm/gc/p
> arallel/gcTaskThread.hpp.frames.html
> You already updated all other files except this.
Fixed.
New webrevs at:
http://cr.openjdk.java.net/~tschatzl/8177963/webrev.0_to_1 (diff)
http://cr.openjdk.java.net/~tschatzl/8177963/webrev.1 (full)
Thanks,
Thomas
More information about the hotspot-gc-dev
mailing list