RFR: Backport JDK-8074037, JDK-8075210, JDK-8027962 and also JDK-8061630, JDK-8051837 to 8u
Bengt Rutisson
bengt.rutisson at oracle.com
Thu Mar 26 04:49:53 UTC 2015
Hi Eric,
Thanks for looking at this!
> 25 mar 2015 kl. 15:07 skrev Eric Caspole <eric.caspole at oracle.com>:
>
> Looks good to me, although I have never tried a backport before.
> It is worthwhile to get this better stats system collection in use.
>
> I did not follow why the
>
> #include "runtime/atomic.inline.hpp"
>
> got added into this middle step merge:
>
> http://cr.openjdk.java.net/~brutisso/backport-8027962/preparation/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp.frames.html
>
It was added because I did not backport "JDK-8044775: Improve usage of umbrella header atomic.inline.hpp" that added that include to JDK 9. I could have done that as s patch to the export file instead but this was the first chsnge I did before I started changing the export files.
Thanks,
Bengt
> but I saw it was removed in the final merge:
>
> http://cr.openjdk.java.net/~brutisso/backport-8027962/8074037/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp.frames.html
>
> Regards,
> Eric
>
>
>> On 3/25/2015 8:45 AM, Bengt Rutisson wrote:
>>
>> Hi all,
>>
>> I would like to backport this fix to the 8 update repo:
>>
>> JDK-8027962: Per-phase timing measurements for strong roots processing
>> https://bugs.openjdk.java.net/browse/JDK-8027962
>>
>> This fix was originally intended for the 8u branch. During the review process it was decided to take on a couple of broader cleanup fixes to make it easier to address JDK-8027962. So, the work was split up into three separate changes. This means that to backport JDK-8027962 I also need to backport these two changes:
>>
>> JDK-8074037: Refactor the G1GCPhaseTime logging to make it easier to add new phases
>> https://bugs.openjdk.java.net/browse/JDK-8074037
>>
>> JDK-8075210: Refactor strong root processing in order to allow G1 to evolve separately from GenCollectedHeap
>> https://bugs.openjdk.java.net/browse/JDK-8075210
>>
>>
>> The 8u branch has deviated a bit from the JDK 9 branch so the above changesets do not apply cleanly. Two small fixes cause conflicts, so I would like to backport those changes as well:
>>
>> JDK-8061630: G1 iterates over JNIHandles two time
>> https://bugs.openjdk.java.net/browse/JDK-8061630
>>
>> JDK-8051837: Remove temporary G1UseParallelRSetUpdating and G1UseParallelRSetScanning flags
>> https://bugs.openjdk.java.net/browse/JDK-8051837
>>
>> These two changes both apply cleanly to the 8u repo.
>>
>> There are also conflicts due to other changes that have not been backported. I prefer *not* to backport these since I think they are too intrusive:
>>
>> JDK-6979279: remove special-case code for ParallelGCThreads==0
>> JDK-8039244: Don't use UINT32_FORMAT and INT32_FORMAT when printing uints and ints in the GC code
>> JDK-8060074: os::free() takes MemoryTrackingLevel but doesn't need it
>> JDK-8044775: Improve usage of umbrella header atomic.inline.hpp
>> JDK-8062206: Remove unusable G1RSLogCheckCardTable command line argument
>>
>> Instead I manually fixed the conflicts in two ways. I prepared the 8u repo with the following fix:
>>
>> http://cr.openjdk.java.net/~brutisso/backport-8027962/preparation/
>>
>> And then I patched the export files for the changesets to apply cleanly. Here are webreves for the patches to the exports:
>>
>> http://cr.openjdk.java.net/~brutisso/backport-8027962/exports/
>>
>> And here are the resulting webrevs for the three changes:
>>
>> http://cr.openjdk.java.net/~brutisso/backport-8027962/8027962/
>> http://cr.openjdk.java.net/~brutisso/backport-8027962/8075210/
>> http://cr.openjdk.java.net/~brutisso/backport-8027962/8074037/
>>
>> I realize that this is difficult to review. Let me know if there is more I can do to ease up the review.
>>
>> Thanks,
>> Bengt
>
More information about the hotspot-gc-dev
mailing list