8173917: Safepoint ID is not consistent across event-based tracing events
Reviewed-by: egahlin, mgronlun
Contributed-by: robin.westberg@oracle.com
--- a/src/hotspot/share/runtime/safepoint.cpp Mon Oct 16 17:03:56 2017 +0200
+++ b/src/hotspot/share/runtime/safepoint.cpp Mon Oct 16 16:44:23 2017 +0200
@@ -333,7 +333,8 @@
}
if (sync_event.should_commit()) {
- sync_event.set_safepointId(safepoint_counter());
+ // Group this event together with the ones committed after the counter is increased
+ sync_event.set_safepointId(safepoint_counter() + 1);
sync_event.set_initialThreadCount(initial_running);
sync_event.set_runningThreadCount(_waiting_to_block);
sync_event.set_iterations(iterations);