RFR (XXS): 7110173: GCNotifier::pushNotification publishes stale data.

Poonam Bajaj poonam.bajaj at oracle.com
Tue Nov 15 06:11:01 UTC 2011


Hi John,

The changes look good to me.

Thanks,
Poonam

On 11/15/2011 12:16 AM, John Cuthbertson wrote:
> Hi Everyone,
>
> Can I have a couple of volnteers to review the fix for this CR? The 
> webrev can be found at: 
> http://cr.openjdk.java.net/~johnc/7110173/webrev.0/.
>
> The issue here was that the routine GCNotifier::pushNotification(), 
> which uses GC data held in GCMemoryManager::_last_gc_stat, was being 
> called before the values in GCMemoryManager::_last_gc_stat were being 
> populated for the current GC. As a result the JVM could pass 
> uninitialized or stale data to a listener. The fix is to move the call 
> to GCNotifier::pushNotification() after the code that populates 
> GCMemoryManager::_last_gc_stat. I also modified the GCStatInfo 
> constructor to fully initialize instances of that class.
>
> Testing: The supplied test case on Windows,  a crafted test case on 
> Solaris, and the nsk GC tests.
>
> Thanks,
>
> JohnC




More information about the hotspot-gc-dev mailing list