From John.Coomes at oracle.com Fri Nov 1 13:34:05 2013 From: John.Coomes at oracle.com (John Coomes) Date: Fri, 1 Nov 2013 06:34:05 -0700 Subject: RFR: JDK-8016309 - assert(eden_size > 0 && survivor_size > 0) failed In-Reply-To: <52727C38.1090307@oracle.com> References: <523B6EE8.7080301@oracle.com> <1380281366.4804.27.camel@cirrus> <5249DDAE.3050700@oracle.com> <524D55ED.7060706@oracle.com> <526621F1.3070007@oracle.com> <1382615303.11477.14.camel@cirrus> <526A7707.5020005@oracle.com> <21105.16822.811763.129831@oracle.com> <52727C38.1090307@oracle.com> Message-ID: <21107.44493.987322.322100@oracle.com> Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: > Hi John, > > Thanks for the review! > > I have fixed the things you commented on. Rather than making a new webrev for > the entire change I made one to put on top of the previous change. This way you > can see exactly what I have changed this time without having to look through all > of it again. Much easier that way, thanks. > The new patch: > > http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.4/ > > Comments inline. Looks good, except something seems to be missing from the webrev. See comments below. > John Coomes skrev 30/10/13 6:28 PM: > > Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: > >> Hi Thomas, > >> > >> Thanks for looking at this! > >> > >> Comments inline. > >> > >> ... > >> A new webrev is available now with changes based on your comments and comments > >> from John Coomes. Right now it applies cleanly to hotspot-gc. The bugfix builds > >> on top of the cleanup, so apply the cleanup first. The cleanup is unchanged and > >> has gotten sufficient reviews by now. > >> > >> Cleanup: http://cr.openjdk.java.net/~jwilhelm/8016309/Cleanup/webrev.3/ > >> > >> Bugfix: http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.3/ > > > > Hi Jesper, > > > > Generally looks good; some comments below. > > > > collectorPolicy.hpp: > > > > default_gen_alignment() is 64K heapwords, which was the value > > from the old ParallelScavengeHeap::intra_heap_alignment(). The > > latter applied only to ParallelScavengeHeap, but the former now > > applies to CMS and SerialGC and G1, so the alignment for those > > GCs has been increased unnecessarily. There should instead be a > > specialized default_gen_alignment() for ParallelScavenge (in > > GenerationSizer) with the larger value. > > G1 has its own initialize_alignments so it should be good. For the others, the > changes in the patch will allow CMS and Serial to keep using the smaller alignment. I see the new default_gen_alignment() in GenerationSizer, which is fine. But the webrev doesn't show what happened to the old implementation in collectorPolicy.hpp - it's not there anymore, but there's no diff showing that it was removed. > > The assert_*_info() methods should be wrapped in DEBUG_ONLY() to > > ensure there's no code in the product vm. > > How much do we trust the compilers to remove unused code? In the patch I have > wrapped the whole methods in DEBUG_ONLY(), but if we think that the compilers > will remove dead code it would be enough to wrap the calls. > Wrapping the whole methods will however allow the compiler to make sure they are > not called in a product build. Wrapping the calls only would be fine, except you have to make sure that you find all of them, and you don't get help from the compiler to do it :-(. Also, the usual convention has been to use DEBUG_ONLY() for single lines of code, and #ifdef ASSERT ... #endif // ASSERT for larger blocks (like whole methods, or groups of methods). What you have is ok, but it does make it hard for some editors to do proper indentation. -John > > > > collectorPolicy.cpp: > > > > - GenCollectorPolicy::initialize_flags() > > > > If NewSize > MaxNewSize, the old code would increase MaxNewSize; > > the new code will exit w/an error. That behavior shouldn't be > > changed as part of this bug fix, and not this late in jdk8. > > Sure, I'll change that back. I do think we should try to be less forgiving when > the user sets conflicting flags though. (This exit only happens if the user has > set both NewSize and MaxNewSize.) > > > There should be an assert that > > _heap_alignment % _gen_alignment == 0 > > either here or in assert_size_info(). > > Agreed. Fixed. > > > > > Syntax nits: > > > > There are several local vars with camel-case names that should > > be lower-case with underscores (e.g., smallestNewSize should be > > smallest_new_size) > > OK. Fixed. > > > The method is big now and should be split (ok to do later, if > > necessary). > > There are a few more cleanups of these classes planned so I'll put that on my > todo list. > > > > > generationSizer.hpp: > > > > You've made initialize_size_info, initialize_flags() and > > initialize_size_info() private. They're protected in > > superclasses. > > Oops. Fixed. > > > I think a generationSizer.cpp is needed, instead of making these > > methods inline (they're not relevant to performance). > > OK. Done. > > > I don't like that after the page size is selected in > > GenerationSizer::initialize_size_info(), the entire sizing > > calculation is redone. It's partially an artifact of the > > structure of the old code, so I'm ok with it for now as long as > > it's revisited later (but please file an issue). > > I agree and I have an idea on how to do it better. I have created an RFE to fix > this: https://bugs.openjdk.java.net/browse/JDK-8027649 > > Thanks! > /Jesper > > > > > -John > > From jesper.wilhelmsson at oracle.com Fri Nov 1 15:35:20 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Fri, 01 Nov 2013 16:35:20 +0100 Subject: RFR: JDK-8016309 - assert(eden_size > 0 && survivor_size > 0) failed In-Reply-To: <21107.44493.987322.322100@oracle.com> References: <523B6EE8.7080301@oracle.com> <1380281366.4804.27.camel@cirrus> <5249DDAE.3050700@oracle.com> <524D55ED.7060706@oracle.com> <526621F1.3070007@oracle.com> <1382615303.11477.14.camel@cirrus> <526A7707.5020005@oracle.com> <21105.16822.811763.129831@oracle.com> <52727C38.1090307@oracle.com> <21107.44493.987322.322100@oracle.com> Message-ID: <5273CA38.8010606@oracle.com> Hi John, Indeed there was a part missing from the webrev. The webrev script didn't pick up all patches in my mercurial queue. I made a new webrev here: http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.5/ Unfortunately I have already merged the latest patches into the big bugfix patch so the new webrev is a complete diff. The change that was missing was that I removed the implementation of initialize_alignments in CollectorPolicy and GenCollectorPolicy, and added specific initialize_alignment in GenerationSizer and ConcurrentMarkSweepPolicy. (G1 already had one.) default_gen_alignment() was moved into GenerationSizer since it is specific to parallel scavenge. In this new webrev I also used #ifdef ASSERT for the assert-methods in collectorPolicy.cpp as you suggested. Thanks! /Jesper John Coomes skrev 1/11/13 2:34 PM: > Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: >> Hi John, >> >> Thanks for the review! >> >> I have fixed the things you commented on. Rather than making a new webrev for >> the entire change I made one to put on top of the previous change. This way you >> can see exactly what I have changed this time without having to look through all >> of it again. > > Much easier that way, thanks. > >> The new patch: >> >> http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.4/ >> >> Comments inline. > > Looks good, except something seems to be missing from the webrev. See > comments below. > >> John Coomes skrev 30/10/13 6:28 PM: >>> Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: >>>> Hi Thomas, >>>> >>>> Thanks for looking at this! >>>> >>>> Comments inline. >>>> >>>> ... >>>> A new webrev is available now with changes based on your comments and comments >>>> from John Coomes. Right now it applies cleanly to hotspot-gc. The bugfix builds >>>> on top of the cleanup, so apply the cleanup first. The cleanup is unchanged and >>>> has gotten sufficient reviews by now. >>>> >>>> Cleanup: http://cr.openjdk.java.net/~jwilhelm/8016309/Cleanup/webrev.3/ >>>> >>>> Bugfix: http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.3/ >>> >>> Hi Jesper, >>> >>> Generally looks good; some comments below. >>> >>> collectorPolicy.hpp: >>> >>> default_gen_alignment() is 64K heapwords, which was the value >>> from the old ParallelScavengeHeap::intra_heap_alignment(). The >>> latter applied only to ParallelScavengeHeap, but the former now >>> applies to CMS and SerialGC and G1, so the alignment for those >>> GCs has been increased unnecessarily. There should instead be a >>> specialized default_gen_alignment() for ParallelScavenge (in >>> GenerationSizer) with the larger value. >> >> G1 has its own initialize_alignments so it should be good. For the others, the >> changes in the patch will allow CMS and Serial to keep using the smaller alignment. > > I see the new default_gen_alignment() in GenerationSizer, which is > fine. But the webrev doesn't show what happened to the old > implementation in collectorPolicy.hpp - it's not there anymore, but > there's no diff showing that it was removed. > >>> The assert_*_info() methods should be wrapped in DEBUG_ONLY() to >>> ensure there's no code in the product vm. >> >> How much do we trust the compilers to remove unused code? In the patch I have >> wrapped the whole methods in DEBUG_ONLY(), but if we think that the compilers >> will remove dead code it would be enough to wrap the calls. >> Wrapping the whole methods will however allow the compiler to make sure they are >> not called in a product build. > > Wrapping the calls only would be fine, except you have to make sure > that you find all of them, and you don't get help from the compiler to > do it :-(. > > Also, the usual convention has been to use DEBUG_ONLY() for single > lines of code, and > > #ifdef ASSERT > ... > #endif // ASSERT > > for larger blocks (like whole methods, or groups of methods). What > you have is ok, but it does make it hard for some editors to do proper > indentation. > > -John > >>> >>> collectorPolicy.cpp: >>> >>> - GenCollectorPolicy::initialize_flags() >>> >>> If NewSize > MaxNewSize, the old code would increase MaxNewSize; >>> the new code will exit w/an error. That behavior shouldn't be >>> changed as part of this bug fix, and not this late in jdk8. >> >> Sure, I'll change that back. I do think we should try to be less forgiving when >> the user sets conflicting flags though. (This exit only happens if the user has >> set both NewSize and MaxNewSize.) >> >>> There should be an assert that >>> _heap_alignment % _gen_alignment == 0 >>> either here or in assert_size_info(). >> >> Agreed. Fixed. >> >>> >>> Syntax nits: >>> >>> There are several local vars with camel-case names that should >>> be lower-case with underscores (e.g., smallestNewSize should be >>> smallest_new_size) >> >> OK. Fixed. >> >>> The method is big now and should be split (ok to do later, if >>> necessary). >> >> There are a few more cleanups of these classes planned so I'll put that on my >> todo list. >> >>> >>> generationSizer.hpp: >>> >>> You've made initialize_size_info, initialize_flags() and >>> initialize_size_info() private. They're protected in >>> superclasses. >> >> Oops. Fixed. >> >>> I think a generationSizer.cpp is needed, instead of making these >>> methods inline (they're not relevant to performance). >> >> OK. Done. >> >>> I don't like that after the page size is selected in >>> GenerationSizer::initialize_size_info(), the entire sizing >>> calculation is redone. It's partially an artifact of the >>> structure of the old code, so I'm ok with it for now as long as >>> it's revisited later (but please file an issue). >> >> I agree and I have an idea on how to do it better. I have created an RFE to fix >> this: https://bugs.openjdk.java.net/browse/JDK-8027649 >> >> Thanks! >> /Jesper >> >>> >>> -John >>> From bengt.rutisson at oracle.com Fri Nov 1 15:50:12 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Fri, 01 Nov 2013 16:50:12 +0100 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs Message-ID: <5273CDB4.5060504@oracle.com> Hi all, Can I have a couple of reviews for this small change? http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8027440 DefNew was not printing the heap change information when a promotion failure occured. Before this change the logging for a DefNew collection that got promotion failure looked like this: [GC (Allocation Failure) , 0.0543440 secs] After my change it looks like: [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] Thanks, Bengt From John.Coomes at oracle.com Fri Nov 1 16:00:53 2013 From: John.Coomes at oracle.com (John Coomes) Date: Fri, 1 Nov 2013 09:00:53 -0700 Subject: RFR: JDK-8016309 - assert(eden_size > 0 && survivor_size > 0) failed In-Reply-To: <5273CA38.8010606@oracle.com> References: <523B6EE8.7080301@oracle.com> <1380281366.4804.27.camel@cirrus> <5249DDAE.3050700@oracle.com> <524D55ED.7060706@oracle.com> <526621F1.3070007@oracle.com> <1382615303.11477.14.camel@cirrus> <526A7707.5020005@oracle.com> <21105.16822.811763.129831@oracle.com> <52727C38.1090307@oracle.com> <21107.44493.987322.322100@oracle.com> <5273CA38.8010606@oracle.com> Message-ID: <21107.53301.498160.799217@oracle.com> Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: > Hi John, > > Indeed there was a part missing from the webrev. The webrev script didn't pick > up all patches in my mercurial queue. I made a new webrev here: > > http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.5/ > ... Looks good to me. :-) -John > John Coomes skrev 1/11/13 2:34 PM: > > Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: > >> Hi John, > >> > >> Thanks for the review! > >> > >> I have fixed the things you commented on. Rather than making a new webrev for > >> the entire change I made one to put on top of the previous change. This way you > >> can see exactly what I have changed this time without having to look through all > >> of it again. > > > > Much easier that way, thanks. > > > >> The new patch: > >> > >> http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.4/ > >> > >> Comments inline. > > > > Looks good, except something seems to be missing from the webrev. See > > comments below. > > > >> John Coomes skrev 30/10/13 6:28 PM: > >>> Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: > >>>> Hi Thomas, > >>>> > >>>> Thanks for looking at this! > >>>> > >>>> Comments inline. > >>>> > >>>> ... > >>>> A new webrev is available now with changes based on your comments and comments > >>>> from John Coomes. Right now it applies cleanly to hotspot-gc. The bugfix builds > >>>> on top of the cleanup, so apply the cleanup first. The cleanup is unchanged and > >>>> has gotten sufficient reviews by now. > >>>> > >>>> Cleanup: http://cr.openjdk.java.net/~jwilhelm/8016309/Cleanup/webrev.3/ > >>>> > >>>> Bugfix: http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.3/ > >>> > >>> Hi Jesper, > >>> > >>> Generally looks good; some comments below. > >>> > >>> collectorPolicy.hpp: > >>> > >>> default_gen_alignment() is 64K heapwords, which was the value > >>> from the old ParallelScavengeHeap::intra_heap_alignment(). The > >>> latter applied only to ParallelScavengeHeap, but the former now > >>> applies to CMS and SerialGC and G1, so the alignment for those > >>> GCs has been increased unnecessarily. There should instead be a > >>> specialized default_gen_alignment() for ParallelScavenge (in > >>> GenerationSizer) with the larger value. > >> > >> G1 has its own initialize_alignments so it should be good. For the others, the > >> changes in the patch will allow CMS and Serial to keep using the smaller alignment. > > > > I see the new default_gen_alignment() in GenerationSizer, which is > > fine. But the webrev doesn't show what happened to the old > > implementation in collectorPolicy.hpp - it's not there anymore, but > > there's no diff showing that it was removed. > > > >>> The assert_*_info() methods should be wrapped in DEBUG_ONLY() to > >>> ensure there's no code in the product vm. > >> > >> How much do we trust the compilers to remove unused code? In the patch I have > >> wrapped the whole methods in DEBUG_ONLY(), but if we think that the compilers > >> will remove dead code it would be enough to wrap the calls. > >> Wrapping the whole methods will however allow the compiler to make sure they are > >> not called in a product build. > > > > Wrapping the calls only would be fine, except you have to make sure > > that you find all of them, and you don't get help from the compiler to > > do it :-(. > > > > Also, the usual convention has been to use DEBUG_ONLY() for single > > lines of code, and > > > > #ifdef ASSERT > > ... > > #endif // ASSERT > > > > for larger blocks (like whole methods, or groups of methods). What > > you have is ok, but it does make it hard for some editors to do proper > > indentation. > > > > -John > > > >>> > >>> collectorPolicy.cpp: > >>> > >>> - GenCollectorPolicy::initialize_flags() > >>> > >>> If NewSize > MaxNewSize, the old code would increase MaxNewSize; > >>> the new code will exit w/an error. That behavior shouldn't be > >>> changed as part of this bug fix, and not this late in jdk8. > >> > >> Sure, I'll change that back. I do think we should try to be less forgiving when > >> the user sets conflicting flags though. (This exit only happens if the user has > >> set both NewSize and MaxNewSize.) > >> > >>> There should be an assert that > >>> _heap_alignment % _gen_alignment == 0 > >>> either here or in assert_size_info(). > >> > >> Agreed. Fixed. > >> > >>> > >>> Syntax nits: > >>> > >>> There are several local vars with camel-case names that should > >>> be lower-case with underscores (e.g., smallestNewSize should be > >>> smallest_new_size) > >> > >> OK. Fixed. > >> > >>> The method is big now and should be split (ok to do later, if > >>> necessary). > >> > >> There are a few more cleanups of these classes planned so I'll put that on my > >> todo list. > >> > >>> > >>> generationSizer.hpp: > >>> > >>> You've made initialize_size_info, initialize_flags() and > >>> initialize_size_info() private. They're protected in > >>> superclasses. > >> > >> Oops. Fixed. > >> > >>> I think a generationSizer.cpp is needed, instead of making these > >>> methods inline (they're not relevant to performance). > >> > >> OK. Done. > >> > >>> I don't like that after the page size is selected in > >>> GenerationSizer::initialize_size_info(), the entire sizing > >>> calculation is redone. It's partially an artifact of the > >>> structure of the old code, so I'm ok with it for now as long as > >>> it's revisited later (but please file an issue). > >> > >> I agree and I have an idea on how to do it better. I have created an RFE to fix > >> this: https://bugs.openjdk.java.net/browse/JDK-8027649 > >> > >> Thanks! > >> /Jesper > >> > >>> > >>> -John > >>> From jesper.wilhelmsson at oracle.com Fri Nov 1 16:14:59 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Fri, 01 Nov 2013 17:14:59 +0100 Subject: RFR: JDK-8016309 - assert(eden_size > 0 && survivor_size > 0) failed In-Reply-To: <21107.53301.498160.799217@oracle.com> References: <523B6EE8.7080301@oracle.com> <1380281366.4804.27.camel@cirrus> <5249DDAE.3050700@oracle.com> <524D55ED.7060706@oracle.com> <526621F1.3070007@oracle.com> <1382615303.11477.14.camel@cirrus> <526A7707.5020005@oracle.com> <21105.16822.811763.129831@oracle.com> <52727C38.1090307@oracle.com> <21107.44493.987322.322100@oracle.com> <5273CA38.8010606@oracle.com> <21107.53301.498160.799217@oracle.com> Message-ID: <5273D383.7030804@oracle.com> Thanks for the review John! /Jesper John Coomes skrev 1/11/13 5:00 PM: > Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: >> Hi John, >> >> Indeed there was a part missing from the webrev. The webrev script didn't pick >> up all patches in my mercurial queue. I made a new webrev here: >> >> http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.5/ >> ... > > Looks good to me. :-) > > -John > >> John Coomes skrev 1/11/13 2:34 PM: >>> Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: >>>> Hi John, >>>> >>>> Thanks for the review! >>>> >>>> I have fixed the things you commented on. Rather than making a new webrev for >>>> the entire change I made one to put on top of the previous change. This way you >>>> can see exactly what I have changed this time without having to look through all >>>> of it again. >>> >>> Much easier that way, thanks. >>> >>>> The new patch: >>>> >>>> http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.4/ >>>> >>>> Comments inline. >>> >>> Looks good, except something seems to be missing from the webrev. See >>> comments below. >>> >>>> John Coomes skrev 30/10/13 6:28 PM: >>>>> Jesper Wilhelmsson (jesper.wilhelmsson at oracle.com) wrote: >>>>>> Hi Thomas, >>>>>> >>>>>> Thanks for looking at this! >>>>>> >>>>>> Comments inline. >>>>>> >>>>>> ... >>>>>> A new webrev is available now with changes based on your comments and comments >>>>>> from John Coomes. Right now it applies cleanly to hotspot-gc. The bugfix builds >>>>>> on top of the cleanup, so apply the cleanup first. The cleanup is unchanged and >>>>>> has gotten sufficient reviews by now. >>>>>> >>>>>> Cleanup: http://cr.openjdk.java.net/~jwilhelm/8016309/Cleanup/webrev.3/ >>>>>> >>>>>> Bugfix: http://cr.openjdk.java.net/~jwilhelm/8016309/Bugfix/webrev.3/ >>>>> >>>>> Hi Jesper, >>>>> >>>>> Generally looks good; some comments below. >>>>> >>>>> collectorPolicy.hpp: >>>>> >>>>> default_gen_alignment() is 64K heapwords, which was the value >>>>> from the old ParallelScavengeHeap::intra_heap_alignment(). The >>>>> latter applied only to ParallelScavengeHeap, but the former now >>>>> applies to CMS and SerialGC and G1, so the alignment for those >>>>> GCs has been increased unnecessarily. There should instead be a >>>>> specialized default_gen_alignment() for ParallelScavenge (in >>>>> GenerationSizer) with the larger value. >>>> >>>> G1 has its own initialize_alignments so it should be good. For the others, the >>>> changes in the patch will allow CMS and Serial to keep using the smaller alignment. >>> >>> I see the new default_gen_alignment() in GenerationSizer, which is >>> fine. But the webrev doesn't show what happened to the old >>> implementation in collectorPolicy.hpp - it's not there anymore, but >>> there's no diff showing that it was removed. >>> >>>>> The assert_*_info() methods should be wrapped in DEBUG_ONLY() to >>>>> ensure there's no code in the product vm. >>>> >>>> How much do we trust the compilers to remove unused code? In the patch I have >>>> wrapped the whole methods in DEBUG_ONLY(), but if we think that the compilers >>>> will remove dead code it would be enough to wrap the calls. >>>> Wrapping the whole methods will however allow the compiler to make sure they are >>>> not called in a product build. >>> >>> Wrapping the calls only would be fine, except you have to make sure >>> that you find all of them, and you don't get help from the compiler to >>> do it :-(. >>> >>> Also, the usual convention has been to use DEBUG_ONLY() for single >>> lines of code, and >>> >>> #ifdef ASSERT >>> ... >>> #endif // ASSERT >>> >>> for larger blocks (like whole methods, or groups of methods). What >>> you have is ok, but it does make it hard for some editors to do proper >>> indentation. >>> >>> -John >>> >>>>> >>>>> collectorPolicy.cpp: >>>>> >>>>> - GenCollectorPolicy::initialize_flags() >>>>> >>>>> If NewSize > MaxNewSize, the old code would increase MaxNewSize; >>>>> the new code will exit w/an error. That behavior shouldn't be >>>>> changed as part of this bug fix, and not this late in jdk8. >>>> >>>> Sure, I'll change that back. I do think we should try to be less forgiving when >>>> the user sets conflicting flags though. (This exit only happens if the user has >>>> set both NewSize and MaxNewSize.) >>>> >>>>> There should be an assert that >>>>> _heap_alignment % _gen_alignment == 0 >>>>> either here or in assert_size_info(). >>>> >>>> Agreed. Fixed. >>>> >>>>> >>>>> Syntax nits: >>>>> >>>>> There are several local vars with camel-case names that should >>>>> be lower-case with underscores (e.g., smallestNewSize should be >>>>> smallest_new_size) >>>> >>>> OK. Fixed. >>>> >>>>> The method is big now and should be split (ok to do later, if >>>>> necessary). >>>> >>>> There are a few more cleanups of these classes planned so I'll put that on my >>>> todo list. >>>> >>>>> >>>>> generationSizer.hpp: >>>>> >>>>> You've made initialize_size_info, initialize_flags() and >>>>> initialize_size_info() private. They're protected in >>>>> superclasses. >>>> >>>> Oops. Fixed. >>>> >>>>> I think a generationSizer.cpp is needed, instead of making these >>>>> methods inline (they're not relevant to performance). >>>> >>>> OK. Done. >>>> >>>>> I don't like that after the page size is selected in >>>>> GenerationSizer::initialize_size_info(), the entire sizing >>>>> calculation is redone. It's partially an artifact of the >>>>> structure of the old code, so I'm ok with it for now as long as >>>>> it's revisited later (but please file an issue). >>>> >>>> I agree and I have an idea on how to do it better. I have created an RFE to fix >>>> this: https://bugs.openjdk.java.net/browse/JDK-8027649 >>>> >>>> Thanks! >>>> /Jesper >>>> >>>>> >>>>> -John >>>>> From tao.mao at oracle.com Fri Nov 1 17:53:14 2013 From: tao.mao at oracle.com (Tao Mao) Date: Fri, 01 Nov 2013 10:53:14 -0700 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs In-Reply-To: <5273CDB4.5060504@oracle.com> References: <5273CDB4.5060504@oracle.com> Message-ID: <5273EA8A.8040105@oracle.com> Hi Bengt, Thank you for looking at this. Can you explain why, in this particular case, the used heap size got larger after GC? Thanks. Tao On 11/1/13 8:50 AM, Bengt Rutisson wrote: > > Hi all, > > Can I have a couple of reviews for this small change? > > http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ > > https://bugs.openjdk.java.net/browse/JDK-8027440 > > DefNew was not printing the heap change information when a promotion > failure occured. Before this change the logging for a DefNew > collection that got promotion failure looked like this: > > [GC (Allocation Failure) , 0.0543440 secs] > > After my change it looks like: > > [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] > > Thanks, > Bengt From bengt.rutisson at oracle.com Fri Nov 1 21:03:13 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Fri, 01 Nov 2013 22:03:13 +0100 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs In-Reply-To: <5273EA8A.8040105@oracle.com> References: <5273CDB4.5060504@oracle.com> <5273EA8A.8040105@oracle.com> Message-ID: <52741711.9010601@oracle.com> Hi Tao, On 11/1/13 6:53 PM, Tao Mao wrote: > Hi Bengt, > > Thank you for looking at this. > > Can you explain why, in this particular case, the used heap size got > larger after GC? It is because of the way the used value is calculated. The used value for the DefNew generation is implemented as: size_t DefNewGeneration::used() const { return eden()->used() + from()->used(); // to() is only used during scavenge } Where, for both eden and from, used() is implemented as: size_t used() const { return byte_size(bottom(), top()); Since we got a promotion failure the top value is not reset. There are still objects in the eden and from spaces. This means that the used value after the GC is whatever we managed to promote plus the full young gen (except the to space). This is more than the used before the GC, since that was just what was already in the old gen plus the full young gen. This is the same behavior as with the other collectors. Thanks, Bengt > > Thanks. > Tao > > On 11/1/13 8:50 AM, Bengt Rutisson wrote: >> >> Hi all, >> >> Can I have a couple of reviews for this small change? >> >> http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ >> >> https://bugs.openjdk.java.net/browse/JDK-8027440 >> >> DefNew was not printing the heap change information when a promotion >> failure occured. Before this change the logging for a DefNew >> collection that got promotion failure looked like this: >> >> [GC (Allocation Failure) , 0.0543440 secs] >> >> After my change it looks like: >> >> [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] >> >> Thanks, >> Bengt From jesper.wilhelmsson at oracle.com Fri Nov 1 23:27:17 2013 From: jesper.wilhelmsson at oracle.com (jesper.wilhelmsson at oracle.com) Date: Fri, 01 Nov 2013 23:27:17 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 2 new changesets Message-ID: <20131101232725.642A862910@hg.openjdk.java.net> Changeset: 4288e54fd145 Author: jwilhelm Date: 2013-10-21 18:51 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/4288e54fd145 8026851: Remove unnecessary code in GenRemSet Summary: Removed the GenRemSet::rem_set_name() since we only have one remset. Reviewed-by: stefank, mgerdin, tschatzl ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp Changeset: 3aee6bc29547 Author: jwilhelm Date: 2013-10-21 18:52 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/3aee6bc29547 8026852: Use restricted_align_down in collector policy code Summary: Moved restricted_align_down to globalDefinitions and renamed it align_size_down_bounded Reviewed-by: stefank, mgerdin, tschatzl ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/utilities/globalDefinitions.hpp From jon.masamitsu at oracle.com Sat Nov 2 00:02:17 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 01 Nov 2013 17:02:17 -0700 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly Message-ID: <52744109.5030302@oracle.com> 8024483 - assertion failure: (!mirror_alive || loader_alive) failed The default value of _should_unload_classes in CMSCollector is false. The default value of CMSClassUnloadingEnabled is true (changed in jdk8) and is used to set the root scanning options. This inconsistency leads to dead class loaders without unloading classes. The fix for 8024954 fixes (or works around) this inconsistency by resetting the root scanning options based on _should_unload_classes. Additionally there is a missing call to update_should_unload_classes() in the CMS foreground collector. Adding the call allows the test for CMSClassUnloadingEnabled to pass but may not be a complete fix. http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly For 8024954 the classes used as roots was being set at initialization based on the value of CMSClassUnloadingEnabled. For a value of CMSClassUnloadingMaxInterval greater than 1, the roots need to be set dynamically (done in CMSCollector::setup_cms_unloading_and_verification_state with this fix). http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From john.coomes at oracle.com Sat Nov 2 01:11:00 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 01:11:00 +0000 Subject: hg: hsx/hotspot-gc/corba: 24 new changesets Message-ID: <20131102011115.9202462917@hg.openjdk.java.net> Changeset: 66fc1a749867 Author: ihse Date: 2013-10-10 14:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/66fc1a749867 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! makefiles/BuildCorba.gmk ! makefiles/Makefile Changeset: 43cec76d1d62 Author: katleman Date: 2013-10-16 11:55 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/43cec76d1d62 Merge Changeset: 54aa9b7d743d Author: cl Date: 2013-10-17 09:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/54aa9b7d743d Added tag jdk8-b112 for changeset 43cec76d1d62 ! .hgtags Changeset: 81d694b1ab2f Author: msheppar Date: 2013-06-14 16:31 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/81d694b1ab2f 8011157: Improve CORBA portablility Summary: fix also reviewed by Alexander Fomin Reviewed-by: alanb, coffeys, skoivu ! src/share/classes/com/sun/corba/se/impl/transport/SelectorImpl.java ! src/share/classes/sun/rmi/rmic/iiop/StubGenerator.java Changeset: ab6eae733bce Author: chegar Date: 2013-07-15 11:04 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/ab6eae733bce Merge Changeset: e5ea72df9806 Author: chegar Date: 2013-07-22 13:59 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/e5ea72df9806 Merge Changeset: be4fdc568d73 Author: mchung Date: 2013-07-22 19:38 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/be4fdc568d73 8017196: Ensure Proxies are handled appropriately Reviewed-by: dfuchs, jrose, jdn, ahgross, chegar ! src/share/classes/com/sun/corba/se/impl/presentation/rmi/InvocationHandlerFactoryImpl.java ! src/share/classes/com/sun/corba/se/spi/orbutil/proxy/CompositeInvocationHandlerImpl.java Changeset: b0aeb77f0292 Author: chegar Date: 2013-07-25 17:32 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/b0aeb77f0292 Merge Changeset: a72f506e3058 Author: chegar Date: 2013-08-02 09:38 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/a72f506e3058 Merge Changeset: 0717fc6f2960 Author: chegar Date: 2013-08-09 14:24 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/0717fc6f2960 Merge Changeset: 6b5db99e194c Author: chegar Date: 2013-08-15 21:33 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/6b5db99e194c Merge - src/share/classes/com/sun/corba/se/impl/copyobject/JavaInputStream.sjava - src/share/classes/com/sun/corba/se/impl/copyobject/JavaOutputStream.sjava - src/share/classes/com/sun/corba/se/impl/interceptors/ThreadCurrentStack.sjava - src/share/classes/com/sun/corba/se/impl/orbutil/DefineWrapper.sjava - src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLNameTranslatorImpl_save.sjava - src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLTypesUtil_save.sjava - src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalClientRequestImpl.sjava - src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalClientResponseImpl.sjava - src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalServerRequestImpl.sjava - src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalServerResponseImpl.sjava - src/share/classes/com/sun/corba/se/impl/transport/BufferConnectionImpl.sjava Changeset: 9c75c61d97f8 Author: msheppar Date: 2013-08-19 15:22 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/9c75c61d97f8 8022940: Enhance CORBA translations Reviewed-by: coffeys, alanb, skoivu ! src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLNameTranslatorImpl.java Changeset: 2caa37dfd7cd Author: chegar Date: 2013-08-23 22:11 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/2caa37dfd7cd Merge Changeset: a5788ab042dc Author: chegar Date: 2013-08-30 09:48 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/a5788ab042dc Merge Changeset: 118a211bb3ba Author: chegar Date: 2013-09-06 09:48 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/118a211bb3ba Merge Changeset: cc52d582df09 Author: chegar Date: 2013-09-14 19:40 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/cc52d582df09 Merge Changeset: 396854c032bb Author: chegar Date: 2013-10-03 19:11 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/396854c032bb Merge Changeset: 47513cdce4ed Author: chegar Date: 2013-10-13 22:00 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/47513cdce4ed Merge Changeset: 438c54c148a6 Author: erikj Date: 2013-10-16 13:49 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/438c54c148a6 6604021: RMIC is defaulting to BOOT jdk version, needs to be rmic.jar Reviewed-by: dholmes, chegar ! makefiles/BuildCorba.gmk Changeset: 1a71d800b032 Author: wetmore Date: 2013-10-16 23:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/1a71d800b032 8026762: jdk8-tl builds windows builds failing in corba - javac: no source files Reviewed-by: katleman, dholmes ! makefiles/BuildCorba.gmk Changeset: 1c01208087b5 Author: lana Date: 2013-10-17 14:17 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/1c01208087b5 Merge ! makefiles/BuildCorba.gmk Changeset: a259ff3e42d9 Author: tbell Date: 2013-10-22 16:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/a259ff3e42d9 8027039: [jprt] Remove 32-bit Solaris from jprt.properties files Reviewed-by: mduigou, mchung ! make/jprt.properties Changeset: 0bbccf77c23e Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/0bbccf77c23e Added tag jdk8-b113 for changeset a259ff3e42d9 ! .hgtags Changeset: d425685e0b74 Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/d425685e0b74 Added tag jdk8-b114 for changeset 0bbccf77c23e ! .hgtags From john.coomes at oracle.com Sat Nov 2 01:10:49 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 01:10:49 +0000 Subject: hg: hsx/hotspot-gc: 61 new changesets Message-ID: <20131102011054.3807B62916@hg.openjdk.java.net> Changeset: 187a759c08ba Author: alanb Date: 2013-10-02 04:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/187a759c08ba 8006843: org.w3c.dom.events.UIEvent.getView is specified to return type that is not in the Java SE specification Reviewed-by: mduigou, tbell ! common/makefiles/javadoc/CORE_PKGS.gmk Changeset: 6b8f5030e5ad Author: bpatel Date: 2013-10-04 15:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/6b8f5030e5ad 8025741: Fix jdk/make/docs/Makefile to point to correct docs URL for JDK 8. Reviewed-by: tbell ! common/makefiles/javadoc/Javadoc.gmk Changeset: 7c0e2fd8be4d Author: lana Date: 2013-10-08 14:54 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/7c0e2fd8be4d Merge Changeset: 3ece65f23ed2 Author: lana Date: 2013-10-11 00:06 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/3ece65f23ed2 Merge Changeset: 7dea0ce25bdc Author: pbhat Date: 2013-05-30 16:00 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/7dea0ce25bdc Merge ! common/autoconf/generated-configure.sh Changeset: d081bdbf904d Author: jqzuo Date: 2013-06-10 16:15 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/d081bdbf904d Merge ! common/autoconf/generated-configure.sh Changeset: b59990653fb9 Author: pbhat Date: 2013-06-21 18:56 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/b59990653fb9 Merge ! common/autoconf/generated-configure.sh Changeset: dd345e4b51fb Author: pbhat Date: 2013-07-05 11:00 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/dd345e4b51fb Merge ! common/autoconf/generated-configure.sh Changeset: 24cc2d9b0af5 Author: pbhat Date: 2013-07-18 16:49 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/24cc2d9b0af5 Merge ! common/autoconf/generated-configure.sh Changeset: 4a4c9e7bc6c9 Author: pbhat Date: 2013-07-25 17:26 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/4a4c9e7bc6c9 Merge Changeset: 63d794ade242 Author: pbhat Date: 2013-08-02 09:41 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/63d794ade242 Merge Changeset: a5485b9a2d14 Author: pbhat Date: 2013-08-09 14:54 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/a5485b9a2d14 Merge Changeset: 028ac95111b9 Author: pbhat Date: 2013-08-16 14:33 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/028ac95111b9 Merge Changeset: 4b686cbc32c7 Author: pbhat Date: 2013-08-23 09:45 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/4b686cbc32c7 Merge ! common/autoconf/generated-configure.sh Changeset: ec583e324aaf Author: pbhat Date: 2013-08-30 10:14 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ec583e324aaf Merge ! common/autoconf/generated-configure.sh Changeset: 96f00091b570 Author: pbhat Date: 2013-09-05 11:23 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/96f00091b570 Merge ! common/autoconf/generated-configure.sh Changeset: 69096d4b1da2 Author: pbhat Date: 2013-09-12 12:08 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/69096d4b1da2 Merge ! common/autoconf/generated-configure.sh Changeset: 5a306baf3bb7 Author: pbhat Date: 2013-09-19 14:01 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/5a306baf3bb7 Merge ! common/autoconf/generated-configure.sh Changeset: 88ca3ff9ce2d Author: billyh Date: 2013-09-25 10:50 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/88ca3ff9ce2d 8025262: new64jre/new64jdk wrappers should be removed, build 32-bit AU during windows-amd64 builds instead Reviewed-by: amenkov, jqzuo ! make/install-rules.gmk Changeset: c8066e5d7a7b Author: pbhat Date: 2013-09-26 11:20 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/c8066e5d7a7b Merge Changeset: 00ae95ca1755 Author: pbhat Date: 2013-10-03 09:52 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/00ae95ca1755 Merge Changeset: 7deff16cf438 Author: jqzuo Date: 2013-10-14 18:53 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/7deff16cf438 Merge ! common/autoconf/generated-configure.sh Changeset: ec48d637778a Author: tbell Date: 2013-10-09 18:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ec48d637778a 8023611: Win32 and win64: Remove all the WARNINGS in JDK 8 builds for Windows 2008 and MSVS 2010 SP1 Reviewed-by: erikj ! common/autoconf/generated-configure.sh ! common/autoconf/toolchain.m4 Changeset: 174a54ce39c4 Author: ihse Date: 2013-10-10 14:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/174a54ce39c4 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! NewMakefile.gmk ! common/autoconf/autogen.sh ! common/autoconf/basics.m4 ! common/autoconf/basics_windows.m4 ! common/autoconf/boot-jdk.m4 ! common/autoconf/bootcycle-spec.gmk.in ! common/autoconf/build-aux/config.guess ! common/autoconf/build-performance.m4 ! common/autoconf/builddeps.conf.example ! common/autoconf/builddeps.conf.nfs.example ! common/autoconf/builddeps.m4 ! common/autoconf/compare.sh.in ! common/autoconf/config.h.in ! common/autoconf/configure ! common/autoconf/configure.ac ! common/autoconf/generated-configure.sh ! common/autoconf/help.m4 ! common/autoconf/hotspot-spec.gmk.in ! common/autoconf/jdk-options.m4 ! common/autoconf/libraries.m4 ! common/autoconf/platform.m4 ! common/autoconf/source-dirs.m4 ! common/autoconf/spec.gmk.in ! common/autoconf/toolchain.m4 ! common/autoconf/toolchain_windows.m4 ! common/makefiles/HotspotWrapper.gmk ! common/makefiles/IdlCompilation.gmk ! common/makefiles/JavaCompilation.gmk ! common/makefiles/Jprt.gmk ! common/makefiles/Main.gmk ! common/makefiles/MakeBase.gmk ! common/makefiles/MakeHelpers.gmk ! common/makefiles/NativeCompilation.gmk ! common/makefiles/RMICompilation.gmk ! common/makefiles/devkit/Makefile ! common/makefiles/devkit/Tools.gmk ! common/makefiles/javadoc/CORE_PKGS.gmk ! common/makefiles/javadoc/Javadoc.gmk ! common/makefiles/javadoc/NON_CORE_PKGS.gmk ! common/makefiles/javadoc/Notes.html Changeset: 6274d4cd22d3 Author: erikj Date: 2013-10-14 11:54 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/6274d4cd22d3 8025921: Make LOG=debug output more readable Reviewed-by: tbell, ihse ! common/makefiles/JavaCompilation.gmk ! common/makefiles/MakeBase.gmk Changeset: 547316ea137d Author: katleman Date: 2013-10-16 11:55 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/547316ea137d Merge ! common/autoconf/generated-configure.sh ! common/makefiles/javadoc/CORE_PKGS.gmk ! common/makefiles/javadoc/Javadoc.gmk Changeset: ac748011cbbf Author: cl Date: 2013-10-17 09:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ac748011cbbf Added tag jdk8-b112 for changeset 547316ea137d ! .hgtags Changeset: 4d23143c676a Author: lana Date: 2013-10-10 08:49 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/4d23143c676a Merge Changeset: fd3b32cc4b6e Author: lana Date: 2013-10-10 21:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/fd3b32cc4b6e Merge Changeset: 3f9873789d44 Author: mduigou Date: 2013-10-11 15:20 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/3f9873789d44 8025796: hgforest.sh could trigger unbuffered output from hg without complicated machinations Reviewed-by: mduigou Contributed-by: Dmitry Samersoff ! common/bin/hgforest.sh Changeset: d35943431696 Author: lana Date: 2013-10-11 21:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/d35943431696 Merge Changeset: af87dabb4263 Author: msheppar Date: 2013-06-14 15:49 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/af87dabb4263 8011157: Improve CORBA portablility Summary: fix also reviewed by Alexander Fomin Reviewed-by: alanb, coffeys, skoivu ! common/makefiles/RMICompilation.gmk Changeset: ce8c63017f11 Author: chegar Date: 2013-10-13 21:37 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ce8c63017f11 Merge Changeset: 28be3d174c92 Author: chegar Date: 2013-10-15 13:39 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/28be3d174c92 Merge Changeset: af81988013b5 Author: erikj Date: 2013-10-16 13:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/af81988013b5 6604021: RMIC is defaulting to BOOT jdk version, needs to be rmic.jar Reviewed-by: dholmes, chegar ! common/makefiles/JavaCompilation.gmk ! common/makefiles/RMICompilation.gmk Changeset: 9ec6626d43bb Author: mduigou Date: 2013-10-17 14:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/9ec6626d43bb 8026062: webrev.ksh: fix bug title web scraping, remove teamware, sac, "open bug", -l and wxfile support Reviewed-by: weijun, dsamersoff, darcy, jrose, tbell ! make/scripts/webrev.ksh Changeset: 77473affb9c0 Author: lana Date: 2013-10-17 13:53 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/77473affb9c0 Merge ! common/makefiles/JavaCompilation.gmk ! common/makefiles/RMICompilation.gmk Changeset: 35c14ec3e12f Author: lana Date: 2013-10-17 15:50 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/35c14ec3e12f Merge Changeset: 22c6f0b7e2b5 Author: dcubed Date: 2013-10-15 08:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/22c6f0b7e2b5 7165611: implement Full Debug Symbols on MacOS X hotspot Summary: Add MacOS X FDS support to hotspot; add minimal MacOS X FDS import support to jdk; add MacOS X FDS support to install; add MacOS X FDS support to root. Reviewed-by: erikj, sla, dholmes, rdurbin, tbell, ihse ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/hotspot-spec.gmk.in ! common/autoconf/jdk-options.m4 ! common/autoconf/spec.gmk.in ! common/makefiles/NativeCompilation.gmk Changeset: ac09e62d5e6b Author: amurillo Date: 2013-10-19 08:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ac09e62d5e6b Merge ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/hotspot-spec.gmk.in ! common/autoconf/jdk-options.m4 ! common/autoconf/spec.gmk.in ! common/makefiles/NativeCompilation.gmk Changeset: 9d5284dfc00d Author: amurillo Date: 2013-10-22 13:56 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/9d5284dfc00d Merge Changeset: 5b4f14990dd1 Author: ihse Date: 2013-10-18 10:41 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/5b4f14990dd1 8001912: Improve detection of msvcr100.dll Reviewed-by: erikj ! common/autoconf/generated-configure.sh ! common/autoconf/toolchain.m4 ! common/autoconf/toolchain_windows.m4 Changeset: 65c1752b4c38 Author: katleman Date: 2013-10-18 15:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/65c1752b4c38 Merge Changeset: 17d195bd56fc Author: erikj Date: 2013-10-18 11:34 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/17d195bd56fc 8025869: make docs doesn't regenerate docs correctly after changing API doc comments in jaxp sources Reviewed-by: ihse, tbell ! common/makefiles/JavaCompilation.gmk Changeset: e27dda53d4f5 Author: erikj Date: 2013-10-21 10:40 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/e27dda53d4f5 Merge Changeset: 1a853fac18ff Author: erikj Date: 2013-10-21 11:59 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/1a853fac18ff 8026528: [build] configure does not recognize newer make in cygwin Reviewed-by: tbell, ksrini, ihse ! NewMakefile.gmk ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh Changeset: dffe654ab24c Author: ihse Date: 2013-10-22 11:12 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/dffe654ab24c 8001925: Add useful help messages if freetype is not found on Windows Reviewed-by: erikj, tbell ! common/autoconf/generated-configure.sh ! common/autoconf/help.m4 Changeset: 56db38956113 Author: ihse Date: 2013-10-22 12:29 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/56db38956113 8026864: Deprecate --disable-macosx-runtime-support. Reviewed-by: erikj ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: 9e177e7fc438 Author: katleman Date: 2013-10-22 14:53 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/9e177e7fc438 Merge ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh ! common/makefiles/JavaCompilation.gmk Changeset: 4293401d683b Author: katleman Date: 2013-10-22 16:35 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/4293401d683b 8027068: Update to NewMakefile.gmk check of MAKE_VERSION broke jdk8-build nightly builds on windows, saying 3.82.90 is too low Reviewed-by: ihse, tbell, wetmore ! NewMakefile.gmk Changeset: 269497597620 Author: tbell Date: 2013-10-22 16:28 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/269497597620 8027039: [jprt] Remove 32-bit Solaris from jprt.properties files Reviewed-by: mduigou, mchung ! make/jprt.properties Changeset: 2cc1a52d37ef Author: tbell Date: 2013-10-22 16:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/2cc1a52d37ef Merge Changeset: 6f19b2440412 Author: ihse Date: 2013-10-23 13:05 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/6f19b2440412 8001922: Improve freetype handling. Reviewed-by: erikj ! common/autoconf/configure.ac ! common/autoconf/generated-configure.sh ! common/autoconf/help.m4 ! common/autoconf/libraries.m4 ! common/autoconf/spec.gmk.in Changeset: 6ba4c7cb623e Author: erikj Date: 2013-10-23 17:03 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/6ba4c7cb623e 8026888: Licensee build failure due to wrong libs being called Reviewed-by: tbell, ihse, simonis ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: a36df87b3901 Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/a36df87b3901 Added tag jdk8-b113 for changeset 6ba4c7cb623e ! .hgtags Changeset: b098ee22aa97 Author: erikj Date: 2013-10-24 10:43 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/b098ee22aa97 8009280: JCE jurisdiction policy files not copied into jdk/lib/security Reviewed-by: tbell, ihse ! common/makefiles/JavaCompilation.gmk Changeset: 3c48e11c3901 Author: dholmes Date: 2013-10-24 20:45 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/3c48e11c3901 8016096: [macosx] jawt_md.h shipped with jdk is outdated Summary: Revised build system and added platform specific headers for Mac OS X Reviewed-by: ihse, erikj Contributed-by: david.dehaven at oracle.com ! common/autoconf/generated-configure.sh ! common/autoconf/platform.m4 ! common/autoconf/spec.gmk.in ! common/autoconf/toolchain.m4 Changeset: 72ef61df77e5 Author: ihse Date: 2013-10-25 13:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/72ef61df77e5 8027300: configure should use LIBS instead of LDFLAGS when testing freetype Reviewed-by: erikj ! common/autoconf/generated-configure.sh ! common/autoconf/libraries.m4 Changeset: dfbc93f26f38 Author: dcubed Date: 2013-10-25 10:15 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/dfbc93f26f38 8027117: adapt JDK-7165611 to new build-infra whitespace/indent policy Summary: Fix whitespace/indent issues. Reviewed-by: hseigel, coleenp, erikj, ihse ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/jdk-options.m4 ! common/makefiles/NativeCompilation.gmk Changeset: 4f2011496393 Author: katleman Date: 2013-10-28 16:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/4f2011496393 Merge Changeset: b65d48f6938a Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/b65d48f6938a Added tag jdk8-b114 for changeset 4f2011496393 ! .hgtags From john.coomes at oracle.com Sat Nov 2 01:11:27 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 01:11:27 +0000 Subject: hg: hsx/hotspot-gc/jaxp: 38 new changesets Message-ID: <20131102011250.BDE0062918@hg.openjdk.java.net> Changeset: 84a2b2ee6fc6 Author: aefimov Date: 2013-10-01 17:14 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/84a2b2ee6fc6 8024707: TransformerException : item() return null with node list of length != 1 Reviewed-by: joehw, lancea ! src/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java Changeset: f031b2fe21cd Author: dfuchs Date: 2013-10-04 19:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/f031b2fe21cd 8025745: Clarify API documentation of JAXP factories. Summary: Clarifies usage of ServiceLoader in JAXP factories. Reviewed-by: alanb, joehw, psandoz ! src/javax/xml/datatype/DatatypeFactory.java ! src/javax/xml/parsers/DocumentBuilderFactory.java ! src/javax/xml/parsers/SAXParserFactory.java ! src/javax/xml/stream/XMLEventFactory.java ! src/javax/xml/stream/XMLInputFactory.java ! src/javax/xml/stream/XMLOutputFactory.java ! src/javax/xml/transform/TransformerFactory.java ! src/javax/xml/validation/SchemaFactory.java ! src/javax/xml/xpath/XPathFactory.java Changeset: dbecbb685503 Author: mfang Date: 2013-10-08 09:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/dbecbb685503 8025215: jdk8 l10n resource file translation update 4 Reviewed-by: joehw, yhuang ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java ! src/com/sun/org/apache/xerces/internal/impl/msg/JAXPValidationMessages_it.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java ! src/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java + src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_pt_BR.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java ! src/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java ! src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java ! src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java ! src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java ! src/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java Changeset: 1c074a0c2b97 Author: mfang Date: 2013-10-08 09:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/1c074a0c2b97 Merge Changeset: d69f4ac43d64 Author: lana Date: 2013-10-08 14:55 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/d69f4ac43d64 Merge Changeset: cdc3577cba0b Author: lana Date: 2013-10-11 00:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/cdc3577cba0b Merge Changeset: acae2e8a46df Author: ihse Date: 2013-10-10 14:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/acae2e8a46df 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! makefiles/BuildJaxp.gmk ! makefiles/Makefile Changeset: c1f9158fbb9c Author: katleman Date: 2013-10-16 11:56 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/c1f9158fbb9c Merge Changeset: e85dd07c0eea Author: cl Date: 2013-10-17 09:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/e85dd07c0eea Added tag jdk8-b112 for changeset c1f9158fbb9c ! .hgtags Changeset: b76629725522 Author: joehw Date: 2013-10-10 17:01 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/b76629725522 8003262: reverse translation required changes in xalan resource bundles Reviewed-by: lancea, dfuchs ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java ! src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java Changeset: 2107c9baa457 Author: lana Date: 2013-10-10 10:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/2107c9baa457 Merge Changeset: cff4e3bf530a Author: lana Date: 2013-10-10 20:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/cff4e3bf530a Merge Changeset: 46ccc5fbc523 Author: lana Date: 2013-10-10 21:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/46ccc5fbc523 Merge Changeset: de8c803d4958 Author: aefimov Date: 2013-10-13 13:50 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/de8c803d4958 8008733: Psr:perf:osb performance regression (18%) in wss_bodyenc Reviewed-by: alanb, shade ! src/com/sun/org/apache/xpath/internal/XPathContext.java Changeset: 4712979714d1 Author: lana Date: 2013-10-11 21:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/4712979714d1 Merge Changeset: 91ae0f2045bc Author: lana Date: 2013-10-14 09:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/91ae0f2045bc Merge Changeset: eb169222d3f2 Author: joehw Date: 2013-10-14 22:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/eb169222d3f2 8015092: SchemaFactory cannot parse schema if whitespace added within patterns in Selector XPath expression Reviewed-by: lancea, alanb ! src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java Changeset: ecb66dc473c1 Author: joehw Date: 2013-07-16 14:06 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/ecb66dc473c1 8012425: Transform TransformerFactory Reviewed-by: alanb, dfuchs, mullan ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java ! src/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java ! src/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java Changeset: 7a2014318343 Author: joehw Date: 2013-07-17 09:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/7a2014318343 8017298: Better XML support Reviewed-by: alanb, dfuchs, mullan, lancea ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java ! src/com/sun/org/apache/xerces/internal/impl/XMLScanner.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties ! src/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java ! src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java ! src/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java ! src/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java - src/com/sun/org/apache/xerces/internal/util/SecurityManager.java ! src/com/sun/org/apache/xerces/internal/util/SymbolTable.java + src/com/sun/org/apache/xerces/internal/utils/XMLSecurityManager.java ! src/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java ! src/com/sun/xml/internal/stream/Entity.java Changeset: a59549c3ad60 Author: dfuchs Date: 2013-07-17 18:46 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/a59549c3ad60 8013502: Improve stream factories Reviewed-by: joehw, mullan, lancea ! src/javax/xml/stream/FactoryFinder.java Changeset: 4b0b2b5c4cc8 Author: chegar Date: 2013-07-22 14:02 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/4b0b2b5c4cc8 Merge Changeset: 40b8abe19642 Author: chegar Date: 2013-07-29 14:07 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/40b8abe19642 Merge ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java ! src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHandlerImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java ! src/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java ! src/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java Changeset: 720db2e27962 Author: joehw Date: 2013-07-31 00:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/720db2e27962 8014530: Better digital signature processing Reviewed-by: alanb, dfuchs, mullan, lancea ! src/com/sun/org/apache/xalan/internal/XalanConstants.java + src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java ! src/com/sun/org/apache/xalan/internal/utils/XMLSecurityPropertyManager.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Import.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Include.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Parser.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/Util.java ! src/com/sun/org/apache/xerces/internal/dom/DOMConfigurationImpl.java ! src/com/sun/org/apache/xerces/internal/impl/Constants.java ! src/com/sun/org/apache/xerces/internal/impl/PropertyManager.java ! src/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java ! src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLScanner.java ! src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties ! src/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java ! src/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java ! src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StAXValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaValidatorComponentManager.java ! src/com/sun/org/apache/xerces/internal/parsers/SAXParser.java ! src/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java + src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java ! src/com/sun/org/apache/xerces/internal/utils/XMLSecurityManager.java ! src/com/sun/org/apache/xerces/internal/utils/XMLSecurityPropertyManager.java ! src/com/sun/org/apache/xml/internal/utils/XMLReaderManager.java Changeset: cd9347628c7c Author: joehw Date: 2013-07-31 10:54 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/cd9347628c7c 8021366: java_util/Properties/PropertiesWithOtherEncodings fails during 7u45 nightly testing Reviewed-by: lancea, alanb, dfuchs, mullan ! src/com/sun/xml/internal/stream/Entity.java Changeset: ecbddaa85462 Author: chegar Date: 2013-08-02 11:10 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/ecbddaa85462 Merge Changeset: c5e80c1fa32f Author: chegar Date: 2013-08-09 14:31 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/c5e80c1fa32f Merge ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java Changeset: f952c33ebfdb Author: chegar Date: 2013-08-15 21:33 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/f952c33ebfdb Merge Changeset: ce16a5aa1507 Author: joehw Date: 2013-08-20 09:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/ce16a5aa1507 8022682: Supporting XOM Reviewed-by: alanb, chegar, lancea ! src/com/sun/org/apache/xerces/internal/impl/PropertyManager.java ! src/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java ! src/com/sun/org/apache/xerces/internal/parsers/DOMParser.java ! src/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/SAXParser.java ! src/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java ! src/com/sun/org/apache/xerces/internal/parsers/XMLParser.java + src/com/sun/org/apache/xerces/internal/util/SecurityManager.java ! src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java ! src/com/sun/org/apache/xerces/internal/utils/XMLSecurityManager.java Changeset: cc3b64366048 Author: chegar Date: 2013-08-23 22:12 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/cc3b64366048 Merge Changeset: 2b77e12ff69d Author: chegar Date: 2013-10-11 19:49 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/2b77e12ff69d Merge ! src/com/sun/org/apache/xerces/internal/parsers/DTDConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/NonValidatingConfiguration.java ! src/com/sun/org/apache/xerces/internal/parsers/SAXParser.java ! src/com/sun/org/apache/xerces/internal/util/SecurityManager.java Changeset: 6f220761f643 Author: chegar Date: 2013-10-15 14:16 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/6f220761f643 Merge Changeset: 0c3f951630fe Author: joehw Date: 2013-10-17 11:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/0c3f951630fe 8015243: SchemaFactory does not catch enum. value that is not in the value space of the base type, anyURI Reviewed-by: lancea ! src/com/sun/org/apache/xerces/internal/util/URI.java Changeset: 951c1f7fdb10 Author: joehw Date: 2013-10-17 16:35 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/951c1f7fdb10 8016500: Unlocalized warnigs. Reviewed-by: lancea ! src/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java ! src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java ! src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java Changeset: 31c82bc71ae3 Author: lana Date: 2013-10-17 15:45 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/31c82bc71ae3 Merge Changeset: 2f1e1e2c2242 Author: lana Date: 2013-10-17 17:48 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/2f1e1e2c2242 Merge Changeset: 0046d2278204 Author: tbell Date: 2013-10-22 16:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/0046d2278204 8027039: [jprt] Remove 32-bit Solaris from jprt.properties files Reviewed-by: mduigou, mchung ! make/jprt.properties Changeset: 1b1e12117fe2 Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/1b1e12117fe2 Added tag jdk8-b113 for changeset 0046d2278204 ! .hgtags Changeset: d3b6da1b3e25 Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/d3b6da1b3e25 Added tag jdk8-b114 for changeset 1b1e12117fe2 ! .hgtags From john.coomes at oracle.com Sat Nov 2 01:13:04 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 01:13:04 +0000 Subject: hg: hsx/hotspot-gc/jaxws: 27 new changesets Message-ID: <20131102011404.432A862919@hg.openjdk.java.net> Changeset: b0610cd08440 Author: mkos Date: 2013-10-04 16:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/b0610cd08440 8025054: Update JAX-WS RI integration to 2.2.9-b130926.1035 Reviewed-by: chegar ! src/share/jaxws_classes/com/oracle/webservices/internal/api/databinding/ExternalMetadataFeature.java ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_de.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_es.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_fr.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_it.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_ja.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_ko.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_pt_BR.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_zh_CN.properties ! src/share/jaxws_classes/com/sun/tools/internal/jxc/MessageBundle_zh_TW.properties ! src/share/jaxws_classes/com/sun/tools/internal/ws/resources/WscompileMessages.java ! src/share/jaxws_classes/com/sun/tools/internal/ws/resources/wscompile.properties ! src/share/jaxws_classes/com/sun/tools/internal/ws/version.properties ! src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/Options.java ! src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsgenTool.java ! src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportOptions.java ! src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java ! src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/DOMForest.java ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_de.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_es.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_fr.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_it.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_ja.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_ko.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_pt_BR.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_zh_CN.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/MessageBundle_zh_TW.properties ! src/share/jaxws_classes/com/sun/tools/internal/xjc/SchemaCache.java ! src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/internalizer/DOMForest.java ! src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/xmlschema/ct/AbstractExtendedComplexTypeBuilder.java ! src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/Messages.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/Messages.properties ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/SingleMapNodeProperty.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/opt/AccessorInjector.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/opt/Injector.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/opt/OptimizedAccessorFactory.java ! src/share/jaxws_classes/com/sun/xml/internal/bind/v2/util/XmlFactory.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/Base64Data.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/Base64Encoder.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/Base64EncoderStream.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/ByteArrayOutputStreamEx.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/NamespaceContextEx.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/StreamingDataHandler.java ! src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/staxex/XMLStreamWriterEx.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/binary/SchemaBuilderImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/digested/DDataPattern.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/digested/DPattern.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/digested/DXMLPrinter.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/digested/DataPatternBuilderImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/digested/GrammarBuilderImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/nc/AnyNameClass.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/nc/NameClassBuilderImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/nc/SimpleNameClass.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/parse/compact/UCode_UCodeESC_CharStream.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/parse/xml/SchemaParser.java ! src/share/jaxws_classes/com/sun/xml/internal/rngom/xml/sax/JAXPXMLReaderCreator.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/addressing/WsaTubeHelper.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLBoundOperation.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLBoundPortType.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLExtensible.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLFault.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLModel.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLOperation.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLOutput.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLPort.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLPortType.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/WSDLService.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLBoundFault.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLBoundOperation.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLBoundPortType.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLFault.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLInput.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLMessage.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLModel.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLOperation.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLOutput.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLPart.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLPort.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLPortType.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/model/wsdl/editable/EditableWSDLService.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/wsdl/parser/WSDLParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/wsdl/parser/WSDLParserExtensionContext.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/binding/WebServiceFeatureList.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/client/MonitorRootClient.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/client/PortInfo.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/client/Stub.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/client/WSServiceDelegate.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/ExternalMetadataReader.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/JavaMethodImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/AbstractExtensibleImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLBoundFaultImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLBoundOperationImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLBoundPortTypeImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLFaultImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLInputImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLMessageImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLModelImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLOperationImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLOutputImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLPartImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLPortImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLPortTypeImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLProperties.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/model/wsdl/WSDLServiceImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/policy/jaxws/PolicyWSDLParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/resources/WsservletMessages.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/resources/wsservlet.properties ! src/share/jaxws_classes/com/sun/xml/internal/ws/server/EndpointFactory.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/server/WSEndpointImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/spi/ProviderImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/transport/http/HttpAdapter.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/transport/http/client/HttpTransportPipe.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/util/pipe/AbstractSchemaValidationTube.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/util/version.properties ! src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/XmlUtil.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/ActionBasedOperationFinder.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/PayloadQNameBasedOperationFinder.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/DelegatingParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/FoolProofParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/MemberSubmissionAddressingWSDLParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/RuntimeWSDLParser.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/W3CAddressingMetadataWSDLParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/W3CAddressingWSDLParserExtension.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/WSDLParserExtensionContextImpl.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/parser/WSDLParserExtensionFacade.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/writer/WSDLGenerator.java ! src/share/jaxws_classes/javax/annotation/PostConstruct.java ! src/share/jaxws_classes/javax/annotation/PreDestroy.java ! src/share/jaxws_classes/javax/xml/bind/JAXBException.java ! src/share/jaxws_classes/javax/xml/bind/Marshaller.java ! src/share/jaxws_classes/javax/xml/bind/TypeConstraintException.java ! src/share/jaxws_classes/javax/xml/bind/annotation/adapters/package.html ! src/share/jaxws_classes/javax/xml/soap/MessageFactory.java Changeset: e56be3a2287a Author: coffeys Date: 2013-10-05 08:56 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/e56be3a2287a 8016271: wsimport -clientjar does not create portable jars on Windows due to hardcoded backslash Reviewed-by: mkos, chegar ! src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java Changeset: 1d6c13d3b8de Author: lana Date: 2013-10-08 14:55 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/1d6c13d3b8de Merge Changeset: 7c0a7937f6ef Author: lana Date: 2013-10-11 00:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/7c0a7937f6ef Merge Changeset: 602fdd7bb765 Author: ihse Date: 2013-10-10 14:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/602fdd7bb765 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! makefiles/BuildJaxws.gmk ! makefiles/Makefile Changeset: dbdd5c762509 Author: katleman Date: 2013-10-16 11:56 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/dbdd5c762509 Merge Changeset: 9ca9735d9966 Author: cl Date: 2013-10-17 09:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/9ca9735d9966 Added tag jdk8-b112 for changeset dbdd5c762509 ! .hgtags Changeset: da77e343f458 Author: lana Date: 2013-10-10 10:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/da77e343f458 Merge Changeset: 66a12ce67d3a Author: lana Date: 2013-10-10 21:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/66a12ce67d3a Merge Changeset: 328b8b96773b Author: lana Date: 2013-10-11 21:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/328b8b96773b Merge Changeset: 43240b8b995b Author: mkos Date: 2013-08-01 16:09 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/43240b8b995b 8017505: Better Client Service Reviewed-by: mullan, ahgross, mgrebac ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/server/AbstractInstanceResolver.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/api/server/InstanceResolver.java + src/share/jaxws_classes/com/sun/xml/internal/ws/api/server/MethodUtil.java + src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/MethodUtil.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/client/sei/SEIStub.java + src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/MethodUtil.java ! src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/PolicyUtils.java Changeset: 358f32260d1f Author: chegar Date: 2013-08-02 11:11 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/358f32260d1f Merge Changeset: 5212665bea32 Author: chegar Date: 2013-08-09 14:31 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/5212665bea32 Merge Changeset: d9704ab517d5 Author: chegar Date: 2013-08-15 21:33 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/d9704ab517d5 Merge Changeset: fca8869ccfd0 Author: chegar Date: 2013-08-23 22:12 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/fca8869ccfd0 Merge Changeset: a6e2adde013e Author: chegar Date: 2013-08-30 10:15 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/a6e2adde013e Merge Changeset: f6376ba97cea Author: chegar Date: 2013-09-06 09:55 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/f6376ba97cea Merge Changeset: d3a65e8912c9 Author: chegar Date: 2013-09-14 20:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/d3a65e8912c9 Merge Changeset: da8141b6e344 Author: chegar Date: 2013-10-03 19:18 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/da8141b6e344 Merge Changeset: 2dc8ae7eb53b Author: chegar Date: 2013-10-11 19:24 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/2dc8ae7eb53b Merge Changeset: 01facfebe17b Author: chegar Date: 2013-10-15 13:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/01facfebe17b Merge Changeset: be7d1f874b96 Author: lana Date: 2013-10-17 16:12 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/be7d1f874b96 Merge Changeset: 17f1b13cd401 Author: simonis Date: 2013-10-21 15:11 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/17f1b13cd401 8026874: During JAXWS build the newly built JAXP classes should be in the bootclasspath (not only in the classpath) Reviewed-by: erikj ! makefiles/BuildJaxws.gmk Changeset: f20820d1582f Author: katleman Date: 2013-10-22 16:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/f20820d1582f Merge Changeset: 9261f342aa73 Author: tbell Date: 2013-10-22 16:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/9261f342aa73 8027039: [jprt] Remove 32-bit Solaris from jprt.properties files Reviewed-by: mduigou, mchung ! make/jprt.properties Changeset: 9ad289610fc6 Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/9ad289610fc6 Added tag jdk8-b113 for changeset 9261f342aa73 ! .hgtags Changeset: e126d8eca69b Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/e126d8eca69b Added tag jdk8-b114 for changeset 9ad289610fc6 ! .hgtags From john.coomes at oracle.com Sat Nov 2 01:25:26 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 01:25:26 +0000 Subject: hg: hsx/hotspot-gc/jdk: 309 new changesets Message-ID: <20131102022916.494486291F@hg.openjdk.java.net> Changeset: 8a041011b6e6 Author: jgodinez Date: 2013-09-27 13:04 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8a041011b6e6 6870661: Setting a custom PrintService on a PrinterJob leads to a PrinterException Reviewed-by: prr, jgodinez Contributed-by: patrick at reini.net ! src/windows/classes/sun/awt/windows/WPrinterJob.java + test/java/awt/print/PrinterJob/CustomPrintService/PrintDialog.java + test/java/awt/print/PrinterJob/CustomPrintService/PrintServiceStub.java + test/java/awt/print/PrinterJob/CustomPrintService/SetPrintServiceTest.java Changeset: 31b8d4931a09 Author: prr Date: 2013-09-27 13:06 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/31b8d4931a09 8020190: Fatal: Bug in native code: jfieldID must match object Reviewed-by: jgodinez, vadim ! src/share/classes/sun/font/FreetypeFontScaler.java ! src/share/native/sun/font/freetypeScaler.c Changeset: 6ef33b4553a4 Author: vadim Date: 2013-09-30 12:50 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6ef33b4553a4 8001119: [fingbugs] Evaluate necessity to make some arrays package protected Reviewed-by: prr, bae + src/share/classes/com/sun/imageio/plugins/bmp/BMPCompressionTypes.java ! src/share/classes/com/sun/imageio/plugins/bmp/BMPConstants.java ! src/share/classes/com/sun/imageio/plugins/bmp/BMPImageWriter.java ! src/share/classes/com/sun/imageio/plugins/bmp/BMPMetadata.java ! src/share/classes/com/sun/imageio/plugins/gif/GIFStreamMetadata.java ! src/share/classes/com/sun/imageio/plugins/jpeg/JPEG.java ! src/share/classes/com/sun/imageio/plugins/png/PNGMetadata.java ! src/share/classes/javax/imageio/plugins/bmp/BMPImageWriteParam.java Changeset: e2604b873b36 Author: prr Date: 2013-10-01 15:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e2604b873b36 8007386: On physical machine (video card is Intel Q45) the text is blank. Reviewed-by: prr, jchen ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ! src/solaris/native/sun/java2d/x11/XRBackendNative.c Changeset: 96ff585555f4 Author: vadim Date: 2013-10-02 10:06 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/96ff585555f4 8024343: Change different color with the "The XOR alternation color" combobox, the color of the image can not shown immediately. Reviewed-by: ceisserer, prr, bae ! src/solaris/classes/sun/java2d/xr/XRSurfaceData.java + test/sun/java2d/AcceleratedXORModeTest.java Changeset: 5f3d984d8207 Author: prr Date: 2013-10-02 11:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5f3d984d8207 8025837: Extraneous changes in the fix for 8007386 Reviewed-by: jgodinez, jchen ! src/solaris/native/sun/java2d/x11/XRBackendNative.c Changeset: f53aeb3c7eed Author: prr Date: 2013-10-02 11:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f53aeb3c7eed 7179526: xrender : closed/sun/java2d/volatileImage/LineClipTest.java failed since jdk8b36 Reviewed-by: prr, jchen ! src/solaris/classes/sun/java2d/xr/GrowableRectArray.java ! src/solaris/classes/sun/java2d/xr/MaskTile.java ! src/solaris/classes/sun/java2d/xr/MaskTileManager.java + src/solaris/classes/sun/java2d/xr/XRDrawLine.java ! src/solaris/classes/sun/java2d/xr/XRRenderer.java + test/java/awt/Graphics/LineClipTest.java Changeset: a15cad0e12d3 Author: bae Date: 2013-10-03 11:28 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a15cad0e12d3 8022632: Reading a PNG file fails because of WBMPImageReaderSpi.canDecodeInput() Reviewed-by: prr, jgodinez ! src/share/classes/com/sun/imageio/plugins/wbmp/WBMPImageReaderSpi.java + test/javax/imageio/plugins/wbmp/StreamResetTest.java Changeset: 2f11a00279ec Author: jchen Date: 2013-10-03 13:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2f11a00279ec 8025280: [parfait] warnings from b107 for jdk.src.share.native.sun.java2d.loops: JNI exception pending, JNI critical region violation Reviewed-by: prr, jgodinez ! src/share/native/sun/java2d/loops/Blit.c ! src/share/native/sun/java2d/loops/BlitBg.c ! src/share/native/sun/java2d/loops/DrawPath.c ! src/share/native/sun/java2d/loops/DrawPolygons.c ! src/share/native/sun/java2d/loops/FillPath.c ! src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.c ! src/share/native/sun/java2d/loops/MaskBlit.c ! src/share/native/sun/java2d/loops/MaskFill.c ! src/share/native/sun/java2d/loops/ScaledBlit.c ! src/share/native/sun/java2d/loops/TransformHelper.c Changeset: e88d39b110dd Author: jchen Date: 2013-10-03 13:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e88d39b110dd 8025480: [parfait] "JNI exception pending" warnings from b107 for jdk.src.share.native.sun.java2d Reviewed-by: prr, jgodinez ! src/share/native/sun/java2d/Disposer.c ! src/share/native/sun/java2d/SurfaceData.c Changeset: 3c1b13ad0677 Author: jchen Date: 2013-10-03 13:35 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3c1b13ad0677 8025309: [parfait] JNI-related warnings from b107 for jdk.src.share.native.sun.java2d.pipe Reviewed-by: prr, jgodinez ! src/share/native/sun/java2d/pipe/BufferedRenderPipe.c ! src/share/native/sun/java2d/pipe/Region.c ! src/share/native/sun/java2d/pipe/ShapeSpanIterator.c ! src/share/native/sun/java2d/pipe/SpanClipRenderer.c Changeset: d37594b689ce Author: jchen Date: 2013-10-03 13:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d37594b689ce 8025664: [parfait] warnings from b62 for jdk.src.share.native.sun.font Reviewed-by: prr, jgodinez ! src/share/native/sun/font/freetypeScaler.c Changeset: 0ed939dc4230 Author: jchen Date: 2013-10-03 13:49 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0ed939dc4230 8025294: [parfait] JNI-related warnings from b107 for jdk.src.solaris.native.sun.java2d.x11 Reviewed-by: prr, jgodinez ! src/solaris/native/sun/java2d/x11/X11Renderer.c ! src/solaris/native/sun/java2d/x11/X11SurfaceData.c ! src/solaris/native/sun/java2d/x11/XRBackendNative.c ! src/solaris/native/sun/java2d/x11/XRSurfaceData.c Changeset: 8fd757f31470 Author: jchen Date: 2013-10-04 16:17 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8fd757f31470 8025940: Windows build fails after the fix for 8025280 Reviewed-by: prr, jgodinez ! src/share/native/sun/java2d/loops/MaskBlit.c Changeset: 727b60f9c09c Author: lana Date: 2013-10-08 14:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/727b60f9c09c Merge Changeset: e4e151f6ae50 Author: yan Date: 2013-09-27 12:35 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e4e151f6ae50 8025249: [javadoc] fix some javadoc errors in javax/swing/ Reviewed-by: alexsch, yan Contributed-by: Taras Ledkov ! src/share/classes/javax/swing/border/CompoundBorder.java ! src/share/classes/javax/swing/colorchooser/AbstractColorChooserPanel.java ! src/share/classes/javax/swing/event/CaretEvent.java ! src/share/classes/javax/swing/event/DocumentEvent.java ! src/share/classes/javax/swing/event/EventListenerList.java ! src/share/classes/javax/swing/event/ListDataEvent.java ! src/share/classes/javax/swing/event/TreeModelEvent.java ! src/share/classes/javax/swing/filechooser/FileView.java ! src/share/classes/javax/swing/table/DefaultTableCellRenderer.java ! src/share/classes/javax/swing/table/DefaultTableModel.java ! src/share/classes/javax/swing/table/JTableHeader.java ! src/share/classes/javax/swing/table/TableCellRenderer.java ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/javax/swing/text/AbstractWriter.java ! src/share/classes/javax/swing/text/AsyncBoxView.java ! src/share/classes/javax/swing/text/AttributeSet.java ! src/share/classes/javax/swing/text/Document.java ! src/share/classes/javax/swing/text/Element.java ! src/share/classes/javax/swing/text/View.java Changeset: ca45169cb4eb Author: pchelko Date: 2013-09-27 14:29 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ca45169cb4eb 8024122: [TEST] need test to cover JDK-7146572 Reviewed-by: anthony, yan Contributed-by: Alexander Stepanov + test/java/awt/InputMethods/InputMethodsTest/InputMethodsTest.html + test/java/awt/InputMethods/InputMethodsTest/InputMethodsTest.java Changeset: ad7db846c951 Author: pchelko Date: 2013-09-27 17:04 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ad7db846c951 8025503: [macosx] FileDialog allows file selection with apple.awt.fileDialogForDirectories = true Reviewed-by: serb, anthony ! src/macosx/native/sun/awt/CFileDialog.m Changeset: 260bc59ca253 Author: pchelko Date: 2013-09-27 18:35 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/260bc59ca253 8016563: Test closed/java/awt/dnd/ImageTransferTest/ImageTransferTest.html fails Reviewed-by: anthony, serb ! src/share/classes/sun/awt/datatransfer/DataTransferer.java Changeset: bfff9e9120ec Author: malenkov Date: 2013-09-27 22:17 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bfff9e9120ec 8012716: java.beans.EventHandler.create method should check if the given listenerInterface is a public interface Reviewed-by: art, mchung ! src/share/classes/java/beans/EventHandler.java Changeset: 0042f54f65d0 Author: malenkov Date: 2013-09-27 22:25 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0042f54f65d0 7117595: ArrayIndexOutOfBoundsException in Win32GraphicsEnvironment if display is removed Reviewed-by: anthony, serb ! src/macosx/classes/sun/awt/CGraphicsEnvironment.java ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ! src/windows/classes/sun/awt/Win32GraphicsEnvironment.java Changeset: 603cd3cefbb0 Author: malenkov Date: 2013-09-30 22:08 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/603cd3cefbb0 8025652: [macos] build failed Reviewed-by: serb ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ! src/windows/classes/sun/awt/Win32GraphicsEnvironment.java Changeset: cdfa2301a291 Author: serb Date: 2013-10-01 04:29 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cdfa2301a291 7150100: [macosx] "0123456789" is selected in the TextField Reviewed-by: anthony, art ! src/macosx/classes/sun/lwawt/LWTextComponentPeer.java ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java ! src/solaris/classes/sun/awt/X11/XTextFieldPeer.java + test/java/awt/TextArea/SelectionVisible/SelectionVisible.html + test/java/awt/TextArea/SelectionVisible/SelectionVisible.java + test/java/awt/TextField/SelectionVisible/SelectionVisible.html + test/java/awt/TextField/SelectionVisible/SelectionVisible.java Changeset: 2d8418d68a3c Author: kshefov Date: 2013-10-01 13:19 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2d8418d68a3c 7125471: [macosx] NofocusListDblClickTest should wait between doublr clicks Reviewed-by: anthony, serb Contributed-by: vera.akulova at oracle.com + test/java/awt/List/NofocusListDblClickTest/NofocusListDblClickTest.java Changeset: 329011aad090 Author: kshefov Date: 2013-10-01 13:30 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/329011aad090 8012468: [TEST_BUG] javax/swing/PopupFactory/6276087/NonOpaquePopupMenuTest.java doesn't release mouse button Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com ! test/javax/swing/PopupFactory/6276087/NonOpaquePopupMenuTest.java Changeset: 0887aad989fb Author: kshefov Date: 2013-10-01 13:38 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0887aad989fb 8012466: [TEST_BUG] javax/swing/JInternalFrame/Test6505027.java doesn't release mouse button Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com ! test/javax/swing/JInternalFrame/Test6505027.java Changeset: 1043bd1f7fca Author: kshefov Date: 2013-10-01 13:40 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1043bd1f7fca 8004294: [TEST_BUG] javax/swing/JSpinner/4973721/bug4973721.java failed on win2003 Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com + test/javax/swing/JSpinner/4973721/bug4973721.java Changeset: 68157255f3eb Author: kshefov Date: 2013-10-01 13:45 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/68157255f3eb 8012461: [TEST_BUG] closed/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java doesn't release mouse button Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com + test/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java + test/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.xml Changeset: 172405287fde Author: kshefov Date: 2013-10-01 13:46 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/172405287fde 7133545: [macosx] closed/javax/swing/JSplitPane/4514858/bug4514858.java fails on MacOS Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com + test/javax/swing/JSplitPane/4514858/bug4514858.java Changeset: 291e66f4cb83 Author: kshefov Date: 2013-10-01 13:47 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/291e66f4cb83 7133532: [macosx] closed/javax/swing/JScrollBar/bug4202954/bug4202954.java fails on MacOS Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com + test/javax/swing/JScrollBar/bug4202954/bug4202954.java Changeset: 560ede42bd2e Author: kshefov Date: 2013-10-01 14:38 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/560ede42bd2e 8025707: Frogot to add a file to fix for JDK-8012461 Reviewed-by: serb, alexsch Contributed-by: vera.akulova at oracle.com + test/javax/swing/plaf/synth/SynthButtonUI/6276188/red.gif Changeset: a0c28e64c049 Author: alitvinov Date: 2013-10-01 18:40 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a0c28e64c049 8025145: [macosx]: java 7 does not recognize tiff image on clipboard Reviewed-by: anthony, serb Contributed-by: anton.nashatyrev at oracle.com ! src/macosx/lib/flavormap.properties Changeset: 5e205645d990 Author: pchelko Date: 2013-10-02 11:18 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5e205645d990 7124363: [macosx] ClassCastException: CFileDialog cannot be cast to LWWindowPeer Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/LWWindowPeer.java Changeset: 1189f954d52f Author: pchelko Date: 2013-10-02 11:32 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1189f954d52f 8024163: [macosx] NullPointerException at javax.swing.TransferHandler$DropHandler.handleDrag since jdk8b93, 7u40b28 Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/macosx/CDropTargetContextPeer.java ! src/macosx/native/sun/awt/CDropTarget.m + test/java/awt/dnd/DropTargetEnterExitTest/ExtraDragEnterTest.java + test/java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java Changeset: 01198c681710 Author: pchelko Date: 2013-10-02 11:50 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/01198c681710 8024600: [macosx] code prevents use of -Xlint:auxiliaryclass,empty in jdk build Reviewed-by: anthony, serb ! src/macosx/classes/com/apple/eawt/_AppEventLegacyHandler.java + src/macosx/classes/com/apple/eawt/_OpenAppHandler.java ! src/macosx/classes/com/apple/laf/AquaComboBoxRenderer.java + src/macosx/classes/com/apple/laf/AquaComboBoxRendererInternal.java ! src/macosx/classes/com/apple/laf/AquaMenuBarUI.java Changeset: 287e0a7731ff Author: pchelko Date: 2013-10-02 16:58 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/287e0a7731ff 8024158: [macosx] java/awt/EventDispatchThread/LoopRobustness/LoopRobustness still failed after fix JDK-8022247; since jdk8b96 Reviewed-by: art, leonidr ! src/macosx/classes/sun/lwawt/LWWindowPeer.java Changeset: 244f2ee51f31 Author: leonidr Date: 2013-10-02 17:06 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/244f2ee51f31 8023994: Right click on the icon added to the system tray for the first time, java.lang.IllegalArgumentException thrown. Reviewed-by: anthony, serb ! src/solaris/classes/sun/awt/X11/XBaseMenuWindow.java Changeset: f40f2421c60f Author: serb Date: 2013-10-02 21:02 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f40f2421c60f 8013563: Memory leak in JFrame on Linux Reviewed-by: anthony, art ! src/share/classes/java/awt/Window.java + test/java/awt/Window/WindowsLeak/WindowsLeak.java Changeset: 1da5d306e84b Author: cl Date: 2013-10-02 11:28 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1da5d306e84b 8025409: Fix javadoc comments errors and warning reported by doclint report Reviewed-by: anthony, yan ! src/share/classes/java/awt/BorderLayout.java ! src/share/classes/java/awt/Button.java ! src/share/classes/java/awt/Checkbox.java ! src/share/classes/java/awt/CheckboxGroup.java ! src/share/classes/java/awt/CheckboxMenuItem.java ! src/share/classes/java/awt/Choice.java ! src/share/classes/java/awt/Color.java ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/java/awt/FlowLayout.java ! src/share/classes/java/awt/FontMetrics.java ! src/share/classes/java/awt/Frame.java ! src/share/classes/java/awt/GridBagLayout.java ! src/share/classes/java/awt/GridLayout.java ! src/share/classes/java/awt/Label.java ! src/share/classes/java/awt/LinearGradientPaint.java ! src/share/classes/java/awt/List.java ! src/share/classes/java/awt/MenuBar.java ! src/share/classes/java/awt/MenuItem.java ! src/share/classes/java/awt/RadialGradientPaint.java ! src/share/classes/java/awt/Scrollbar.java ! src/share/classes/java/awt/SystemTray.java ! src/share/classes/java/awt/TextArea.java ! src/share/classes/java/awt/TextField.java ! src/share/classes/java/awt/Window.java ! src/share/classes/java/awt/font/TextAttribute.java ! src/share/classes/java/awt/geom/AffineTransform.java ! src/share/classes/java/awt/geom/Line2D.java ! src/share/classes/java/awt/print/PrinterJob.java ! src/share/classes/javax/print/Doc.java ! src/share/classes/javax/print/DocFlavor.java ! src/share/classes/javax/print/MultiDoc.java ! src/share/classes/javax/print/attribute/standard/Finishings.java ! src/share/classes/javax/print/attribute/standard/JobStateReasons.java ! src/share/classes/javax/print/attribute/standard/MediaPrintableArea.java ! src/share/classes/javax/print/attribute/standard/MultipleDocumentHandling.java ! src/share/classes/javax/print/attribute/standard/PrinterStateReasons.java ! src/share/classes/javax/print/attribute/standard/Sides.java ! src/share/classes/javax/swing/JLayeredPane.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JScrollPane.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/LookAndFeel.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/share/classes/javax/swing/plaf/metal/MetalTreeUI.java ! src/share/classes/javax/swing/text/Document.java ! src/share/classes/javax/swing/text/MaskFormatter.java ! src/share/classes/javax/swing/text/View.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java Changeset: 998578a87c0e Author: bagiras Date: 2013-10-03 16:51 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/998578a87c0e 8013553: [macosx] java.awt.FileDialog removes file extensions Reviewed-by: leonidr, serb ! src/macosx/native/sun/awt/CFileDialog.m Changeset: 1533a379deb0 Author: anthony Date: 2013-10-03 18:01 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1533a379deb0 7174704: [macosx] New issue in 7u6 b12: HeadlessPrintingTest failure Summary: Load the lwawt native library on Mac regardless of the headless/headful mode. Also, some minor cleanup. Reviewed-by: art, serb ! src/macosx/native/sun/awt/awt.m ! src/solaris/native/sun/awt/awt_LoadLibrary.c Changeset: 39b674405270 Author: alexsch Date: 2013-10-03 19:02 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/39b674405270 7092283: Property Window.locationByPlatform is not cleared by calling setVisible(false) Reviewed-by: anthony, serb ! src/share/classes/java/awt/Window.java + test/java/awt/Window/LocationByPlatform/LocationByPlatformTest.java Changeset: 6ffe50fe06bd Author: mcherkas Date: 2013-10-04 20:13 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6ffe50fe06bd 8020688: Broken links in documentation at http://docs.oracle.com/javase/6/docs/api/index. Reviewed-by: anthony, alexsch ! src/macosx/classes/apple/applescript/AppleScriptEngine.java ! src/share/classes/com/sun/org/apache/xml/internal/security/keys/content/x509/XMLX509SKI.java ! src/share/classes/com/sun/org/apache/xml/internal/security/utils/resolver/implementations/ResolverDirectHTTP.java ! src/share/classes/java/applet/Applet.java ! src/share/classes/java/applet/AppletStub.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Container.java ! src/share/classes/java/awt/DefaultFocusTraversalPolicy.java ! src/share/classes/java/awt/DefaultKeyboardFocusManager.java ! src/share/classes/java/awt/DisplayMode.java ! src/share/classes/java/awt/FocusTraversalPolicy.java ! src/share/classes/java/awt/Font.java ! src/share/classes/java/awt/GraphicsDevice.java ! src/share/classes/java/awt/KeyboardFocusManager.java ! src/share/classes/java/awt/Toolkit.java ! src/share/classes/java/awt/datatransfer/DataFlavor.java ! src/share/classes/java/awt/datatransfer/Transferable.java ! src/share/classes/java/awt/event/ActionEvent.java ! src/share/classes/java/awt/event/ActionListener.java ! src/share/classes/java/awt/event/ComponentAdapter.java ! src/share/classes/java/awt/event/ComponentEvent.java ! src/share/classes/java/awt/event/ComponentListener.java ! src/share/classes/java/awt/event/ContainerAdapter.java ! src/share/classes/java/awt/event/ContainerEvent.java ! src/share/classes/java/awt/event/ContainerListener.java ! src/share/classes/java/awt/event/FocusAdapter.java ! src/share/classes/java/awt/event/FocusEvent.java ! src/share/classes/java/awt/event/FocusListener.java ! src/share/classes/java/awt/event/ItemEvent.java ! src/share/classes/java/awt/event/ItemListener.java ! src/share/classes/java/awt/event/KeyAdapter.java ! src/share/classes/java/awt/event/KeyEvent.java ! src/share/classes/java/awt/event/MouseAdapter.java ! src/share/classes/java/awt/event/MouseEvent.java ! src/share/classes/java/awt/event/MouseListener.java ! src/share/classes/java/awt/event/MouseMotionAdapter.java ! src/share/classes/java/awt/event/MouseMotionListener.java ! src/share/classes/java/awt/event/WindowAdapter.java ! src/share/classes/java/awt/event/WindowEvent.java ! src/share/classes/java/awt/event/WindowFocusListener.java ! src/share/classes/java/awt/event/WindowListener.java ! src/share/classes/java/awt/geom/Line2D.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/java/net/URI.java ! src/share/classes/java/text/DecimalFormat.java ! src/share/classes/java/text/SimpleDateFormat.java ! src/share/classes/javax/management/Descriptor.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/BorderFactory.java ! src/share/classes/javax/swing/BoundedRangeModel.java ! src/share/classes/javax/swing/Box.java ! src/share/classes/javax/swing/BoxLayout.java ! src/share/classes/javax/swing/ButtonGroup.java ! src/share/classes/javax/swing/DefaultFocusManager.java ! src/share/classes/javax/swing/FocusManager.java ! src/share/classes/javax/swing/ImageIcon.java ! src/share/classes/javax/swing/JApplet.java ! src/share/classes/javax/swing/JButton.java ! src/share/classes/javax/swing/JCheckBox.java ! src/share/classes/javax/swing/JCheckBoxMenuItem.java ! src/share/classes/javax/swing/JColorChooser.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JDesktopPane.java ! src/share/classes/javax/swing/JDialog.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JFileChooser.java ! src/share/classes/javax/swing/JFrame.java ! src/share/classes/javax/swing/JInternalFrame.java ! src/share/classes/javax/swing/JLabel.java ! src/share/classes/javax/swing/JLayeredPane.java ! src/share/classes/javax/swing/JList.java ! src/share/classes/javax/swing/JMenu.java ! src/share/classes/javax/swing/JMenuBar.java ! src/share/classes/javax/swing/JMenuItem.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JPanel.java ! src/share/classes/javax/swing/JPasswordField.java ! src/share/classes/javax/swing/JPopupMenu.java ! src/share/classes/javax/swing/JProgressBar.java ! src/share/classes/javax/swing/JRadioButton.java ! src/share/classes/javax/swing/JRadioButtonMenuItem.java ! src/share/classes/javax/swing/JRootPane.java ! src/share/classes/javax/swing/JScrollPane.java ! src/share/classes/javax/swing/JSeparator.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JSpinner.java ! src/share/classes/javax/swing/JSplitPane.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/JTextArea.java ! src/share/classes/javax/swing/JTextField.java ! src/share/classes/javax/swing/JTextPane.java ! src/share/classes/javax/swing/JToggleButton.java ! src/share/classes/javax/swing/JToolBar.java ! src/share/classes/javax/swing/JToolTip.java ! src/share/classes/javax/swing/JTree.java ! src/share/classes/javax/swing/JWindow.java ! src/share/classes/javax/swing/ProgressMonitor.java ! src/share/classes/javax/swing/ProgressMonitorInputStream.java ! src/share/classes/javax/swing/Spring.java ! src/share/classes/javax/swing/SpringLayout.java ! src/share/classes/javax/swing/SwingUtilities.java ! src/share/classes/javax/swing/SwingWorker.java ! src/share/classes/javax/swing/Timer.java ! src/share/classes/javax/swing/TransferHandler.java ! src/share/classes/javax/swing/WindowConstants.java ! src/share/classes/javax/swing/border/Border.java ! src/share/classes/javax/swing/event/InternalFrameAdapter.java ! src/share/classes/javax/swing/event/InternalFrameEvent.java ! src/share/classes/javax/swing/event/InternalFrameListener.java ! src/share/classes/javax/swing/event/TreeExpansionEvent.java ! src/share/classes/javax/swing/event/TreeExpansionListener.java ! src/share/classes/javax/swing/event/TreeModelEvent.java ! src/share/classes/javax/swing/event/TreeModelListener.java ! src/share/classes/javax/swing/event/TreeSelectionListener.java ! src/share/classes/javax/swing/event/TreeWillExpandListener.java ! src/share/classes/javax/swing/filechooser/FileFilter.java ! src/share/classes/javax/swing/filechooser/FileView.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/share/classes/javax/swing/table/TableModel.java ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/javax/swing/text/DefaultCaret.java ! src/share/classes/javax/swing/text/DefaultStyledDocument.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/PlainDocument.java ! src/share/classes/javax/swing/text/StyleContext.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/tree/DefaultMutableTreeNode.java ! src/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java ! src/share/classes/javax/swing/tree/DefaultTreeModel.java ! src/share/classes/javax/swing/tree/ExpandVetoException.java ! src/share/classes/javax/swing/tree/TreeCellRenderer.java ! src/share/classes/javax/swing/tree/TreeModel.java ! src/share/classes/javax/swing/tree/TreeNode.java ! src/share/classes/javax/swing/tree/TreePath.java ! src/share/classes/javax/swing/tree/TreeSelectionModel.java ! src/share/classes/sun/swing/PrintingStatus.java ! src/share/classes/sun/text/normalizer/UCharacter.java ! src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java Changeset: 01b40315f872 Author: alexsch Date: 2013-10-07 16:13 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/01b40315f872 8025438: [macosx] right JNFCall* method should be used in JDK-8008728 fix Reviewed-by: serb, anthony ! src/macosx/native/sun/awt/AWTWindow.m Changeset: 72afa269fa3b Author: alexsch Date: 2013-10-07 16:42 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/72afa269fa3b 8007219: [macosx] Frame size reverts meaning of maximized attribute if frame size close to display Reviewed-by: serb, anthony ! src/macosx/classes/sun/lwawt/LWWindowPeer.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/classes/sun/lwawt/macosx/CWrapper.java ! src/macosx/native/sun/awt/CWrapper.m + test/java/awt/Frame/MaximizedToMaximized/MaximizedToMaximized.java Changeset: 546c0ebfbf56 Author: cl Date: 2013-10-07 11:34 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/546c0ebfbf56 8025840: Fix all the doclint warnings about trademark Reviewed-by: art ! src/share/classes/javax/swing/AbstractAction.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/AbstractCellEditor.java ! src/share/classes/javax/swing/AbstractListModel.java ! src/share/classes/javax/swing/Box.java ! src/share/classes/javax/swing/BoxLayout.java ! src/share/classes/javax/swing/ButtonGroup.java ! src/share/classes/javax/swing/CellRendererPane.java ! src/share/classes/javax/swing/DefaultBoundedRangeModel.java ! src/share/classes/javax/swing/DefaultButtonModel.java ! src/share/classes/javax/swing/DefaultCellEditor.java ! src/share/classes/javax/swing/DefaultListCellRenderer.java ! src/share/classes/javax/swing/DefaultListModel.java ! src/share/classes/javax/swing/DefaultListSelectionModel.java ! src/share/classes/javax/swing/DefaultSingleSelectionModel.java ! src/share/classes/javax/swing/ImageIcon.java ! src/share/classes/javax/swing/JApplet.java ! src/share/classes/javax/swing/JButton.java ! src/share/classes/javax/swing/JCheckBox.java ! src/share/classes/javax/swing/JCheckBoxMenuItem.java ! src/share/classes/javax/swing/JColorChooser.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JDesktopPane.java ! src/share/classes/javax/swing/JDialog.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JFormattedTextField.java ! src/share/classes/javax/swing/JFrame.java ! src/share/classes/javax/swing/JInternalFrame.java ! src/share/classes/javax/swing/JLabel.java ! src/share/classes/javax/swing/JLayeredPane.java ! src/share/classes/javax/swing/JList.java ! src/share/classes/javax/swing/JMenu.java ! src/share/classes/javax/swing/JMenuBar.java ! src/share/classes/javax/swing/JMenuItem.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JPanel.java ! src/share/classes/javax/swing/JPasswordField.java ! src/share/classes/javax/swing/JPopupMenu.java ! src/share/classes/javax/swing/JProgressBar.java ! src/share/classes/javax/swing/JRadioButton.java ! src/share/classes/javax/swing/JRadioButtonMenuItem.java ! src/share/classes/javax/swing/JRootPane.java ! src/share/classes/javax/swing/JScrollBar.java ! src/share/classes/javax/swing/JScrollPane.java ! src/share/classes/javax/swing/JSeparator.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JSpinner.java ! src/share/classes/javax/swing/JSplitPane.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/JTextArea.java ! src/share/classes/javax/swing/JTextField.java ! src/share/classes/javax/swing/JTextPane.java ! src/share/classes/javax/swing/JToggleButton.java ! src/share/classes/javax/swing/JToolBar.java ! src/share/classes/javax/swing/JToolTip.java ! src/share/classes/javax/swing/JTree.java ! src/share/classes/javax/swing/JViewport.java ! src/share/classes/javax/swing/JWindow.java ! src/share/classes/javax/swing/KeyStroke.java ! src/share/classes/javax/swing/OverlayLayout.java ! src/share/classes/javax/swing/ScrollPaneLayout.java ! src/share/classes/javax/swing/SizeRequirements.java ! src/share/classes/javax/swing/Spring.java ! src/share/classes/javax/swing/SpringLayout.java ! src/share/classes/javax/swing/Timer.java ! src/share/classes/javax/swing/UIDefaults.java ! src/share/classes/javax/swing/UIManager.java ! src/share/classes/javax/swing/UnsupportedLookAndFeelException.java ! src/share/classes/javax/swing/ViewportLayout.java ! src/share/classes/javax/swing/border/AbstractBorder.java ! src/share/classes/javax/swing/border/BevelBorder.java ! src/share/classes/javax/swing/border/CompoundBorder.java ! src/share/classes/javax/swing/border/EmptyBorder.java ! src/share/classes/javax/swing/border/EtchedBorder.java ! src/share/classes/javax/swing/border/LineBorder.java ! src/share/classes/javax/swing/border/MatteBorder.java ! src/share/classes/javax/swing/border/SoftBevelBorder.java ! src/share/classes/javax/swing/border/TitledBorder.java ! src/share/classes/javax/swing/colorchooser/AbstractColorChooserPanel.java ! src/share/classes/javax/swing/colorchooser/ColorChooserComponentFactory.java ! src/share/classes/javax/swing/colorchooser/DefaultPreviewPanel.java ! src/share/classes/javax/swing/colorchooser/DefaultSwatchChooserPanel.java ! src/share/classes/javax/swing/event/AncestorEvent.java ! src/share/classes/javax/swing/event/CaretEvent.java ! src/share/classes/javax/swing/event/ChangeEvent.java ! src/share/classes/javax/swing/event/EventListenerList.java ! src/share/classes/javax/swing/event/HyperlinkEvent.java ! src/share/classes/javax/swing/event/InternalFrameEvent.java ! src/share/classes/javax/swing/event/ListDataEvent.java ! src/share/classes/javax/swing/event/ListSelectionEvent.java ! src/share/classes/javax/swing/event/MenuDragMouseEvent.java ! src/share/classes/javax/swing/event/MenuEvent.java ! src/share/classes/javax/swing/event/MenuKeyEvent.java ! src/share/classes/javax/swing/event/PopupMenuEvent.java ! src/share/classes/javax/swing/event/TableColumnModelEvent.java ! src/share/classes/javax/swing/event/TableModelEvent.java ! src/share/classes/javax/swing/event/TreeExpansionEvent.java ! src/share/classes/javax/swing/event/TreeModelEvent.java ! src/share/classes/javax/swing/event/TreeSelectionEvent.java ! src/share/classes/javax/swing/event/UndoableEditEvent.java ! src/share/classes/javax/swing/plaf/BorderUIResource.java ! src/share/classes/javax/swing/plaf/ColorUIResource.java ! src/share/classes/javax/swing/plaf/DimensionUIResource.java ! src/share/classes/javax/swing/plaf/FontUIResource.java ! src/share/classes/javax/swing/plaf/IconUIResource.java ! src/share/classes/javax/swing/plaf/InsetsUIResource.java ! src/share/classes/javax/swing/plaf/basic/BasicArrowButton.java ! src/share/classes/javax/swing/plaf/basic/BasicCheckBoxUI.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxEditor.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxRenderer.java ! src/share/classes/javax/swing/plaf/basic/BasicComboPopup.java ! src/share/classes/javax/swing/plaf/basic/BasicEditorPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicIconFactory.java ! src/share/classes/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java ! src/share/classes/javax/swing/plaf/basic/BasicListUI.java ! src/share/classes/javax/swing/plaf/basic/BasicLookAndFeel.java ! src/share/classes/javax/swing/plaf/basic/BasicSplitPaneDivider.java ! src/share/classes/javax/swing/plaf/basic/BasicTextAreaUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTextFieldUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTextPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTextUI.java ! src/share/classes/javax/swing/plaf/basic/ComboPopup.java ! src/share/classes/javax/swing/plaf/metal/DefaultMetalTheme.java ! src/share/classes/javax/swing/plaf/metal/MetalButtonUI.java ! src/share/classes/javax/swing/plaf/metal/MetalCheckBoxIcon.java ! src/share/classes/javax/swing/plaf/metal/MetalCheckBoxUI.java ! src/share/classes/javax/swing/plaf/metal/MetalComboBoxButton.java ! src/share/classes/javax/swing/plaf/metal/MetalComboBoxEditor.java ! src/share/classes/javax/swing/plaf/metal/MetalComboBoxUI.java ! src/share/classes/javax/swing/plaf/metal/MetalIconFactory.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/share/classes/javax/swing/plaf/metal/MetalProgressBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalRadioButtonUI.java ! src/share/classes/javax/swing/plaf/metal/MetalRootPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalScrollButton.java ! src/share/classes/javax/swing/plaf/metal/MetalScrollPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSeparatorUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSliderUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSplitPaneDivider.java ! src/share/classes/javax/swing/plaf/metal/MetalSplitPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalTextFieldUI.java ! src/share/classes/javax/swing/plaf/metal/MetalToggleButtonUI.java ! src/share/classes/javax/swing/plaf/metal/MetalToolTipUI.java ! src/share/classes/javax/swing/plaf/multi/MultiLookAndFeel.java ! src/share/classes/javax/swing/plaf/synth/SynthTextAreaUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextFieldUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextPaneUI.java ! src/share/classes/javax/swing/table/AbstractTableModel.java ! src/share/classes/javax/swing/table/DefaultTableCellRenderer.java ! src/share/classes/javax/swing/table/DefaultTableColumnModel.java ! src/share/classes/javax/swing/table/DefaultTableModel.java ! src/share/classes/javax/swing/table/JTableHeader.java ! src/share/classes/javax/swing/table/TableColumn.java ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/javax/swing/text/BadLocationException.java ! src/share/classes/javax/swing/text/DateFormatter.java ! src/share/classes/javax/swing/text/DefaultCaret.java ! src/share/classes/javax/swing/text/DefaultEditorKit.java ! src/share/classes/javax/swing/text/DefaultFormatter.java ! src/share/classes/javax/swing/text/DefaultFormatterFactory.java ! src/share/classes/javax/swing/text/DefaultStyledDocument.java ! src/share/classes/javax/swing/text/InternationalFormatter.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/MaskFormatter.java ! src/share/classes/javax/swing/text/NumberFormatter.java ! src/share/classes/javax/swing/text/PlainDocument.java ! src/share/classes/javax/swing/text/SimpleAttributeSet.java ! src/share/classes/javax/swing/text/StringContent.java ! src/share/classes/javax/swing/text/StyleContext.java ! src/share/classes/javax/swing/text/StyledEditorKit.java ! src/share/classes/javax/swing/text/TabSet.java ! src/share/classes/javax/swing/text/TabStop.java ! src/share/classes/javax/swing/text/TextAction.java ! src/share/classes/javax/swing/text/html/Option.java ! src/share/classes/javax/swing/tree/AbstractLayoutCache.java ! src/share/classes/javax/swing/tree/DefaultMutableTreeNode.java ! src/share/classes/javax/swing/tree/DefaultTreeCellEditor.java ! src/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java ! src/share/classes/javax/swing/tree/DefaultTreeModel.java ! src/share/classes/javax/swing/tree/DefaultTreeSelectionModel.java ! src/share/classes/javax/swing/tree/FixedHeightLayoutCache.java ! src/share/classes/javax/swing/tree/TreePath.java ! src/share/classes/javax/swing/tree/VariableHeightLayoutCache.java ! src/share/classes/javax/swing/undo/CannotRedoException.java ! src/share/classes/javax/swing/undo/CannotUndoException.java ! src/share/classes/javax/swing/undo/UndoManager.java Changeset: bdc8abbce9c1 Author: yan Date: 2013-10-08 13:57 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bdc8abbce9c1 8025236: [javadoc] fix some errors in AWT Reviewed-by: yan, anthony Contributed-by: Dmitry Ginzburg ! src/share/classes/java/awt/event/InputEvent.java ! src/share/classes/java/awt/event/MouseEvent.java ! src/share/classes/java/awt/im/InputContext.java ! src/share/classes/java/awt/im/InputMethodHighlight.java Changeset: 01022f461570 Author: pchelko Date: 2013-10-08 15:17 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/01022f461570 7158311: GraphicsDevice.setDisplayMode(...) leads to hang when DISPLAY variable points to Oracle Linux 8001463: Regression : Deadlock between AWT-XAWT thread and AWT-EventQueue-0 Thread when screen resolution changes Reviewed-by: art, serb Contributed-by: alexander.zvegintsev at oracle.com ! src/solaris/classes/sun/awt/X11/XToolkit.java Changeset: a5d0730342a5 Author: pchelko Date: 2013-10-08 15:54 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a5d0730342a5 8025585: Win: Popups in JFXPanel do not receive MouseWheel events Reviewed-by: anthony, art ! src/windows/native/sun/windows/awt_Toolkit.cpp Changeset: 85a72bb00d74 Author: bagiras Date: 2013-10-08 16:04 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/85a72bb00d74 8000425: FileDialog documentation should be enhanced Reviewed-by: serb, anthony ! src/share/classes/java/awt/FileDialog.java Changeset: 01607de6265d Author: bagiras Date: 2013-10-08 16:56 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/01607de6265d 7068423: Spec for java.awt.GraphicsDevice.getFullScreenWindow() needs clarification Reviewed-by: art, anthony ! src/share/classes/java/awt/GraphicsDevice.java Changeset: 184b16f4e61f Author: bagiras Date: 2013-10-08 17:00 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/184b16f4e61f 7199196: Incremental transfer is broken because of a typo Reviewed-by: anthony, serb ! src/solaris/classes/sun/awt/X11/XSelection.java Changeset: 42d3ea1c35b4 Author: malenkov Date: 2013-10-08 18:10 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/42d3ea1c35b4 7081584: Specification for Window.isAlwaysOnTopSupported needs to be clarified Reviewed-by: art, serb ! src/macosx/classes/sun/lwawt/LWComponentPeer.java ! src/macosx/classes/sun/lwawt/macosx/CFileDialog.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Window.java ! src/share/classes/java/awt/peer/ComponentPeer.java ! src/share/classes/sun/awt/NullComponentPeer.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/windows/classes/sun/awt/windows/WComponentPeer.java Changeset: 6914b883c3bb Author: malenkov Date: 2013-10-08 18:19 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6914b883c3bb 7172597: java.awt.KeyboardFocusManager.clearFocusOwner() missed javadoc tag @since 1.8 Reviewed-by: art, anthony ! src/share/classes/java/awt/KeyboardFocusManager.java Changeset: a2dd2b411723 Author: alexsch Date: 2013-10-08 18:45 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a2dd2b411723 7081594: Windows owned by an always-on-top window DO NOT automatically become always-on-top Reviewed-by: art, anthony, serb ! src/share/classes/java/awt/Window.java + test/java/awt/Window/AlwaysOnTop/AlwaysOnTopFieldTest.java Changeset: 0c06c38dfc3e Author: serb Date: 2013-10-08 21:24 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0c06c38dfc3e 8022119: test api/javax_sound/sampled/spi/MixerProvider/indexTGF_MixerProviderTests fails Reviewed-by: art, anthony ! src/share/classes/com/sun/media/sound/JSSecurityManager.java Changeset: b218a14bdc8a Author: serb Date: 2013-10-08 23:34 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b218a14bdc8a 8025603: Unused methods in the awt text peers should be removed Reviewed-by: art, anthony ! src/macosx/classes/sun/lwawt/LWTextComponentPeer.java ! src/share/classes/java/awt/TextComponent.java ! src/share/classes/java/awt/peer/TextComponentPeer.java ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java ! src/solaris/classes/sun/awt/X11/XTextFieldPeer.java ! src/windows/classes/sun/awt/windows/WButtonPeer.java ! src/windows/classes/sun/awt/windows/WCheckboxPeer.java ! src/windows/classes/sun/awt/windows/WChoicePeer.java ! src/windows/classes/sun/awt/windows/WComponentPeer.java ! src/windows/classes/sun/awt/windows/WLabelPeer.java ! src/windows/classes/sun/awt/windows/WListPeer.java ! src/windows/classes/sun/awt/windows/WScrollbarPeer.java ! src/windows/classes/sun/awt/windows/WTextAreaPeer.java ! src/windows/classes/sun/awt/windows/WTextComponentPeer.java ! src/windows/classes/sun/awt/windows/WTextFieldPeer.java ! src/windows/native/sun/windows/awt_TextArea.cpp ! src/windows/native/sun/windows/awt_TextComponent.cpp ! src/windows/native/sun/windows/awt_TextField.cpp Changeset: e591ac19174f Author: leonidr Date: 2013-10-09 01:03 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e591ac19174f 8004050: [macosx] The 'ESC' key does not work with jdk8 Reviewed-by: alexsch, serb ! src/macosx/classes/com/apple/laf/AquaComboBoxUI.java ! src/macosx/classes/com/apple/laf/AquaKeyBindings.java Changeset: c1ef9ebac26a Author: lana Date: 2013-10-08 14:53 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c1ef9ebac26a Merge ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java Changeset: 78b4dc33e6e6 Author: twisti Date: 2013-09-26 18:20 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/78b4dc33e6e6 8019192: StringIndexOutOfBoundsException: in Class.getSimpleName() Reviewed-by: jrose ! src/share/classes/java/lang/invoke/MemberName.java Changeset: eb2c81533876 Author: weijun Date: 2013-09-27 15:25 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/eb2c81533876 8024861: Incomplete token triggers GSS-API NullPointerException Reviewed-by: mullan ! src/share/classes/sun/security/jgss/spnego/SpNegoContext.java + test/sun/security/jgss/spnego/MechTokenMissing.java Changeset: 95f609fcb639 Author: ehelin Date: 2013-09-26 16:23 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/95f609fcb639 8025502: Exclude tests due to JDK-8025427 Reviewed-by: ksrini ! test/ProblemList.txt Changeset: 914f8d4570df Author: mduigou Date: 2013-09-27 10:21 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/914f8d4570df 8025595: Remove alt-rt.jar, used by +AggressiveOps (jdk repo portion of JDK-8024826) Reviewed-by: alanb, chegar, dholmes, ksrini ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk ! makefiles/Profiles.gmk ! makefiles/profile-includes.txt ! test/java/util/TreeMap/Clone.java Changeset: fbe6f5dbb24f Author: mduigou Date: 2013-09-27 13:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fbe6f5dbb24f 8023339: Refined Collection.removeIf UOE conditions Reviewed-by: mduigou Contributed-by: paul.sandoz at oracle.com ! src/share/classes/java/util/Collection.java ! test/java/util/Collection/MOAT.java Changeset: 91222be67b27 Author: mduigou Date: 2013-09-27 13:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/91222be67b27 8023340: Clarify that unmodifiable List.replaceAll() may not throw UOE if there are no items to be replaced. Reviewed-by: psandoz, jjg ! src/share/classes/java/util/List.java Changeset: 754db1268be1 Author: dxu Date: 2013-09-27 17:09 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/754db1268be1 8025128: File.createTempFile fails if prefix is absolute path Summary: Use only the file name from the supplied prefix for backward compatibility Reviewed-by: alanb, chegar ! src/share/classes/java/io/File.java ! test/java/io/File/createTempFile/SpecialTempFile.java Changeset: d921ce805abe Author: mduigou Date: 2013-09-27 17:27 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d921ce805abe 8025610: Add explicit @throws NPE documentation to Optional constructor and Optional.of Reviewed-by: briangoetz, chegar, alanb ! src/share/classes/java/util/Optional.java Changeset: 0b535e920dd5 Author: lana Date: 2013-09-27 18:38 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0b535e920dd5 Merge Changeset: 15955d335cd0 Author: jfranck Date: 2013-09-30 11:18 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/15955d335cd0 8007072: Update Core Reflection for Type Annotations to match latest spec 8022324: j.l.Class.getAnnotatedInterfaces() for array type returns wrong value 8024915: j.l.r.Executable.getAnnotatedReceiverType() should return null for static methods Summary: Update javadoc and implementation of reflection for type annotations to match latest spec Reviewed-by: darcy ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/reflect/AnnotatedArrayType.java ! src/share/classes/java/lang/reflect/AnnotatedParameterizedType.java ! src/share/classes/java/lang/reflect/AnnotatedType.java ! src/share/classes/java/lang/reflect/AnnotatedTypeVariable.java ! src/share/classes/java/lang/reflect/AnnotatedWildcardType.java ! src/share/classes/java/lang/reflect/Executable.java ! src/share/classes/sun/reflect/annotation/AnnotatedTypeFactory.java ! src/share/classes/sun/reflect/annotation/TypeAnnotationParser.java + test/java/lang/annotation/typeAnnotations/GetAnnotatedInterfaces.java + test/java/lang/annotation/typeAnnotations/GetAnnotatedReceiverType.java ! test/java/lang/annotation/typeAnnotations/GetAnnotatedSuperclass.java Changeset: 89174cddaec8 Author: jfranck Date: 2013-09-30 12:19 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/89174cddaec8 8009719: core reflection should get type annotation data from the VM lazily Summary: Remove typeAnnotations field from Method, Constructor, and Field, update Executable and Field to fetch data on demand. Reviewed-by: darcy, erikj ! make/java/java/FILES_c.gmk ! make/java/java/mapfile-vers ! makefiles/mapfiles/libjava/mapfile-vers ! src/share/classes/java/lang/reflect/Constructor.java ! src/share/classes/java/lang/reflect/Executable.java ! src/share/classes/java/lang/reflect/Field.java ! src/share/classes/java/lang/reflect/Method.java ! src/share/javavm/export/jvm.h ! src/share/native/java/lang/reflect/Executable.c + src/share/native/java/lang/reflect/Field.c Changeset: cceaad499685 Author: sla Date: 2013-09-30 12:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cceaad499685 8023492: jfr.jar gets loaded even though it's not used Reviewed-by: erikj, mgronlun ! make/tools/src/build/tools/buildmetaindex/BuildMetaIndex.java Changeset: ede1fd12e0da Author: allwin Date: 2013-09-30 14:28 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ede1fd12e0da 8012923: [parfait] File Descriptor Leak in jdk/src/windows/demo/jvmti/hprof/hprof_md.c Reviewed-by: chegar, sla, sspitsyn, mgronlun ! src/windows/demo/jvmti/hprof/hprof_md.c Changeset: d0de46a2cbd0 Author: ascarpino Date: 2013-09-19 11:59 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d0de46a2cbd0 7122707: Security Providers need to have their version numbers updated for JDK8 Reviewed-by: xuelei ! src/macosx/classes/apple/security/AppleProvider.java ! src/share/classes/com/sun/crypto/provider/SunJCE.java ! src/share/classes/com/sun/security/sasl/Provider.java ! src/share/classes/org/jcp/xml/dsig/internal/dom/XMLDSigRI.java ! src/share/classes/sun/security/ec/SunEC.java ! src/share/classes/sun/security/jgss/SunProvider.java ! src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java ! src/share/classes/sun/security/pkcs11/SunPKCS11.java ! src/share/classes/sun/security/provider/MD4.java ! src/share/classes/sun/security/provider/Sun.java ! src/share/classes/sun/security/provider/VerificationProvider.java ! src/share/classes/sun/security/rsa/SunRsaSign.java ! src/share/classes/sun/security/smartcardio/SunPCSC.java ! src/share/classes/sun/security/ssl/JsseJce.java ! src/share/classes/sun/security/ssl/SunJSSE.java ! src/windows/classes/sun/security/mscapi/SunMSCAPI.java + test/java/security/Provider/ProviderVersionCheck.java Changeset: 2434e79fc41f Author: ascarpino Date: 2013-09-18 14:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2434e79fc41f 8004283: test/sun/security/pkcs11/KeyStore/SecretKeysBasic.sh failing intermittently Reviewed-by: vinnie ! test/sun/security/pkcs11/KeyStore/SecretKeysBasic.sh Changeset: e4c897b33cb7 Author: ascarpino Date: 2013-09-02 09:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e4c897b33cb7 8009438: sun/security/pkcs11/Secmod tests failing on Ubuntu 12.04 Reviewed-by: vinnie ! src/share/classes/sun/security/pkcs11/Secmod.java Changeset: b4c259743371 Author: naoto Date: 2013-09-30 16:15 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b4c259743371 8016110: Japanese char (MS932) 0x5C cannot be used as an argument when quoted Reviewed-by: ksrini, akhil ! src/windows/bin/cmdtoargs.c + test/tools/launcher/I18NArgTest.java Changeset: f8b3ab514564 Author: psandoz Date: 2013-10-01 12:19 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f8b3ab514564 8024408: Specifications for Collection/List/Set/SortedSet.spliterator() need to document if all the (subclass) instances are required to return SIZED spliterators Reviewed-by: alanb ! src/share/classes/java/util/Collection.java ! src/share/classes/java/util/Set.java ! src/share/classes/java/util/SortedSet.java ! test/java/util/Spliterator/SpliteratorCharacteristics.java Changeset: bf52ea6bd9eb Author: aefimov Date: 2013-10-01 17:15 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bf52ea6bd9eb 8024707: TransformerException : item() return null with node list of length != 1 Reviewed-by: joehw, lancea + test/javax/xml/jaxp/parsers/8024707/TestFunc.java + test/javax/xml/jaxp/parsers/8024707/XSLT.java + test/javax/xml/jaxp/parsers/8024707/in.xml + test/javax/xml/jaxp/parsers/8024707/test.xsl Changeset: 8cfb2bddd95e Author: mduigou Date: 2013-09-30 15:50 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8cfb2bddd95e 7057785: Add note about optional support of recursive methods for self-referential Collection/Map Reviewed-by: scolebourne, darcy, mduigou Contributed-by: Stephen Colebourne ! src/share/classes/java/util/Collection.java ! src/share/classes/java/util/Map.java Changeset: f2e2326f787b Author: mduigou Date: 2013-10-01 10:23 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f2e2326f787b 8025067: Unconditionally throw NPE if null op provided to Arrays.parallelPrefix Reviewed-by: henryjen, chegar, psandoz ! src/share/classes/java/util/Arrays.java ! test/java/util/Arrays/ParallelPrefix.java Changeset: c32ab940a183 Author: mduigou Date: 2013-10-01 10:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c32ab940a183 8025686: Update jdk repo netbeans projects to support NetBeans 7.4 for Java 8 support Reviewed-by: lancea, chegar ! make/netbeans/common/java-data-native.ent ! make/netbeans/common/java-data-no-native.ent Changeset: 5a7bd9825c01 Author: vlivanov Date: 2013-09-23 19:51 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5a7bd9825c01 8001107: @Stable annotation for constant folding of lazily evaluated variables Reviewed-by: twisti, kvn, rbackman Contributed-by: john.r.rose at oracle.com, vladimir.x.ivanov at oracle.com ! src/share/classes/java/lang/invoke/LambdaForm.java ! src/share/classes/java/lang/invoke/MethodType.java ! src/share/classes/java/lang/invoke/MethodTypeForm.java + src/share/classes/java/lang/invoke/Stable.java Changeset: 1ed675532589 Author: vlivanov Date: 2013-09-18 20:12 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1ed675532589 8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping Reviewed-by: jrose ! src/share/classes/java/lang/invoke/DirectMethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java Changeset: bf1118ab775b Author: emc Date: 2013-10-01 17:35 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bf1118ab775b 8021398: j.l.r.Parameter.getAnnotatedType().getType() for not annotated use of type returns null Summary: Fixed issue with type annotation reflection framework that would cause getType of AnnotatedTypes to be null if no annotations were present. Reviewed-by: darcy, jfranck ! src/share/classes/sun/reflect/annotation/TypeAnnotationParser.java + test/java/lang/reflect/Parameter/GetAnnotatedTypeTest.java Changeset: 84e7f6685319 Author: ksrini Date: 2013-10-01 15:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/84e7f6685319 8025342: NLS: unsupported translation format in jar/pack/DriverResource.java Reviewed-by: naoto, mfang ! src/share/classes/com/sun/java/util/jar/pack/Driver.java ! src/share/classes/com/sun/java/util/jar/pack/DriverResource.java Changeset: d90928a89af5 Author: drchase Date: 2013-09-27 13:32 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d90928a89af5 8022701: Accessibility checking: InvocationTargetException is thrown instead of IllegalAccessError Summary: Inserted code to convert specific exceptions, case-by-case, plus a test. Reviewed-by: jrose, twisti ! src/share/classes/java/lang/invoke/MethodHandleNatives.java + test/java/lang/invoke/8022701/BogoLoader.java + test/java/lang/invoke/8022701/InvokeSeveralWays.java + test/java/lang/invoke/8022701/Invoker.java + test/java/lang/invoke/8022701/MHIllegalAccess.java + test/java/lang/invoke/8022701/MethodSupplier.java Changeset: 3fca37c636be Author: xuelei Date: 2013-10-01 20:25 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3fca37c636be 8025123: SNI support in Kerberos cipher suites Reviewed-by: weijun, xuelei Contributed-by: Artem Smotrakov ! src/share/classes/sun/security/ssl/ClientHandshaker.java ! src/share/classes/sun/security/ssl/Handshaker.java ! src/share/classes/sun/security/ssl/KerberosClientKeyExchange.java ! src/share/classes/sun/security/ssl/krb5/KerberosClientKeyExchangeImpl.java ! test/sun/security/krb5/auto/SSL.java Changeset: 914c29c10bce Author: okutsu Date: 2013-10-02 15:31 +0900 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/914c29c10bce 6902861: (cal) GregorianCalendar roll WEEK_OF_YEAR is broken for January 1 2010 Reviewed-by: peytoia ! src/share/classes/java/util/GregorianCalendar.java + test/java/util/Calendar/Bug6902861.java Changeset: 368172cb6dc5 Author: coffeys Date: 2013-10-02 09:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/368172cb6dc5 8024952: ClassCastException in PlainSocketImpl.accept() when using custom socketImpl Reviewed-by: chegar ! src/windows/classes/java/net/PlainSocketImpl.java + test/java/net/PlainSocketImpl/CustomSocketImplFactory.java Changeset: 82e3150778e0 Author: okutsu Date: 2013-10-02 17:57 +0900 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/82e3150778e0 8022666: java.util.Calendar.set(int,int,int,int,int,int) documentation typo Reviewed-by: peytoia ! src/share/classes/java/util/Calendar.java Changeset: e1b04fd49204 Author: psandoz Date: 2013-10-01 18:20 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e1b04fd49204 8025535: Unsafe typecast in java.util.stream.SortedOps Reviewed-by: mduigou, chegar ! src/share/classes/java/util/stream/SortedOps.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/SortedOpTest.java Changeset: 3bb89c509d59 Author: egahlin Date: 2013-10-01 17:48 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3bb89c509d59 6696975: JTop plugin fails if connected readonly to target JVM Reviewed-by: mchung, jbachorik, sla, sjiang ! src/share/demo/management/JTop/JTop.java Changeset: a6ac824b463d Author: wetmore Date: 2013-10-02 09:38 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a6ac824b463d 8025694: Rename getStrongSecureRandom based on feedback 8014838: getStrongSecureRandom() should require at least one implementation Reviewed-by: mullan, darcy ! src/share/classes/java/security/SecureRandom.java ! src/share/lib/security/java.security-windows ! test/sun/security/provider/SecureRandom/StrongSecureRandom.java Changeset: cb8946eda85b Author: emc Date: 2013-10-02 19:13 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cb8946eda85b 8020981: Update methods of java.lang.reflect.Parameter to throw correct exceptions Summary: Fix behavior of parameter reflection API for malformed class files. Reviewed-by: darcy ! src/share/classes/java/lang/reflect/Executable.java + src/share/classes/java/lang/reflect/MalformedParametersException.java ! src/share/classes/java/lang/reflect/Parameter.java + test/java/lang/reflect/Parameter/BadClassFiles.java Changeset: 811c35a6a58f Author: psandoz Date: 2013-10-02 16:34 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/811c35a6a58f 8025534: Unsafe typecast in java.util.stream.Streams.Nodes 8025538: Unsafe typecast in java.util.stream.SpinedBuffer 8025533: Unsafe typecast in java.util.stream.Streams.RangeIntSpliterator.splitPoint() 8025525: Unsafe typecast in java.util.stream.Node.OfPrimitive.asArray() Reviewed-by: chegar ! src/share/classes/java/util/stream/Node.java ! src/share/classes/java/util/stream/Nodes.java ! src/share/classes/java/util/stream/SortedOps.java ! src/share/classes/java/util/stream/SpinedBuffer.java ! src/share/classes/java/util/stream/Streams.java Changeset: c55a7941050c Author: psandoz Date: 2013-10-03 10:59 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c55a7941050c 8025567: Mark relevant public stream tests as serialization hostile Reviewed-by: alanb ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/ForEachOpTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/SliceOpTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/StreamBuilderTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/ToArrayOpTest.java Changeset: 5d6dc0cba08f Author: dsamersoff Date: 2013-10-03 16:54 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5d6dc0cba08f 8009213: sun/management/jdp/JdpTest.sh fails with exit code 1 Summary: There's no guarantee that the java process has executed far enough to be found by jps when we try to obtain it's pid. Reviewed-by: sla ! test/sun/management/jdp/JdpTest.sh Changeset: 9c32a9490eac Author: kizune Date: 2013-10-03 17:40 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9c32a9490eac 8025738: locale related test fails on langtools mac 10.7 test host Reviewed-by: ksrini ! test/tools/launcher/DiacriticTest.java Changeset: 8d8b809dd294 Author: rfield Date: 2013-10-03 10:23 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8d8b809dd294 8010433: Remove lambda metafactory work-around to JDK-8005119 Summary: Restore invokespecial to lambda metafactory Reviewed-by: ksrini ! src/share/classes/java/lang/invoke/AbstractValidatingLambdaMetafactory.java Changeset: 1b3616c4a836 Author: rfield Date: 2013-10-03 11:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1b3616c4a836 8020849: jdk/lambda/vm/DefaultMethodsTest.java Summary: Bridge generation has been removed from the VM. Fix is to remove tests that no longer make sense. Reviewed-by: ksrini ! test/jdk/lambda/vm/DefaultMethodsTest.java Changeset: 01b8604e8268 Author: rriggs Date: 2013-08-22 10:01 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/01b8604e8268 8024896: Refactor java.time serialization tests into separate subpackage Summary: Move serialization tests to .serial subpackage Reviewed-by: sherman Contributed-by: paul.rank at oracle.com ! test/java/time/tck/java/time/TCKDuration.java ! test/java/time/tck/java/time/TCKInstant.java ! test/java/time/tck/java/time/TCKLocalDate.java ! test/java/time/tck/java/time/TCKLocalDateTime.java ! test/java/time/tck/java/time/TCKLocalTime.java ! test/java/time/tck/java/time/TCKMonthDay.java ! test/java/time/tck/java/time/TCKOffsetDateTime.java ! test/java/time/tck/java/time/TCKOffsetTime.java ! test/java/time/tck/java/time/TCKPeriod.java ! test/java/time/tck/java/time/TCKYear.java ! test/java/time/tck/java/time/TCKYearMonth.java ! test/java/time/tck/java/time/TCKZoneId.java ! test/java/time/tck/java/time/TCKZoneOffset.java ! test/java/time/tck/java/time/TCKZonedDateTime.java ! test/java/time/tck/java/time/chrono/TCKChronoLocalDate.java ! test/java/time/tck/java/time/chrono/TCKChronoLocalDateTime.java - test/java/time/tck/java/time/chrono/TCKChronologySerialization.java + test/java/time/tck/java/time/chrono/serial/TCKChronoLocalDate.java + test/java/time/tck/java/time/chrono/serial/TCKChronoLocalDateTime.java + test/java/time/tck/java/time/chrono/serial/TCKChronologySerialization.java + test/java/time/tck/java/time/serial/TCKDuration.java + test/java/time/tck/java/time/serial/TCKInstant.java + test/java/time/tck/java/time/serial/TCKLocalDate.java + test/java/time/tck/java/time/serial/TCKLocalDateTime.java + test/java/time/tck/java/time/serial/TCKLocalTime.java + test/java/time/tck/java/time/serial/TCKMonthDay.java + test/java/time/tck/java/time/serial/TCKOffsetDateTime.java + test/java/time/tck/java/time/serial/TCKOffsetTime.java + test/java/time/tck/java/time/serial/TCKPeriod.java + test/java/time/tck/java/time/serial/TCKYear.java + test/java/time/tck/java/time/serial/TCKYearMonth.java + test/java/time/tck/java/time/serial/TCKZoneId.java + test/java/time/tck/java/time/serial/TCKZoneOffset.java + test/java/time/tck/java/time/serial/TCKZonedDateTime.java ! test/java/time/tck/java/time/temporal/TCKWeekFields.java + test/java/time/tck/java/time/temporal/serial/TCKWeekFields.java ! test/java/time/tck/java/time/zone/TCKFixedZoneRules.java ! test/java/time/tck/java/time/zone/TCKZoneOffsetTransition.java ! test/java/time/tck/java/time/zone/TCKZoneOffsetTransitionRule.java ! test/java/time/tck/java/time/zone/TCKZoneRules.java + test/java/time/tck/java/time/zone/serial/TCKFixedZoneRules.java + test/java/time/tck/java/time/zone/serial/TCKZoneOffsetTransition.java + test/java/time/tck/java/time/zone/serial/TCKZoneOffsetTransitionRule.java + test/java/time/tck/java/time/zone/serial/TCKZoneRules.java Changeset: e813b58bd6db Author: rriggs Date: 2013-10-03 15:16 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e813b58bd6db 8024427: Missing java.time.chrono serialization tests Summary: Add tests and cleanup existing serialization tests Reviewed-by: sherman ! src/share/classes/java/time/temporal/ValueRange.java ! test/java/time/tck/java/time/AbstractTCKTest.java ! test/java/time/tck/java/time/TCKClock_Fixed.java ! test/java/time/tck/java/time/TCKClock_Offset.java ! test/java/time/tck/java/time/TCKClock_System.java ! test/java/time/tck/java/time/TCKClock_Tick.java ! test/java/time/tck/java/time/chrono/CopticDate.java ! test/java/time/tck/java/time/chrono/TCKChronoZonedDateTime.java ! test/java/time/tck/java/time/chrono/TCKChronology.java ! test/java/time/tck/java/time/chrono/TCKTestServiceLoader.java ! test/java/time/tck/java/time/chrono/serial/TCKChronoLocalDateSerialization.java < test/java/time/tck/java/time/chrono/serial/TCKChronoLocalDate.java ! test/java/time/tck/java/time/chrono/serial/TCKChronoLocalDateTimeSerialization.java < test/java/time/tck/java/time/chrono/serial/TCKChronoLocalDateTime.java + test/java/time/tck/java/time/chrono/serial/TCKChronoZonedDateTimeSerialization.java ! test/java/time/tck/java/time/chrono/serial/TCKChronologySerialization.java + test/java/time/tck/java/time/chrono/serial/TCKCopticSerialization.java + test/java/time/tck/java/time/chrono/serial/TCKEraSerialization.java + test/java/time/tck/java/time/serial/TCKClockSerialization.java ! test/java/time/tck/java/time/serial/TCKDurationSerialization.java < test/java/time/tck/java/time/serial/TCKDuration.java ! test/java/time/tck/java/time/serial/TCKInstantSerialization.java < test/java/time/tck/java/time/serial/TCKInstant.java ! test/java/time/tck/java/time/serial/TCKLocalDateSerialization.java < test/java/time/tck/java/time/serial/TCKLocalDate.java ! test/java/time/tck/java/time/serial/TCKLocalDateTimeSerialization.java < test/java/time/tck/java/time/serial/TCKLocalDateTime.java ! test/java/time/tck/java/time/serial/TCKLocalTimeSerialization.java < test/java/time/tck/java/time/serial/TCKLocalTime.java ! test/java/time/tck/java/time/serial/TCKMonthDaySerialization.java < test/java/time/tck/java/time/serial/TCKMonthDay.java ! test/java/time/tck/java/time/serial/TCKOffsetDateTimeSerialization.java < test/java/time/tck/java/time/serial/TCKOffsetDateTime.java ! test/java/time/tck/java/time/serial/TCKOffsetTimeSerialization.java < test/java/time/tck/java/time/serial/TCKOffsetTime.java ! test/java/time/tck/java/time/serial/TCKPeriodSerialization.java < test/java/time/tck/java/time/serial/TCKPeriod.java ! test/java/time/tck/java/time/serial/TCKYearMonthSerialization.java < test/java/time/tck/java/time/serial/TCKYearMonth.java ! test/java/time/tck/java/time/serial/TCKYearSerialization.java < test/java/time/tck/java/time/serial/TCKYear.java ! test/java/time/tck/java/time/serial/TCKZoneIdSerialization.java < test/java/time/tck/java/time/serial/TCKZoneId.java ! test/java/time/tck/java/time/serial/TCKZoneOffsetSerialization.java < test/java/time/tck/java/time/serial/TCKZoneOffset.java ! test/java/time/tck/java/time/serial/TCKZonedDateTimeSerialization.java < test/java/time/tck/java/time/serial/TCKZonedDateTime.java ! test/java/time/tck/java/time/temporal/TCKJulianFields.java + test/java/time/tck/java/time/temporal/serial/TCKChronoFieldSerialization.java + test/java/time/tck/java/time/temporal/serial/TCKChronoUnitSerialization.java + test/java/time/tck/java/time/temporal/serial/TCKJulianFieldsSerialization.java + test/java/time/tck/java/time/temporal/serial/TCKValueRangeSerialization.java ! test/java/time/tck/java/time/temporal/serial/TCKWeekFieldsSerialization.java < test/java/time/tck/java/time/temporal/serial/TCKWeekFields.java ! test/java/time/tck/java/time/zone/TCKZoneOffsetTransition.java ! test/java/time/tck/java/time/zone/TCKZoneOffsetTransitionRule.java ! test/java/time/tck/java/time/zone/serial/TCKFixedZoneRulesSerialization.java < test/java/time/tck/java/time/zone/serial/TCKFixedZoneRules.java ! test/java/time/tck/java/time/zone/serial/TCKZoneOffsetTransitionRuleSerialization.java < test/java/time/tck/java/time/zone/serial/TCKZoneOffsetTransitionRule.java ! test/java/time/tck/java/time/zone/serial/TCKZoneOffsetTransitionSerialization.java < test/java/time/tck/java/time/zone/serial/TCKZoneOffsetTransition.java ! test/java/time/tck/java/time/zone/serial/TCKZoneRulesSerialization.java < test/java/time/tck/java/time/zone/serial/TCKZoneRules.java ! test/java/time/test/java/time/AbstractTest.java ! test/java/time/test/java/time/TestDuration.java ! test/java/time/test/java/time/temporal/TestDateTimeValueRange.java Changeset: 77ba1e67707c Author: allwin Date: 2013-10-04 15:00 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/77ba1e67707c 8025829: Add java/lang/instrument/RetransformBigClass.sh to problemlist Reviewed-by: sla, jbachorik ! test/ProblemList.txt Changeset: b5aad88cbf12 Author: vinnie Date: 2013-10-04 16:05 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b5aad88cbf12 8008296: keytool utility doesn't support '-importpassword' command Reviewed-by: weijun ! src/share/classes/sun/security/tools/keytool/Main.java ! src/share/classes/sun/security/tools/keytool/Resources.java + test/sun/security/tools/keytool/StorePasswords.java + test/sun/security/tools/keytool/StorePasswordsByShell.sh Changeset: 1de0fac9b962 Author: rriggs Date: 2013-08-29 20:38 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1de0fac9b962 8023764: Optimize Period addition Summary: Optimise plus/minus for common cases Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/LocalDate.java ! src/share/classes/java/time/LocalDateTime.java ! src/share/classes/java/time/ZonedDateTime.java Changeset: 356df1b99976 Author: rriggs Date: 2013-08-30 11:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/356df1b99976 8023763: Rename ChronoDateImpl Summary: Rename ChronoDateImpl to ChronoLocalDateImpl Reviewed-by: sherman Contributed-by: scolebourne at joda.org - src/share/classes/java/time/chrono/ChronoDateImpl.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java + src/share/classes/java/time/chrono/ChronoLocalDateImpl.java ! src/share/classes/java/time/chrono/ChronoLocalDateTimeImpl.java ! src/share/classes/java/time/chrono/HijrahDate.java ! src/share/classes/java/time/chrono/JapaneseDate.java ! src/share/classes/java/time/chrono/MinguoDate.java ! src/share/classes/java/time/chrono/ThaiBuddhistDate.java Changeset: 5d73f7a2db51 Author: rriggs Date: 2013-09-04 15:18 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5d73f7a2db51 8023762: Add ChronoPeriod interface and bind period to Chronology Summary: Make Period ISO-only, adding a Chronology-specific period concept Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/LocalDate.java ! src/share/classes/java/time/Period.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java + src/share/classes/java/time/chrono/ChronoPeriod.java + src/share/classes/java/time/chrono/ChronoPeriodImpl.java ! src/share/classes/java/time/chrono/Chronology.java ! src/share/classes/java/time/chrono/HijrahDate.java ! src/share/classes/java/time/chrono/IsoChronology.java ! src/share/classes/java/time/chrono/JapaneseDate.java ! src/share/classes/java/time/chrono/MinguoDate.java ! src/share/classes/java/time/chrono/Ser.java ! src/share/classes/java/time/chrono/ThaiBuddhistDate.java ! src/share/classes/java/time/temporal/Temporal.java ! test/java/time/tck/java/time/TCKPeriod.java + test/java/time/tck/java/time/chrono/TCKChronoPeriod.java ! test/java/time/tck/java/time/chrono/TCKJapaneseChronology.java ! test/java/time/tck/java/time/chrono/TCKMinguoChronology.java ! test/java/time/tck/java/time/chrono/TCKThaiBuddhistChronology.java ! test/java/time/test/java/time/chrono/TestUmmAlQuraChronology.java Changeset: 79077f1641cc Author: rriggs Date: 2013-09-14 22:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/79077f1641cc 8024835: Change until() to accept any compatible temporal Summary: Method until(Temporal,TemporalUnit) now uses from() to convert; Enhance from() methods where necessary Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/Duration.java ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/LocalDate.java ! src/share/classes/java/time/LocalDateTime.java ! src/share/classes/java/time/LocalTime.java ! src/share/classes/java/time/MonthDay.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/OffsetTime.java ! src/share/classes/java/time/Year.java ! src/share/classes/java/time/YearMonth.java ! src/share/classes/java/time/ZoneOffset.java ! src/share/classes/java/time/ZonedDateTime.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java ! src/share/classes/java/time/chrono/ChronoLocalDateImpl.java ! src/share/classes/java/time/chrono/ChronoLocalDateTime.java ! src/share/classes/java/time/chrono/ChronoLocalDateTimeImpl.java ! src/share/classes/java/time/chrono/ChronoZonedDateTime.java ! src/share/classes/java/time/chrono/ChronoZonedDateTimeImpl.java ! src/share/classes/java/time/temporal/ChronoUnit.java ! src/share/classes/java/time/temporal/IsoFields.java ! src/share/classes/java/time/temporal/Temporal.java ! src/share/classes/java/time/temporal/TemporalUnit.java ! test/java/time/tck/java/time/TCKDuration.java ! test/java/time/tck/java/time/TCKInstant.java ! test/java/time/tck/java/time/TCKLocalDate.java ! test/java/time/tck/java/time/TCKLocalDateTime.java ! test/java/time/tck/java/time/TCKLocalTime.java ! test/java/time/tck/java/time/TCKOffsetDateTime.java ! test/java/time/tck/java/time/TCKOffsetTime.java ! test/java/time/tck/java/time/TCKYear.java ! test/java/time/tck/java/time/TCKYearMonth.java ! test/java/time/tck/java/time/TCKZonedDateTime.java ! test/java/time/tck/java/time/chrono/CopticDate.java ! test/java/time/tck/java/time/temporal/TCKIsoFields.java Changeset: 14a187dc4ffe Author: rriggs Date: 2013-10-04 12:01 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/14a187dc4ffe 8024999: Instant.Parse typo in example Summary: javadoc only fix to correct example to use "." and "Z" Reviewed-by: sherman ! src/share/classes/java/time/Instant.java Changeset: f9c701ba04e7 Author: rriggs Date: 2013-09-14 22:50 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f9c701ba04e7 8024807: Add getChronlogy() to CLDT/CZDT Summary: Alternative to method is clunky and hard to find Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/chrono/ChronoLocalDateTime.java ! src/share/classes/java/time/chrono/ChronoLocalDateTimeImpl.java ! src/share/classes/java/time/chrono/ChronoZonedDateTime.java ! src/share/classes/java/time/chrono/ChronoZonedDateTimeImpl.java ! test/java/time/tck/java/time/chrono/TCKChronoLocalDateTime.java ! test/java/time/tck/java/time/chrono/TCKChronoZonedDateTime.java Changeset: e12b912ab98e Author: rriggs Date: 2013-09-14 22:54 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e12b912ab98e 8024834: Better return type for TemporalField resolve Summary: Allow resolve method to return more than just ChronoLocalDate Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/format/Parsed.java ! src/share/classes/java/time/temporal/TemporalField.java ! test/java/time/tck/java/time/format/TCKDateTimeParseResolver.java Changeset: 7736abdf0805 Author: rfield Date: 2013-10-04 09:54 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7736abdf0805 8021186: jdk/lambda/vm/DefaultMethodsTest.java fails Summary: remove DefaultMethodsTest from jdk/test/problemList.txt Reviewed-by: mduigou ! test/ProblemList.txt Changeset: 66181f7991bd Author: bpatel Date: 2013-10-04 15:25 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/66181f7991bd 8025741: Fix jdk/make/docs/Makefile to point to correct docs URL for JDK 8. Reviewed-by: tbell ! make/docs/Makefile Changeset: 7d2112abbb1d Author: coffeys Date: 2013-10-04 16:27 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7d2112abbb1d 8016271: wsimport -clientjar does not create portable jars on Windows due to hardcoded backslash Reviewed-by: mkos, chegar + test/javax/xml/ws/clientjar/TestService.java + test/javax/xml/ws/clientjar/TestWsImport.java Changeset: 44da760eed4b Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/44da760eed4b 8024761: JSR 292 improve performance of generic invocation Summary: use a per-MH one element cache for MH.asType to speed up MH.invoke; also cache enough MH constants to cache LMF.metafactory Reviewed-by: twisti ! src/share/classes/java/lang/invoke/BoundMethodHandle.java ! src/share/classes/java/lang/invoke/CallSite.java - src/share/classes/java/lang/invoke/InvokeGeneric.java ! src/share/classes/java/lang/invoke/Invokers.java ! src/share/classes/java/lang/invoke/LambdaForm.java ! src/share/classes/java/lang/invoke/MemberName.java ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodHandleNatives.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/invoke/MethodTypeForm.java Changeset: 97d5cc1e7586 Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/97d5cc1e7586 8001105: findVirtual of Object[].clone produces internal error Summary: Replicate JVM logic for access control that makes Object.clone appear public when applied to an array type. Reviewed-by: twisti ! src/share/classes/java/lang/invoke/MethodHandles.java ! test/java/lang/invoke/MethodHandlesTest.java Changeset: 91535ade7349 Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/91535ade7349 8019417: JSR 292 javadoc should clarify method handle arity limits Summary: clarification of erroneous reading of spec. that led to 7194534 Reviewed-by: twisti, darcy ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! test/java/lang/invoke/BigArityTest.java Changeset: d391e062b983 Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d391e062b983 8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException Summary: Document error conditions that may occur when calling a "spreader" method handle. Use IAE in all cases. Reviewed-by: twisti, vlivanov ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! test/java/lang/invoke/JavaDocExamplesTest.java Changeset: acdf5bf1a918 Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/acdf5bf1a918 8001108: an attempt to use "" as a method name should elicit NoSuchMethodException Summary: add an explicit check for leading "<", upgrade the unit tests Reviewed-by: twisti, darcy ! src/share/classes/java/lang/invoke/MethodHandles.java ! test/java/lang/invoke/JavaDocExamplesTest.java ! test/java/lang/invoke/MethodHandlesTest.java Changeset: df6236da299d Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/df6236da299d 8024599: JSR 292 direct method handles need to respect initialization rules for static members Summary: Align MH semantic with bytecode behavior of constructor and static member accesses, regarding invocation. Reviewed-by: twisti, darcy, abuckley, vlivanov ! src/share/classes/java/lang/invoke/MethodHandles.java + test/java/lang/invoke/CallStaticInitOrder.java Changeset: eb3cfc69c16e Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/eb3cfc69c16e 8001110: method handles should have a collectArguments transform, generalizing asCollector Summary: promote an existing private method; make unit tests on all argument positions to arity 10 with mixed types Reviewed-by: twisti, vlivanov ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/sun/invoke/util/ValueConversions.java ! test/java/lang/invoke/JavaDocExamplesTest.java ! test/java/lang/invoke/MethodHandlesTest.java Changeset: b670477bff8f Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b670477bff8f 8025112: JSR 292 spec updates for security manager and caller sensitivity Summary: align CONSTANT_MethodHandle and Lookup.find* API calls, clarify security manager & @CallerSensitive interactions Reviewed-by: mchung, twisti ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodHandleInfo.java ! src/share/classes/java/lang/invoke/MethodHandleProxies.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! test/java/lang/invoke/TestPrivateMember.java Changeset: 6623c675e734 Author: jrose Date: 2013-10-05 05:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6623c675e734 8024438: JSR 292 API specification maintenance for JDK 8 Summary: add wildcard to unreflectConstructor, various clarifications and minor edits Reviewed-by: mchung, darcy, twisti ! src/share/classes/java/lang/invoke/BoundMethodHandle.java ! src/share/classes/java/lang/invoke/CallSite.java ! src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java ! src/share/classes/java/lang/invoke/LambdaForm.java ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleInfo.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/invoke/MethodType.java ! src/share/classes/java/lang/invoke/MutableCallSite.java ! src/share/classes/java/lang/invoke/SwitchPoint.java ! src/share/classes/sun/invoke/WrapperInstance.java ! src/share/classes/sun/invoke/util/VerifyAccess.java ! src/share/classes/sun/invoke/util/VerifyType.java ! test/java/lang/invoke/AccessControlTest.java ! test/java/lang/invoke/MethodHandlesTest.java ! test/java/lang/invoke/RevealDirectTest.java Changeset: 0ac9dc315071 Author: alanb Date: 2013-10-07 11:48 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0ac9dc315071 8025983: Typo in Javadoc of Files.isRegularFile() Reviewed-by: mchung, chegar ! src/share/classes/java/nio/file/Files.java ! src/share/classes/java/nio/file/Path.java Changeset: f0ad3e2918b4 Author: henryjen Date: 2013-10-07 11:25 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f0ad3e2918b4 8025968: Integrate test improvements made in lambda repo Reviewed-by: psandoz ! test/java/util/stream/bootlib/java/util/stream/OpTestCase.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/ExplodeOpTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/TabulatorsTest.java Changeset: 0cffe1dab0bf Author: henryjen Date: 2013-10-07 15:18 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0cffe1dab0bf 8026009: Changes for 8025968 break all stream tests Reviewed-by: mduigou ! test/java/util/stream/bootlib/java/util/stream/OpTestCase.java Changeset: 0d5f4f1782e8 Author: xuelei Date: 2013-10-07 18:46 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0d5f4f1782e8 6956398: make ephemeral DH key match the length of the certificate key Reviewed-by: weijun ! src/share/classes/sun/security/ssl/ServerHandshaker.java + test/sun/security/ssl/com/sun/net/ssl/internal/ssl/DHKeyExchange/DHEKeySizing.java Changeset: b90dcd1a71bf Author: psandoz Date: 2013-10-08 11:17 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b90dcd1a71bf 8025136: SplittableRandom enchancements Reviewed-by: psandoz, martin Contributed-by: Doug Lea
, Guy Steele ! src/share/classes/java/util/Random.java ! src/share/classes/java/util/SplittableRandom.java ! src/share/classes/java/util/concurrent/ThreadLocalRandom.java Changeset: 95bb56c61276 Author: alanb Date: 2013-10-08 10:49 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/95bb56c61276 8024788: (fs) Files.readAllBytes uses FileChannel which may not be supported by all providers Reviewed-by: chegar ! src/share/classes/java/nio/file/Files.java ! test/java/nio/file/Files/BytesAndLines.java Changeset: 748207aa9620 Author: lana Date: 2013-10-08 14:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/748207aa9620 Merge ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk - src/share/classes/java/lang/invoke/InvokeGeneric.java - src/share/classes/java/time/chrono/ChronoDateImpl.java - test/java/time/tck/java/time/chrono/TCKChronologySerialization.java Changeset: 575d4bc3bcae Author: lana Date: 2013-10-11 03:06 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/575d4bc3bcae Merge ! makefiles/CreateJars.gmk - src/share/classes/java/lang/invoke/InvokeGeneric.java - src/share/classes/java/time/chrono/ChronoDateImpl.java - test/java/time/tck/java/time/chrono/TCKChronologySerialization.java Changeset: 28191d3ff921 Author: erikj Date: 2013-10-09 16:22 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/28191d3ff921 8026144: Missing mkdir in Images.gmk Reviewed-by: tbell ! makefiles/Images.gmk Changeset: 86df2e879eca Author: tbell Date: 2013-10-09 18:50 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/86df2e879eca 8023611: Win32 and win64: Remove all the WARNINGS in JDK 8 builds for Windows 2008 and MSVS 2010 SP1 Reviewed-by: erikj ! make/common/shared/Compiler-msvc.gmk ! make/common/shared/Defs-versions.gmk ! make/common/shared/Sanity.gmk Changeset: 98d98ec01f07 Author: tbell Date: 2013-10-09 23:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/98d98ec01f07 Merge Changeset: 9c60860b1812 Author: ihse Date: 2013-10-10 15:06 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9c60860b1812 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! makefiles/BuildJdk.gmk ! makefiles/Bundles.gmk ! makefiles/CompileDemos.gmk ! makefiles/CompileJavaClasses.gmk ! makefiles/CompileLaunchers.gmk ! makefiles/CompileNativeLibraries.gmk ! makefiles/CopyFiles.gmk ! makefiles/CopyIntoClasses.gmk ! makefiles/CopySamples.gmk ! makefiles/CreateJars.gmk ! makefiles/GendataBreakIterator.gmk ! makefiles/GendataFontConfig.gmk ! makefiles/GendataHtml32dtd.gmk ! makefiles/GendataTZDB.gmk ! makefiles/GendataTimeZone.gmk ! makefiles/GenerateClasses.gmk ! makefiles/GenerateData.gmk ! makefiles/GenerateJavaSources.gmk ! makefiles/GensrcBuffer.gmk ! makefiles/GensrcCLDR.gmk ! makefiles/GensrcCharacterData.gmk ! makefiles/GensrcCharsetCoder.gmk ! makefiles/GensrcCharsetMapping.gmk ! makefiles/GensrcExceptions.gmk ! makefiles/GensrcIcons.gmk ! makefiles/GensrcJDWP.gmk ! makefiles/GensrcJObjC.gmk ! makefiles/GensrcLocaleDataMetaInfo.gmk ! makefiles/GensrcMisc.gmk ! makefiles/GensrcProperties.gmk ! makefiles/GensrcSwing.gmk ! makefiles/GensrcX11Wrappers.gmk ! makefiles/Images.gmk ! makefiles/Import.gmk ! makefiles/Makefile ! makefiles/PatchList.solaris ! makefiles/ProfileNames.gmk ! makefiles/Profiles.gmk ! makefiles/Setup.gmk ! makefiles/SignJars.gmk ! makefiles/Tools.gmk ! makefiles/jpda/jdwp/jdwp.spec ! makefiles/jprt.gmk ! makefiles/jprt.properties ! makefiles/mapfiles/libawt/mapfile-mawt-vers ! makefiles/mapfiles/libawt/mapfile-vers ! makefiles/mapfiles/libawt/mapfile-vers-linux ! makefiles/mapfiles/libawt_headless/mapfile-vers ! makefiles/mapfiles/libawt_xawt/mapfile-vers ! makefiles/mapfiles/libfontmanager/mapfile-vers ! makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk ! makefiles/mapfiles/libj2pcsc/mapfile-vers ! makefiles/mapfiles/libjdga/mapfile-vers ! makefiles/mapfiles/libjli/mapfile-vers ! makefiles/mapfiles/libverify/mapfile-vers ! makefiles/profile-includes.txt ! makefiles/profile-rtjar-includes.txt ! makefiles/scripts/addNotices.sh ! makefiles/scripts/genCharsetProvider.sh ! makefiles/scripts/genExceptions.sh ! makefiles/scripts/localelist.sh ! makefiles/sun/awt/ToBin.java Changeset: cf3ee0e2c1a5 Author: erikj Date: 2013-10-14 11:36 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cf3ee0e2c1a5 8025612: rt.jar still has old specification value in the manifest Reviewed-by: alanb, dholmes, tbell, wetmore ! make/tools/manifest.mf Changeset: 986acae7efe9 Author: ihse Date: 2013-10-15 13:06 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/986acae7efe9 8001933: Move Gensrc*.gmk and Gendata*.gmk into separate directories. Reviewed-by: erikj, tbell ! makefiles/BuildJdk.gmk ! makefiles/CreateJars.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk ! makefiles/GenerateData.gmk - makefiles/GenerateJavaSources.gmk + makefiles/GenerateSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk + makefiles/gendata/GendataBreakIterator.gmk + makefiles/gendata/GendataFontConfig.gmk + makefiles/gendata/GendataHtml32dtd.gmk + makefiles/gendata/GendataTZDB.gmk + makefiles/gendata/GendataTimeZone.gmk + makefiles/gensrc/GensrcBuffer.gmk + makefiles/gensrc/GensrcCLDR.gmk + makefiles/gensrc/GensrcCharacterData.gmk + makefiles/gensrc/GensrcCharsetCoder.gmk + makefiles/gensrc/GensrcCharsetMapping.gmk + makefiles/gensrc/GensrcExceptions.gmk + makefiles/gensrc/GensrcIcons.gmk + makefiles/gensrc/GensrcJDWP.gmk + makefiles/gensrc/GensrcJObjC.gmk + makefiles/gensrc/GensrcLocaleDataMetaInfo.gmk + makefiles/gensrc/GensrcMisc.gmk + makefiles/gensrc/GensrcProperties.gmk + makefiles/gensrc/GensrcSwing.gmk + makefiles/gensrc/GensrcX11Wrappers.gmk Changeset: eef656e1bdeb Author: ksrini Date: 2013-10-16 07:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/eef656e1bdeb 8026500: [infra] remove extraneous docs in solaris images Reviewed-by: erikj, mchung, tbell ! makefiles/Images.gmk - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 Changeset: f002f5f3a16c Author: katleman Date: 2013-10-16 12:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f002f5f3a16c Merge ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk ! makefiles/Profiles.gmk ! makefiles/profile-includes.txt - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 Changeset: bef8f6d429de Author: cl Date: 2013-10-17 09:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bef8f6d429de Added tag jdk8-b112 for changeset f002f5f3a16c ! .hgtags Changeset: f1e31376f419 Author: robm Date: 2013-10-09 00:10 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f1e31376f419 7180557: InetAddress.getLocalHost throws UnknownHostException on java7u5 on OSX webbugs Reviewed-by: chegar, dsamersoff ! src/solaris/native/java/net/Inet4AddressImpl.c ! src/solaris/native/java/net/Inet6AddressImpl.c Changeset: 2ea162b2ff55 Author: alanb Date: 2013-10-09 09:20 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2ea162b2ff55 8008662: Add @jdk.Exported to JDK-specific/exported APIs Reviewed-by: chegar, vinnie, dfuchs, mchung, mullan, darcy ! src/share/classes/com/sun/jdi/AbsentInformationException.java ! src/share/classes/com/sun/jdi/Accessible.java ! src/share/classes/com/sun/jdi/ArrayReference.java ! src/share/classes/com/sun/jdi/ArrayType.java ! src/share/classes/com/sun/jdi/BooleanType.java ! src/share/classes/com/sun/jdi/BooleanValue.java ! src/share/classes/com/sun/jdi/Bootstrap.java ! src/share/classes/com/sun/jdi/ByteType.java ! src/share/classes/com/sun/jdi/ByteValue.java ! src/share/classes/com/sun/jdi/CharType.java ! src/share/classes/com/sun/jdi/CharValue.java ! src/share/classes/com/sun/jdi/ClassLoaderReference.java ! src/share/classes/com/sun/jdi/ClassNotLoadedException.java ! src/share/classes/com/sun/jdi/ClassNotPreparedException.java ! src/share/classes/com/sun/jdi/ClassObjectReference.java ! src/share/classes/com/sun/jdi/ClassType.java ! src/share/classes/com/sun/jdi/DoubleType.java ! src/share/classes/com/sun/jdi/DoubleValue.java ! src/share/classes/com/sun/jdi/Field.java ! src/share/classes/com/sun/jdi/FloatType.java ! src/share/classes/com/sun/jdi/FloatValue.java ! src/share/classes/com/sun/jdi/IncompatibleThreadStateException.java ! src/share/classes/com/sun/jdi/InconsistentDebugInfoException.java ! src/share/classes/com/sun/jdi/IntegerType.java ! src/share/classes/com/sun/jdi/IntegerValue.java ! src/share/classes/com/sun/jdi/InterfaceType.java ! src/share/classes/com/sun/jdi/InternalException.java ! src/share/classes/com/sun/jdi/InvalidCodeIndexException.java ! src/share/classes/com/sun/jdi/InvalidLineNumberException.java ! src/share/classes/com/sun/jdi/InvalidStackFrameException.java ! src/share/classes/com/sun/jdi/InvalidTypeException.java ! src/share/classes/com/sun/jdi/InvocationException.java ! src/share/classes/com/sun/jdi/JDIPermission.java ! src/share/classes/com/sun/jdi/LocalVariable.java ! src/share/classes/com/sun/jdi/Locatable.java ! src/share/classes/com/sun/jdi/Location.java ! src/share/classes/com/sun/jdi/LongType.java ! src/share/classes/com/sun/jdi/LongValue.java ! src/share/classes/com/sun/jdi/Method.java ! src/share/classes/com/sun/jdi/Mirror.java ! src/share/classes/com/sun/jdi/MonitorInfo.java ! src/share/classes/com/sun/jdi/NativeMethodException.java ! src/share/classes/com/sun/jdi/ObjectCollectedException.java ! src/share/classes/com/sun/jdi/ObjectReference.java ! src/share/classes/com/sun/jdi/PathSearchingVirtualMachine.java ! src/share/classes/com/sun/jdi/PrimitiveType.java ! src/share/classes/com/sun/jdi/PrimitiveValue.java ! src/share/classes/com/sun/jdi/ReferenceType.java ! src/share/classes/com/sun/jdi/ShortType.java ! src/share/classes/com/sun/jdi/ShortValue.java ! src/share/classes/com/sun/jdi/StackFrame.java ! src/share/classes/com/sun/jdi/StringReference.java ! src/share/classes/com/sun/jdi/ThreadGroupReference.java ! src/share/classes/com/sun/jdi/ThreadReference.java ! src/share/classes/com/sun/jdi/Type.java ! src/share/classes/com/sun/jdi/TypeComponent.java ! src/share/classes/com/sun/jdi/VMCannotBeModifiedException.java ! src/share/classes/com/sun/jdi/VMDisconnectedException.java ! src/share/classes/com/sun/jdi/VMMismatchException.java ! src/share/classes/com/sun/jdi/VMOutOfMemoryException.java ! src/share/classes/com/sun/jdi/Value.java ! src/share/classes/com/sun/jdi/VirtualMachine.java ! src/share/classes/com/sun/jdi/VirtualMachineManager.java ! src/share/classes/com/sun/jdi/VoidType.java ! src/share/classes/com/sun/jdi/VoidValue.java ! src/share/classes/com/sun/jdi/connect/AttachingConnector.java ! src/share/classes/com/sun/jdi/connect/Connector.java ! src/share/classes/com/sun/jdi/connect/IllegalConnectorArgumentsException.java ! src/share/classes/com/sun/jdi/connect/LaunchingConnector.java ! src/share/classes/com/sun/jdi/connect/ListeningConnector.java ! src/share/classes/com/sun/jdi/connect/Transport.java ! src/share/classes/com/sun/jdi/connect/TransportTimeoutException.java ! src/share/classes/com/sun/jdi/connect/VMStartException.java + src/share/classes/com/sun/jdi/connect/package-info.java - src/share/classes/com/sun/jdi/connect/package.html ! src/share/classes/com/sun/jdi/connect/spi/ClosedConnectionException.java ! src/share/classes/com/sun/jdi/connect/spi/Connection.java ! src/share/classes/com/sun/jdi/connect/spi/TransportService.java + src/share/classes/com/sun/jdi/connect/spi/package-info.java - src/share/classes/com/sun/jdi/connect/spi/package.html ! src/share/classes/com/sun/jdi/event/AccessWatchpointEvent.java ! src/share/classes/com/sun/jdi/event/BreakpointEvent.java ! src/share/classes/com/sun/jdi/event/ClassPrepareEvent.java ! src/share/classes/com/sun/jdi/event/ClassUnloadEvent.java ! src/share/classes/com/sun/jdi/event/Event.java ! src/share/classes/com/sun/jdi/event/EventIterator.java ! src/share/classes/com/sun/jdi/event/EventQueue.java ! src/share/classes/com/sun/jdi/event/EventSet.java ! src/share/classes/com/sun/jdi/event/ExceptionEvent.java ! src/share/classes/com/sun/jdi/event/LocatableEvent.java ! src/share/classes/com/sun/jdi/event/MethodEntryEvent.java ! src/share/classes/com/sun/jdi/event/MethodExitEvent.java ! src/share/classes/com/sun/jdi/event/ModificationWatchpointEvent.java ! src/share/classes/com/sun/jdi/event/MonitorContendedEnterEvent.java ! src/share/classes/com/sun/jdi/event/MonitorContendedEnteredEvent.java ! src/share/classes/com/sun/jdi/event/MonitorWaitEvent.java ! src/share/classes/com/sun/jdi/event/MonitorWaitedEvent.java ! src/share/classes/com/sun/jdi/event/StepEvent.java ! src/share/classes/com/sun/jdi/event/ThreadDeathEvent.java ! src/share/classes/com/sun/jdi/event/ThreadStartEvent.java ! src/share/classes/com/sun/jdi/event/VMDeathEvent.java ! src/share/classes/com/sun/jdi/event/VMDisconnectEvent.java ! src/share/classes/com/sun/jdi/event/VMStartEvent.java ! src/share/classes/com/sun/jdi/event/WatchpointEvent.java + src/share/classes/com/sun/jdi/event/package-info.java - src/share/classes/com/sun/jdi/event/package.html + src/share/classes/com/sun/jdi/package-info.java - src/share/classes/com/sun/jdi/package.html ! src/share/classes/com/sun/jdi/request/AccessWatchpointRequest.java ! src/share/classes/com/sun/jdi/request/BreakpointRequest.java ! src/share/classes/com/sun/jdi/request/ClassPrepareRequest.java ! src/share/classes/com/sun/jdi/request/ClassUnloadRequest.java ! src/share/classes/com/sun/jdi/request/DuplicateRequestException.java ! src/share/classes/com/sun/jdi/request/EventRequest.java ! src/share/classes/com/sun/jdi/request/EventRequestManager.java ! src/share/classes/com/sun/jdi/request/ExceptionRequest.java ! src/share/classes/com/sun/jdi/request/InvalidRequestStateException.java ! src/share/classes/com/sun/jdi/request/MethodEntryRequest.java ! src/share/classes/com/sun/jdi/request/MethodExitRequest.java ! src/share/classes/com/sun/jdi/request/ModificationWatchpointRequest.java ! src/share/classes/com/sun/jdi/request/MonitorContendedEnterRequest.java ! src/share/classes/com/sun/jdi/request/MonitorContendedEnteredRequest.java ! src/share/classes/com/sun/jdi/request/MonitorWaitRequest.java ! src/share/classes/com/sun/jdi/request/MonitorWaitedRequest.java ! src/share/classes/com/sun/jdi/request/StepRequest.java ! src/share/classes/com/sun/jdi/request/ThreadDeathRequest.java ! src/share/classes/com/sun/jdi/request/ThreadStartRequest.java ! src/share/classes/com/sun/jdi/request/VMDeathRequest.java ! src/share/classes/com/sun/jdi/request/WatchpointRequest.java + src/share/classes/com/sun/jdi/request/package-info.java - src/share/classes/com/sun/jdi/request/package.html ! src/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java ! src/share/classes/com/sun/management/GarbageCollectorMXBean.java ! src/share/classes/com/sun/management/GcInfo.java ! src/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java ! src/share/classes/com/sun/management/OperatingSystemMXBean.java ! src/share/classes/com/sun/management/ThreadMXBean.java ! src/share/classes/com/sun/management/UnixOperatingSystemMXBean.java ! src/share/classes/com/sun/management/VMOption.java + src/share/classes/com/sun/management/package-info.java - src/share/classes/com/sun/management/package.html ! src/share/classes/com/sun/net/httpserver/Authenticator.java ! src/share/classes/com/sun/net/httpserver/BasicAuthenticator.java ! src/share/classes/com/sun/net/httpserver/Filter.java ! src/share/classes/com/sun/net/httpserver/Headers.java ! src/share/classes/com/sun/net/httpserver/HttpContext.java ! src/share/classes/com/sun/net/httpserver/HttpExchange.java ! src/share/classes/com/sun/net/httpserver/HttpHandler.java ! src/share/classes/com/sun/net/httpserver/HttpPrincipal.java ! src/share/classes/com/sun/net/httpserver/HttpServer.java ! src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java ! src/share/classes/com/sun/net/httpserver/HttpsExchange.java ! src/share/classes/com/sun/net/httpserver/HttpsParameters.java ! src/share/classes/com/sun/net/httpserver/HttpsServer.java ! src/share/classes/com/sun/net/httpserver/package-info.java ! src/share/classes/com/sun/net/httpserver/spi/HttpServerProvider.java ! src/share/classes/com/sun/net/httpserver/spi/package-info.java ! src/share/classes/com/sun/nio/sctp/AbstractNotificationHandler.java ! src/share/classes/com/sun/nio/sctp/Association.java ! src/share/classes/com/sun/nio/sctp/AssociationChangeNotification.java ! src/share/classes/com/sun/nio/sctp/HandlerResult.java ! src/share/classes/com/sun/nio/sctp/IllegalReceiveException.java ! src/share/classes/com/sun/nio/sctp/IllegalUnbindException.java ! src/share/classes/com/sun/nio/sctp/InvalidStreamException.java ! src/share/classes/com/sun/nio/sctp/MessageInfo.java ! src/share/classes/com/sun/nio/sctp/Notification.java ! src/share/classes/com/sun/nio/sctp/NotificationHandler.java ! src/share/classes/com/sun/nio/sctp/PeerAddressChangeNotification.java ! src/share/classes/com/sun/nio/sctp/SctpChannel.java ! src/share/classes/com/sun/nio/sctp/SctpMultiChannel.java ! src/share/classes/com/sun/nio/sctp/SctpServerChannel.java ! src/share/classes/com/sun/nio/sctp/SctpSocketOption.java ! src/share/classes/com/sun/nio/sctp/SctpStandardSocketOptions.java ! src/share/classes/com/sun/nio/sctp/SendFailedNotification.java ! src/share/classes/com/sun/nio/sctp/ShutdownNotification.java ! src/share/classes/com/sun/nio/sctp/package-info.java ! src/share/classes/com/sun/security/auth/LdapPrincipal.java ! src/share/classes/com/sun/security/auth/NTDomainPrincipal.java ! src/share/classes/com/sun/security/auth/NTNumericCredential.java ! src/share/classes/com/sun/security/auth/NTSid.java ! src/share/classes/com/sun/security/auth/NTSidDomainPrincipal.java ! src/share/classes/com/sun/security/auth/NTSidGroupPrincipal.java ! src/share/classes/com/sun/security/auth/NTSidPrimaryGroupPrincipal.java ! src/share/classes/com/sun/security/auth/NTSidUserPrincipal.java ! src/share/classes/com/sun/security/auth/NTUserPrincipal.java ! src/share/classes/com/sun/security/auth/PolicyFile.java ! src/share/classes/com/sun/security/auth/PrincipalComparator.java ! src/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java ! src/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java ! src/share/classes/com/sun/security/auth/SolarisPrincipal.java ! src/share/classes/com/sun/security/auth/UnixNumericGroupPrincipal.java ! src/share/classes/com/sun/security/auth/UnixNumericUserPrincipal.java ! src/share/classes/com/sun/security/auth/UnixPrincipal.java ! src/share/classes/com/sun/security/auth/UserPrincipal.java ! src/share/classes/com/sun/security/auth/X500Principal.java ! src/share/classes/com/sun/security/auth/callback/DialogCallbackHandler.java ! src/share/classes/com/sun/security/auth/callback/TextCallbackHandler.java + src/share/classes/com/sun/security/auth/callback/package-info.java ! src/share/classes/com/sun/security/auth/login/ConfigFile.java + src/share/classes/com/sun/security/auth/login/package-info.java ! src/share/classes/com/sun/security/auth/module/JndiLoginModule.java ! src/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java ! src/share/classes/com/sun/security/auth/module/Krb5LoginModule.java ! src/share/classes/com/sun/security/auth/module/LdapLoginModule.java ! src/share/classes/com/sun/security/auth/module/NTLoginModule.java ! src/share/classes/com/sun/security/auth/module/NTSystem.java ! src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java ! src/share/classes/com/sun/security/auth/module/SolarisSystem.java ! src/share/classes/com/sun/security/auth/module/UnixLoginModule.java ! src/share/classes/com/sun/security/auth/module/UnixSystem.java + src/share/classes/com/sun/security/auth/module/package-info.java + src/share/classes/com/sun/security/auth/package-info.java ! src/share/classes/com/sun/security/jgss/AuthorizationDataEntry.java ! src/share/classes/com/sun/security/jgss/ExtendedGSSContext.java ! src/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java ! src/share/classes/com/sun/security/jgss/GSSUtil.java ! src/share/classes/com/sun/security/jgss/InquireSecContextPermission.java ! src/share/classes/com/sun/security/jgss/InquireType.java + src/share/classes/com/sun/security/jgss/package-info.java ! src/share/classes/com/sun/tools/attach/AgentInitializationException.java ! src/share/classes/com/sun/tools/attach/AgentLoadException.java ! src/share/classes/com/sun/tools/attach/AttachNotSupportedException.java ! src/share/classes/com/sun/tools/attach/AttachPermission.java ! src/share/classes/com/sun/tools/attach/VirtualMachine.java ! src/share/classes/com/sun/tools/attach/VirtualMachineDescriptor.java + src/share/classes/com/sun/tools/attach/package-info.java - src/share/classes/com/sun/tools/attach/package.html ! src/share/classes/com/sun/tools/attach/spi/AttachProvider.java + src/share/classes/com/sun/tools/attach/spi/package-info.java - src/share/classes/com/sun/tools/attach/spi/package.html ! src/share/classes/com/sun/tools/jconsole/JConsoleContext.java ! src/share/classes/com/sun/tools/jconsole/JConsolePlugin.java + src/share/classes/com/sun/tools/jconsole/package-info.java - src/share/classes/com/sun/tools/jconsole/package.html ! src/solaris/classes/com/sun/management/OSMBeanFactory.java Changeset: 91a752e3d50b Author: vinnie Date: 2013-10-09 10:48 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/91a752e3d50b 8008171: Refactor KeyStore.DomainLoadStoreParameter as a standalone class Reviewed-by: mullan, weijun + src/share/classes/java/security/DomainLoadStoreParameter.java ! src/share/classes/java/security/KeyStore.java ! src/share/classes/sun/security/provider/DomainKeyStore.java ! test/sun/security/provider/KeyStore/DKSTest.java Changeset: 1cd20806fd5c Author: psandoz Date: 2013-10-09 15:19 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1cd20806fd5c 8020061: Clarify reporting characteristics between splits Reviewed-by: alanb, chegar ! src/share/classes/java/util/Spliterator.java Changeset: cf6e39cfdf50 Author: mchung Date: 2013-10-09 06:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cf6e39cfdf50 8026027: Level.parse should return the custom Level instance instead of the mirrored Level Reviewed-by: dfuchs, chegar ! src/share/classes/java/util/logging/Level.java + test/java/util/logging/Level/CustomLevel.java + test/java/util/logging/Level/myresource.properties Changeset: e3b70e601c1c Author: rriggs Date: 2013-10-09 11:02 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e3b70e601c1c 8024612: java/time/tck/java/time/format/TCKDateTimeFormatters.java failed Summary: The test should be using the Locale.Category.FORMAT to verify the test data Reviewed-by: lancea ! test/java/time/tck/java/time/format/TCKDateTimeFormatters.java Changeset: 09e2a73aa1dc Author: rriggs Date: 2013-09-26 15:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/09e2a73aa1dc 8025718: Enhance error messages for parsing Summary: Add values and types to exception messages Reviewed-by: lancea Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/DayOfWeek.java ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/LocalDate.java ! src/share/classes/java/time/LocalDateTime.java ! src/share/classes/java/time/LocalTime.java ! src/share/classes/java/time/Month.java ! src/share/classes/java/time/MonthDay.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/OffsetTime.java ! src/share/classes/java/time/Year.java ! src/share/classes/java/time/YearMonth.java ! src/share/classes/java/time/ZoneId.java ! src/share/classes/java/time/ZoneOffset.java ! src/share/classes/java/time/ZonedDateTime.java ! src/share/classes/java/time/format/Parsed.java ! test/java/time/test/java/time/format/TestDateTimeFormatter.java Changeset: c070001c4f60 Author: henryjen Date: 2013-10-09 09:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c070001c4f60 8023524: Mechanism to dump generated lambda classes / log lambda code generation Reviewed-by: plevart, mchung, forax, jjb Contributed-by: brian.goetz at oracle.com, henry.jen at oracle.com ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java + src/share/classes/java/lang/invoke/ProxyClassesDumper.java + test/java/lang/invoke/lambda/LogGeneratedClassesTest.java Changeset: d42fe440bda8 Author: rriggs Date: 2013-10-09 13:34 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d42fe440bda8 8024076: Incorrect 2 -> 4 year parsing and resolution in DateTimeFormatter Summary: Add appendValueReduced method based on a ChronoLocalDate to provide context for the value Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/format/DateTimeFormatterBuilder.java ! test/java/time/tck/java/time/format/TCKDateTimeFormatterBuilder.java ! test/java/time/test/java/time/format/TestDateTimeFormatterBuilder.java ! test/java/time/test/java/time/format/TestReducedParser.java ! test/java/time/test/java/time/format/TestReducedPrinter.java Changeset: b86e6700266e Author: bpb Date: 2013-10-09 11:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b86e6700266e 8016252: More defensive HashSet.readObject Summary: Add data validation checks in readObject(). Reviewed-by: alanb, mduigou, chegar Contributed-by: Brian Burkhalter ! src/share/classes/java/util/HashSet.java + test/java/util/HashSet/Serialization.java Changeset: 1597066b58ee Author: valeriep Date: 2013-10-08 11:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1597066b58ee 7196382: PKCS11 provider should support 2048-bit DH Summary: Query and enforce range checking using the values from native PKCS11 library. Reviewed-by: xuelei ! src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java ! src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java + test/sun/security/pkcs11/KeyPairGenerator/TestDH2048.java Changeset: 3da8be8d13bf Author: valeriep Date: 2013-10-08 11:17 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3da8be8d13bf 8012900: CICO ignores AAD in GCM mode Summary: Change GCM decryption to not return result until tag verification passed Reviewed-by: xuelei ! src/share/classes/com/sun/crypto/provider/CipherBlockChaining.java ! src/share/classes/com/sun/crypto/provider/CipherCore.java ! src/share/classes/com/sun/crypto/provider/CipherFeedback.java ! src/share/classes/com/sun/crypto/provider/CounterMode.java ! src/share/classes/com/sun/crypto/provider/ElectronicCodeBook.java ! src/share/classes/com/sun/crypto/provider/FeedbackCipher.java ! src/share/classes/com/sun/crypto/provider/GCTR.java ! src/share/classes/com/sun/crypto/provider/GaloisCounterMode.java ! src/share/classes/com/sun/crypto/provider/OutputFeedback.java ! src/share/classes/com/sun/crypto/provider/PCBC.java ! src/share/classes/javax/crypto/CipherSpi.java + test/com/sun/crypto/provider/Cipher/AES/TestCICOWithGCMAndAAD.java Changeset: f4305254f92f Author: valeriep Date: 2013-10-08 11:35 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f4305254f92f 8014374: Cannot initialize "AES/GCM/NoPadding" on wrap/unseal on solaris with OracleUcrypto Summary: Removed OracleUcrypto provider regression tests from OpenJDK Reviewed-by: xuelei - test/com/oracle/security/ucrypto/TestAES.java - test/com/oracle/security/ucrypto/TestDigest.java - test/com/oracle/security/ucrypto/TestRSA.java - test/com/oracle/security/ucrypto/UcryptoTest.java Changeset: e044b0151858 Author: valeriep Date: 2013-10-08 14:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e044b0151858 8025967: addition of -Werror broke the old build Summary: Fixed and suppressed compiler warnings on rawtypes Reviewed-by: vinnie ! src/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java ! src/share/classes/com/sun/jndi/ldap/LdapPoolManager.java ! src/share/classes/com/sun/net/ssl/internal/www/protocol/https/HttpsURLConnectionOldImpl.java ! src/share/classes/java/lang/instrument/Instrumentation.java ! src/share/classes/java/net/ContentHandler.java ! src/share/classes/javax/crypto/JceSecurityManager.java ! src/share/classes/sun/instrument/InstrumentationImpl.java ! src/share/classes/sun/net/www/content/image/gif.java ! src/share/classes/sun/net/www/content/image/jpeg.java ! src/share/classes/sun/net/www/content/image/png.java ! src/share/classes/sun/net/www/content/image/x_xbitmap.java ! src/share/classes/sun/net/www/content/image/x_xpixmap.java ! src/share/classes/sun/net/www/protocol/https/HttpsURLConnectionImpl.java ! src/share/classes/sun/reflect/misc/MethodUtil.java ! src/share/classes/sun/security/provider/AuthPolicyFile.java ! src/share/classes/sun/security/provider/SubjectCodeSource.java ! src/share/classes/sun/security/tools/jarsigner/Main.java ! src/share/classes/sun/security/tools/keytool/Main.java ! src/share/classes/sun/security/tools/policytool/PolicyTool.java Changeset: 7a7b73a40bb1 Author: valeriep Date: 2013-10-09 13:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7a7b73a40bb1 Merge - src/share/classes/com/sun/jdi/connect/package.html - src/share/classes/com/sun/jdi/connect/spi/package.html - src/share/classes/com/sun/jdi/event/package.html - src/share/classes/com/sun/jdi/package.html - src/share/classes/com/sun/jdi/request/package.html - src/share/classes/com/sun/management/package.html - src/share/classes/com/sun/tools/attach/package.html - src/share/classes/com/sun/tools/attach/spi/package.html - src/share/classes/com/sun/tools/jconsole/package.html Changeset: 673f8045311e Author: bpb Date: 2013-10-09 17:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/673f8045311e 7189139: BigInteger's staticRandom field can be a source of bottlenecks. Summary: Use ThreadLocalRandom instead of SecureRandom. Reviewed-by: shade, psandoz Contributed-by: Brian Burkhalter ! src/share/classes/java/math/BigInteger.java Changeset: eab3c09745b6 Author: bchristi Date: 2013-10-09 12:13 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/eab3c09745b6 8024709: TreeMap.DescendingKeyIterator 'remove' confuses iterator position Summary: Override remove() method in DescendingKeyIterator Reviewed-by: alanb, mduigou, psandoz ! src/share/classes/java/util/TreeMap.java ! test/java/util/Collection/MOAT.java Changeset: c13309f658e1 Author: darcy Date: 2013-10-09 18:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c13309f658e1 8024354: Explicitly permit DoubleStream.sum()/average() implementations to use higher precision summation Reviewed-by: mduigou, briangoetz ! src/share/classes/java/util/DoubleSummaryStatistics.java ! src/share/classes/java/util/stream/DoubleStream.java Changeset: e901a618dcff Author: sjiang Date: 2013-10-10 08:37 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e901a618dcff 8025207: Intermittent test failure: javax/management/monitor/CounterMonitorThresholdTest.java Reviewed-by: dfuchs, dholmes ! test/javax/management/monitor/CounterMonitorThresholdTest.java Changeset: e8097e1e18a7 Author: sjiang Date: 2013-10-10 08:49 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e8097e1e18a7 8025206: Intermittent test failure: javax/management/monitor/NullAttributeValueTest.java Reviewed-by: dholmes, dfuchs, jbachorik ! test/javax/management/monitor/NullAttributeValueTest.java Changeset: a30f6fd581b3 Author: sjiang Date: 2013-10-10 09:01 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a30f6fd581b3 8025205: Intermittent test failure: javax/management/remote/mandatory/connection/BrokenConnectionTest.java Reviewed-by: dholmes, dfuchs, jbachorik ! test/javax/management/remote/mandatory/connection/BrokenConnectionTest.java Changeset: 74b4d20769fd Author: weijun Date: 2013-10-10 15:24 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/74b4d20769fd 8026235: keytool NSS test should use 64 bit lib on Solaris Reviewed-by: vinnie ! test/sun/security/tools/keytool/autotest.sh Changeset: 6aa637dde16e Author: sla Date: 2013-10-10 09:38 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6aa637dde16e 8025427: jstat tests fails on 32-bit platforms Reviewed-by: ehelin, dsamersoff, dholmes, sspitsyn ! src/share/classes/sun/tools/jstat/RowClosure.java ! test/ProblemList.txt ! test/sun/tools/jstat/gcCauseOutput1.awk ! test/sun/tools/jstat/lineCounts1.awk ! test/sun/tools/jstat/lineCounts2.awk ! test/sun/tools/jstat/lineCounts3.awk ! test/sun/tools/jstat/lineCounts4.awk ! test/sun/tools/jstat/timeStamp1.awk ! test/sun/tools/jstatd/jstatGcutilOutput1.awk Changeset: 998560cccefc Author: allwin Date: 2013-10-10 10:14 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/998560cccefc 8014446: JT_JDK: Wrong detection of test result for test com/sun/jdi/NoLaunchOptionTest.java Reviewed-by: sla, mgronlun, dholmes, jbachorik, chegar ! test/com/sun/jdi/NoLaunchOptionTest.java Changeset: 254173b48dcb Author: dholmes Date: 2013-10-10 04:57 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/254173b48dcb 8026232: Move libnpt from profile compact1 to compact3 Reviewed-by: mchung, alanb ! makefiles/profile-includes.txt Changeset: 99b7bbe0474f Author: dl Date: 2013-10-10 09:57 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/99b7bbe0474f 7011859: java/util/concurrent/Semaphore/RacingReleases.java failing Reviewed-by: alanb, dholmes ! src/share/classes/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.java ! src/share/classes/java/util/concurrent/locks/AbstractQueuedSynchronizer.java Changeset: 8294c49d23b3 Author: michaelm Date: 2013-10-10 12:36 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8294c49d23b3 7076487: (sctp) SCTP API classes does not exist in JDK for Mac Reviewed-by: alanb, chegar ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk + src/macosx/classes/sun/nio/ch/sctp/SctpChannelImpl.java + src/macosx/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java + src/macosx/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java Changeset: cab80088c671 Author: sjiang Date: 2013-10-10 17:47 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cab80088c671 8025204: Intermittent test failure: javax/management/remote/mandatory/connection/IdleTimeoutTest.java Reviewed-by: dholmes, jbachorik ! test/javax/management/remote/mandatory/connection/IdleTimeoutTest.java Changeset: f25d9d8811ca Author: jfranck Date: 2013-10-10 18:11 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f25d9d8811ca 7044282: (reflect) Class.forName and Array.newInstance are inconsistent regarding multidimensional arrays Reviewed-by: darcy, psandoz ! src/share/classes/java/lang/reflect/Array.java + test/java/lang/Class/forName/arrayClass/Class1.java + test/java/lang/Class/forName/arrayClass/Class2.java + test/java/lang/Class/forName/arrayClass/Class3.java + test/java/lang/Class/forName/arrayClass/Class4.java + test/java/lang/Class/forName/arrayClass/ExceedMaxDim.java ! test/java/lang/reflect/Array/ExceedMaxDim.java Changeset: 4abfcbac1cb6 Author: emc Date: 2013-10-10 18:56 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4abfcbac1cb6 8026011: java.lang.reflect.MalformedParametersException introduces doclint warnings Summary: Add javadoc comments to members of MalformedParametersException Reviewed-by: darcy ! src/share/classes/java/lang/reflect/MalformedParametersException.java Changeset: a1d91e198ddf Author: lana Date: 2013-10-10 13:33 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a1d91e198ddf Merge ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk - src/macosx/classes/sun/lwawt/SelectionClearListener.java - src/macosx/classes/sun/lwawt/macosx/CMouseInfoPeer.java - test/com/sun/jdi/Solaris32AndSolaris64Test.sh - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-i586/libLauncher.so - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparc/libLauncher.so ! test/sun/security/tools/keytool/autotest.sh Changeset: 1863a7e3a1c9 Author: lana Date: 2013-10-10 20:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1863a7e3a1c9 Merge Changeset: 1a067bc31098 Author: lana Date: 2013-10-10 21:23 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1a067bc31098 Merge Changeset: 4ad76262bac8 Author: mullan Date: 2013-10-11 08:43 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4ad76262bac8 8007292: Add JavaFX internal packages to package.access Summary: build hooks to allow closed restricted packages to be added to java.security file Reviewed-by: erikj, dholmes, tbell ! make/java/security/Makefile ! make/tools/Makefile + make/tools/addtorestrictedpkgs/Makefile + make/tools/src/build/tools/addtorestrictedpkgs/AddToRestrictedPkgs.java ! makefiles/CopyFiles.gmk ! makefiles/Tools.gmk ! test/java/lang/SecurityManager/CheckPackageAccess.java Changeset: 76df579c0b93 Author: mullan Date: 2013-10-11 09:17 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/76df579c0b93 Merge ! makefiles/Tools.gmk - src/macosx/classes/sun/lwawt/SelectionClearListener.java - src/macosx/classes/sun/lwawt/macosx/CMouseInfoPeer.java - src/share/classes/com/sun/jdi/connect/package.html - src/share/classes/com/sun/jdi/connect/spi/package.html - src/share/classes/com/sun/jdi/event/package.html - src/share/classes/com/sun/jdi/package.html - src/share/classes/com/sun/jdi/request/package.html - src/share/classes/com/sun/management/package.html - src/share/classes/com/sun/tools/attach/package.html - src/share/classes/com/sun/tools/attach/spi/package.html - src/share/classes/com/sun/tools/jconsole/package.html - src/share/classes/java/lang/invoke/InvokeGeneric.java - src/share/classes/java/time/chrono/ChronoDateImpl.java - test/com/oracle/security/ucrypto/TestAES.java - test/com/oracle/security/ucrypto/TestDigest.java - test/com/oracle/security/ucrypto/TestRSA.java - test/com/oracle/security/ucrypto/UcryptoTest.java - test/com/sun/jdi/Solaris32AndSolaris64Test.sh - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-i586/libLauncher.so - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparc/libLauncher.so - test/java/time/tck/java/time/chrono/TCKChronologySerialization.java Changeset: cb373cf43294 Author: dxu Date: 2013-10-11 09:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cb373cf43294 8025712: (props) Possible memory leak in java_props_md.c / ParseLocale Reviewed-by: naoto, chegar ! src/solaris/native/java/lang/java_props_md.c Changeset: d23247aa7462 Author: vinnie Date: 2013-10-11 20:35 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d23247aa7462 8026301: DomainKeyStore doesn't cleanup correctly when storing to keystore Reviewed-by: mullan ! src/share/classes/sun/security/provider/DomainKeyStore.java Changeset: 94493b5800bb Author: vinnie Date: 2013-10-11 20:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/94493b5800bb Merge Changeset: 9632de07d963 Author: alanb Date: 2013-10-11 20:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9632de07d963 8019526: (fs) Files.lines, etc without Charset parameter Reviewed-by: psandoz, henryjen ! src/share/classes/java/nio/file/Files.java ! test/java/nio/file/Files/BytesAndLines.java ! test/java/nio/file/Files/StreamTest.java Changeset: 4561460bf570 Author: rfield Date: 2013-10-11 15:21 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4561460bf570 8026213: Reflection support for private interface methods Reviewed-by: forax, psandoz, dholmes, jfranck Contributed-by: karen.kinnear at oracle.com ! src/share/classes/sun/reflect/AccessorGenerator.java ! src/share/classes/sun/reflect/MethodAccessorGenerator.java + test/java/lang/reflect/Method/invoke/TestPrivateInterfaceMethodReflect.java Changeset: fb202a8e83c9 Author: xuelei Date: 2013-10-13 21:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fb202a8e83c9 8026119: Regression test DHEKeySizing.java failing intermittently Reviewed-by: weijun ! test/sun/security/ssl/com/sun/net/ssl/internal/ssl/DHKeyExchange/DHEKeySizing.java Changeset: 9f8bfdd99129 Author: dfuchs Date: 2013-10-14 10:42 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9f8bfdd99129 8024704: Improve API documentation of ClassLoader and ServiceLoader with respect to enumeration of resources. Reviewed-by: alanb, psandoz, mchung ! src/share/classes/java/lang/ClassLoader.java ! src/share/classes/java/util/ServiceLoader.java Changeset: 077237e4613f Author: tyan Date: 2013-10-14 11:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/077237e4613f 8023555: test/java/net/Socks/SocksProxyVersion.java fails when machine name is localhost Reviewed-by: chegar, alanb ! test/java/net/Socks/SocksProxyVersion.java Changeset: f15a0087181e Author: stefank Date: 2013-10-14 14:28 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f15a0087181e 7196801: NPG: Fix java/lang/management/MemoryMXBean/LowMemoryTest2 Reviewed-by: coleenp, sla Contributed-by: stefan.karlsson at oracle.com, coleen.phillimore at oracle.com ! test/java/lang/management/MemoryMXBean/LowMemoryTest2.java ! test/java/lang/management/MemoryMXBean/LowMemoryTest2.sh Changeset: 96644227daed Author: lana Date: 2013-10-11 23:27 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/96644227daed Merge ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk Changeset: 3a5c987ff3a0 Author: lana Date: 2013-10-14 09:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3a5c987ff3a0 Merge Changeset: dd0deeb04933 Author: michaelm Date: 2013-10-14 22:09 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/dd0deeb04933 8014719: HttpClient/ProxyTest.java failing with IAE HttpURLPermission.parseURI Reviewed-by: alanb, chegar + src/share/classes/java/net/HostPortrange.java ! src/share/classes/java/net/HttpURLConnection.java - src/share/classes/java/net/HttpURLPermission.java + src/share/classes/java/net/URLPermission.java ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/share/classes/sun/security/tools/policytool/PolicyTool.java - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 + test/java/net/URLPermission/URLPermissionTest.java + test/java/net/URLPermission/URLTest.java + test/java/net/URLPermission/policy.1 + test/java/net/URLPermission/policy.2 + test/java/net/URLPermission/policy.3 Changeset: 94d4aa2fb414 Author: henryjen Date: 2013-10-14 17:27 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/94d4aa2fb414 8026362: java/lang/invoke/lambda/LogGeneratedClassesTest.java failed on windows, jtreg report Fail to org.testng.SkipException Reviewed-by: chegar ! test/java/lang/invoke/lambda/LogGeneratedClassesTest.java Changeset: 50e88f25255f Author: joehw Date: 2013-10-14 22:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/50e88f25255f 8015092: SchemaFactory cannot parse schema if whitespace added within patterns in Selector XPath expression Reviewed-by: lancea, alanb + test/javax/xml/jaxp/validation/8015092/XPathWhiteSpaceTest.java + test/javax/xml/jaxp/validation/8015092/idIxpns.xsd + test/javax/xml/jaxp/validation/8015092/idIxpns1.xsd + test/javax/xml/jaxp/validation/8015092/idJ029.xsd + test/javax/xml/jaxp/validation/8015092/idJimp.xsd Changeset: abe8d432f714 Author: jbachorik Date: 2013-10-15 10:26 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/abe8d432f714 6804470: JvmstatCountersTest.java test times out on slower machines Summary: Increasing the default timeout to cater for the slower machines Reviewed-by: alanb ! test/sun/management/jmxremote/bootstrap/JvmstatCountersTest.java Changeset: 0b6632e570b0 Author: alanb Date: 2013-10-15 10:52 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0b6632e570b0 8026398: Can't load jdk.Exported, ClassNotFoundException Reviewed-by: chegar, mchung ! make/tools/src/build/tools/buildmetaindex/BuildMetaIndex.java Changeset: 2c16140fb515 Author: dfuchs Date: 2013-10-15 13:01 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2c16140fb515 8026404: Logging in Applet can trigger ACE: access denied ("java.lang.RuntimePermission" "modifyThreadGroup") Summary: The test 'threadGroup.getParent() == null' can sometimes throw ACE and needs to be wrapped in doPrivileged. Reviewed-by: alanb, mchung, dholmes ! src/share/classes/sun/awt/AppContext.java ! test/TEST.groups + test/java/util/logging/TestMainAppContext.java Changeset: ea422834f880 Author: rriggs Date: 2013-09-26 23:05 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ea422834f880 8025720: Separate temporal interface layer Summary: Remove ZoneId and Chronology from TemporalField interface Reviewed-by: sherman Contributed-by: scolebourne at joda.org ! src/share/classes/java/time/format/Parsed.java ! src/share/classes/java/time/temporal/IsoFields.java ! src/share/classes/java/time/temporal/JulianFields.java ! src/share/classes/java/time/temporal/TemporalField.java ! src/share/classes/java/time/temporal/WeekFields.java ! test/java/time/tck/java/time/format/TCKDateTimeParseResolver.java Changeset: 110107410393 Author: scolebourne Date: 2013-07-09 21:35 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/110107410393 8025719: Change Chronology to an interface Summary: Split Chronology and add AbstractChronology Reviewed-by: darcy Contributed-by: scolebourne at joda.org + src/share/classes/java/time/chrono/AbstractChronology.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java ! src/share/classes/java/time/chrono/ChronoLocalDateTime.java ! src/share/classes/java/time/chrono/ChronoZonedDateTime.java ! src/share/classes/java/time/chrono/Chronology.java ! src/share/classes/java/time/chrono/HijrahChronology.java ! src/share/classes/java/time/chrono/IsoChronology.java ! src/share/classes/java/time/chrono/JapaneseChronology.java ! src/share/classes/java/time/chrono/MinguoChronology.java ! src/share/classes/java/time/chrono/Ser.java ! src/share/classes/java/time/chrono/ThaiBuddhistChronology.java ! test/java/time/tck/java/time/chrono/CopticChronology.java Changeset: 087c8c1d2631 Author: rriggs Date: 2013-10-15 13:14 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/087c8c1d2631 8025722: TemporalAdjusters and TemporalQueries Summary: Move static from interfaces methods to supporting classes Reviewed-by: sherman ! src/share/classes/java/time/DayOfWeek.java ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/LocalDate.java ! src/share/classes/java/time/LocalDateTime.java ! src/share/classes/java/time/LocalTime.java ! src/share/classes/java/time/Month.java ! src/share/classes/java/time/MonthDay.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/OffsetTime.java ! src/share/classes/java/time/Period.java ! src/share/classes/java/time/Year.java ! src/share/classes/java/time/YearMonth.java ! src/share/classes/java/time/ZoneId.java ! src/share/classes/java/time/ZoneOffset.java ! src/share/classes/java/time/chrono/AbstractChronology.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java ! src/share/classes/java/time/chrono/ChronoLocalDateTime.java ! src/share/classes/java/time/chrono/ChronoPeriodImpl.java ! src/share/classes/java/time/chrono/ChronoZonedDateTime.java ! src/share/classes/java/time/chrono/Chronology.java ! src/share/classes/java/time/chrono/Era.java ! src/share/classes/java/time/chrono/JapaneseChronology.java ! src/share/classes/java/time/format/DateTimeFormatterBuilder.java ! src/share/classes/java/time/format/DateTimePrintContext.java ! src/share/classes/java/time/format/Parsed.java ! src/share/classes/java/time/temporal/TemporalAccessor.java ! src/share/classes/java/time/temporal/TemporalAdjuster.java ! src/share/classes/java/time/temporal/TemporalAdjusters.java ! src/share/classes/java/time/temporal/TemporalAmount.java ! src/share/classes/java/time/temporal/TemporalQueries.java ! src/share/classes/java/time/temporal/TemporalQuery.java ! src/share/classes/java/time/temporal/package-info.java ! src/share/classes/java/time/zone/ZoneOffsetTransitionRule.java ! src/share/classes/java/util/Formatter.java ! test/java/time/tck/java/time/TCKDayOfWeek.java ! test/java/time/tck/java/time/TCKInstant.java ! test/java/time/tck/java/time/TCKLocalDate.java ! test/java/time/tck/java/time/TCKLocalDateTime.java ! test/java/time/tck/java/time/TCKLocalTime.java ! test/java/time/tck/java/time/TCKMonth.java ! test/java/time/tck/java/time/TCKMonthDay.java ! test/java/time/tck/java/time/TCKOffsetDateTime.java ! test/java/time/tck/java/time/TCKOffsetTime.java ! test/java/time/tck/java/time/TCKYear.java ! test/java/time/tck/java/time/TCKYearMonth.java ! test/java/time/tck/java/time/TCKZoneId.java ! test/java/time/tck/java/time/TCKZoneOffset.java ! test/java/time/tck/java/time/TCKZonedDateTime.java ! test/java/time/tck/java/time/TestIsoChronology.java ! test/java/time/tck/java/time/chrono/CopticDate.java ! test/java/time/tck/java/time/chrono/TCKChronoLocalDateTime.java ! test/java/time/tck/java/time/chrono/TCKChronoZonedDateTime.java ! test/java/time/tck/java/time/chrono/TCKIsoChronology.java ! test/java/time/tck/java/time/chrono/TCKJapaneseChronology.java ! test/java/time/tck/java/time/chrono/TCKMinguoChronology.java ! test/java/time/tck/java/time/chrono/TCKThaiBuddhistChronology.java ! test/java/time/tck/java/time/format/TCKChronoPrinterParser.java ! test/java/time/tck/java/time/format/TCKDateTimeFormatters.java ! test/java/time/tck/java/time/format/TCKDateTimeParseResolver.java ! test/java/time/tck/java/time/format/TCKLocalizedPrinterParser.java ! test/java/time/tck/java/time/format/TCKZoneIdPrinterParser.java ! test/java/time/tck/java/time/temporal/TCKTemporalAdjusters.java ! test/java/time/test/java/time/chrono/TestUmmAlQuraChronology.java ! test/java/time/test/java/time/format/TestCharLiteralParser.java ! test/java/time/test/java/time/format/TestNonIsoFormatter.java ! test/java/time/test/java/time/format/TestNumberParser.java ! test/java/time/test/java/time/format/TestStringLiteralParser.java ! test/java/time/test/java/time/format/TestZoneTextPrinterParser.java ! test/java/time/test/java/util/TestFormatter.java Changeset: b3baca585b7f Author: jbachorik Date: 2013-04-23 09:37 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b3baca585b7f 8011081: Improve jhat Summary: Properly escape HTML output Reviewed-by: alanb, mschoene, sundar ! src/share/classes/com/sun/tools/hat/internal/server/AllClassesQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/ClassQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/HttpReader.java ! src/share/classes/com/sun/tools/hat/internal/server/InstancesCountQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/OQLHelp.java ! src/share/classes/com/sun/tools/hat/internal/server/OQLQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/QueryHandler.java ! src/share/classes/com/sun/tools/hat/internal/server/RefsByTypeQuery.java Changeset: 37f6f4dbfc6d Author: ksrini Date: 2013-05-07 13:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/37f6f4dbfc6d 8013506: Better Pack200 data handling Reviewed-by: jrose, kizune, mschoene ! src/share/native/com/sun/java/util/jar/pack/zip.cpp Changeset: 139a01719eec Author: jchen Date: 2013-05-09 09:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/139a01719eec 8013510: Augment image writing code Reviewed-by: bae, prr ! src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ! src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c Changeset: f2068f4244a5 Author: bae Date: 2013-05-14 12:51 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f2068f4244a5 8014093: Improve parsing of images Reviewed-by: prr, jgodinez ! src/share/native/sun/awt/image/awt_parseImage.c ! src/share/native/sun/awt/image/awt_parseImage.h ! src/share/native/sun/awt/medialib/awt_ImagingLib.c Changeset: 65d5a6e53d12 Author: alexsch Date: 2013-05-20 14:39 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/65d5a6e53d12 8013744: Better tabling for AWT Reviewed-by: art, malenkov, skoivu ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/UIDefaults.java ! src/share/classes/javax/swing/text/DefaultFormatter.java ! src/share/classes/javax/swing/text/NumberFormatter.java ! src/share/classes/sun/swing/SwingLazyValue.java ! src/share/classes/sun/swing/SwingUtilities2.java Changeset: 52be85d5149b Author: bae Date: 2013-05-20 15:26 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/52be85d5149b 8014102: Improve image conversion Reviewed-by: mschoene, prr, jgodinez ! src/share/native/sun/awt/medialib/awt_ImagingLib.c Changeset: 08b88f831dd1 Author: malenkov Date: 2013-05-20 19:49 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/08b88f831dd1 8012071: Better Building of Beans Reviewed-by: art, skoivu ! src/share/classes/java/beans/Beans.java ! src/share/classes/java/beans/DefaultPersistenceDelegate.java ! src/share/classes/java/beans/MetaData.java Changeset: 140c474ab8b9 Author: malenkov Date: 2013-05-31 21:25 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/140c474ab8b9 8012277: Improve AWT DataFlavor Reviewed-by: art, skoivu ! src/share/classes/java/awt/datatransfer/DataFlavor.java Changeset: 23fe888b698d Author: weijun Date: 2013-05-08 09:21 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/23fe888b698d 8014341: Better service from Kerberos servers Summary: read incoming data safely and take care of null return value Reviewed-by: valeriep, ahgross ! src/share/classes/sun/security/krb5/KdcComm.java ! src/share/classes/sun/security/krb5/internal/NetClient.java Changeset: 532343ec60b7 Author: weijun Date: 2013-06-13 10:21 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/532343ec60b7 8013739: Better LDAP resource management Reviewed-by: ahgross, mchung, xuelei ! src/share/classes/com/sun/jndi/ldap/VersionHelper12.java ! src/share/classes/java/lang/System.java ! src/share/classes/java/lang/Thread.java ! src/share/classes/sun/misc/JavaLangAccess.java Changeset: 6d9ec6877a7f Author: weijun Date: 2013-06-13 10:31 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6d9ec6877a7f 8015731: Subject java.security.auth.subject to improvements Reviewed-by: skoivu, mullan ! src/share/classes/javax/security/auth/Subject.java Changeset: ccca37ca416a Author: jchen Date: 2013-06-13 12:14 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ccca37ca416a 8014098: Better profile validation Reviewed-by: bae, mschoene, prr ! src/share/native/sun/java2d/cmm/lcms/cmsio0.c Changeset: 5a14ecd30b4e Author: msheppar Date: 2013-06-14 15:49 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5a14ecd30b4e 8011157: Improve CORBA portablility Summary: fix also reviewed by Alexander Fomin Reviewed-by: alanb, coffeys, skoivu ! make/com/sun/jmx/Makefile ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/javax/management/remote/rmi/RMIConnector.java Changeset: 7addece3f21e Author: jbachorik Date: 2013-06-20 08:51 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7addece3f21e 8014085: Better serialization support in JMX classes Reviewed-by: alanb, dfuchs, skoivu ! src/share/classes/javax/management/MBeanNotificationInfo.java ! src/share/classes/javax/management/remote/JMXPrincipal.java ! src/share/classes/javax/management/remote/JMXServiceURL.java ! src/share/classes/javax/management/remote/NotificationResult.java ! src/share/classes/javax/management/remote/TargetedNotification.java Changeset: eb29deb3c1db Author: chegar Date: 2013-06-27 10:37 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/eb29deb3c1db Merge Changeset: 0a06ec55aacd Author: bae Date: 2013-07-01 15:17 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0a06ec55aacd 8017287: Better resource disposal Reviewed-by: prr, vadim, skoivu ! src/share/classes/sun/java2d/Disposer.java Changeset: 51204df822d3 Author: erikj Date: 2013-07-03 10:14 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/51204df822d3 8012146: Improve tool support Reviewed-by: ksrini, dholmes, alanb, anthony ! makefiles/CompileLaunchers.gmk ! makefiles/Images.gmk ! test/Makefile Changeset: 888fd0ad7e1e Author: ascarpino Date: 2013-07-03 15:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/888fd0ad7e1e 8011071: Better crypto provider handling Reviewed-by: hawtin, valeriep ! src/share/classes/com/sun/crypto/provider/DHPrivateKey.java ! src/share/classes/sun/security/ec/ECPrivateKeyImpl.java ! src/share/classes/sun/security/jgss/GSSCredentialImpl.java ! src/share/classes/sun/security/pkcs/PKCS8Key.java ! src/share/classes/sun/security/pkcs11/P11Key.java ! src/share/classes/sun/security/provider/DSAPrivateKey.java ! src/share/classes/sun/security/rsa/RSAPrivateCrtKeyImpl.java ! src/share/classes/sun/security/rsa/RSAPrivateKeyImpl.java Changeset: a06b764cc2d0 Author: dsamersoff Date: 2013-07-08 16:15 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a06b764cc2d0 8008589: Better MBean permission validation Summary: Better MBean permission validation Reviewed-by: skoivu, dfuchs, mchung, sjiang ! src/share/classes/javax/management/MBeanTrustPermission.java Changeset: 9c6de162771c Author: smarks Date: 2013-07-11 13:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9c6de162771c 8014987: Augment serialization handling Reviewed-by: alanb, coffeys, skoivu ! src/share/classes/java/io/ObjectInputStream.java ! src/share/classes/java/io/ObjectOutputStream.java Changeset: c40752886882 Author: jfranck Date: 2013-07-15 14:44 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c40752886882 8014349: (cl) Class.getDeclaredClass problematic in some class loader configurations Reviewed-by: mchung, ahgross, darcy ! src/share/classes/java/lang/Class.java ! src/share/native/java/lang/Class.c Changeset: 48548e40187a Author: mchung Date: 2013-07-15 20:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/48548e40187a 8017291: Cast Proxies Aside Reviewed-by: alanb, ahgross ! src/share/classes/java/lang/ClassLoader.java Changeset: 047c99b53994 Author: chegar Date: 2013-07-15 18:17 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/047c99b53994 Merge ! src/share/classes/java/lang/Thread.java - src/share/classes/java/security/acl/package.html - src/share/classes/java/security/cert/package.html - src/share/classes/java/security/interfaces/package.html - src/share/classes/java/security/package.html - src/share/classes/java/security/spec/package.html ! src/share/classes/sun/security/krb5/KdcComm.java ! src/share/classes/sun/swing/SwingUtilities2.java - test/java/util/Comparators/BasicTest.java Changeset: 3062c96e79e0 Author: chegar Date: 2013-07-16 12:23 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3062c96e79e0 Merge Changeset: e1497f102a8a Author: malenkov Date: 2013-07-16 21:11 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e1497f102a8a 8019617: Better view of objects Reviewed-by: art, skoivu ! src/share/classes/javax/swing/text/html/ObjectView.java Changeset: 69a2dc92fefe Author: michaelm Date: 2013-07-18 18:52 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/69a2dc92fefe 8015743: Address internet addresses Reviewed-by: alanb, khazra, skoivu ! src/share/classes/java/net/Inet6Address.java ! src/share/classes/java/net/InetAddress.java ! src/share/native/java/net/Inet6Address.c ! src/share/native/java/net/net_util.c ! src/share/native/java/net/net_util.h ! src/solaris/native/java/net/Inet6AddressImpl.c ! src/solaris/native/java/net/NetworkInterface.c ! src/solaris/native/java/net/PlainDatagramSocketImpl.c ! src/solaris/native/java/net/net_util_md.c ! src/windows/native/java/net/Inet6AddressImpl.c ! src/windows/native/java/net/NetworkInterface.c ! src/windows/native/java/net/NetworkInterface_winXP.c ! src/windows/native/java/net/TwoStacksPlainSocketImpl.c ! src/windows/native/java/net/net_util_md.c ! test/java/net/Inet6Address/serialize/Serialize.java Changeset: 5d8f1e697cd8 Author: okutsu Date: 2013-07-19 12:14 +0900 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5d8f1e697cd8 8001029: Add new date/time capability Reviewed-by: mchung, hawtin ! src/share/classes/java/util/TimeZone.java + test/java/util/TimeZone/SetDefaultSecurityTest.java Changeset: fe90bd20865b Author: sjiang Date: 2013-07-19 13:35 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fe90bd20865b 8014534: Better profiling support Summary: Validation of parameters Reviewed-by: sspitsyn, skoivu, mchung ! src/share/classes/com/sun/demo/jvmti/hprof/Tracker.java ! src/share/demo/jvmti/hprof/hprof_class.c ! src/share/demo/jvmti/hprof/hprof_event.c Changeset: 0a51ccf778b3 Author: chegar Date: 2013-07-22 14:02 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0a51ccf778b3 Merge Changeset: 3725e8a70ae9 Author: mchung Date: 2013-07-22 19:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3725e8a70ae9 8017196: Ensure Proxies are handled appropriately Reviewed-by: dfuchs, jrose, jdn, ahgross, chegar ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/reflect/Proxy.java ! src/share/classes/sun/reflect/misc/ReflectUtil.java Changeset: 5bde952bf23c Author: sgabdura Date: 2013-07-23 09:30 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5bde952bf23c 8016357: Update hotspot diagnostic class Summary: Add security check to HotSpotDiagnostic.dumpHeap Reviewed-by: fparain, sla, ahgross ! make/java/management/mapfile-vers ! makefiles/mapfiles/libmanagement/mapfile-vers ! src/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java ! src/share/classes/sun/management/HotSpotDiagnostic.java ! src/share/native/sun/management/HotSpotDiagnostic.c Changeset: 5bdc55e87cae Author: weijun Date: 2013-07-17 18:46 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5bdc55e87cae 8020696: Merge problem for KdcComm.java Reviewed-by: chegar ! src/share/classes/sun/security/krb5/KdcComm.java Changeset: 490c67c5d9a2 Author: jchen Date: 2013-07-24 12:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/490c67c5d9a2 8020293: JVM crash Reviewed-by: prr, jgodinez ! src/share/classes/sun/font/GlyphLayout.java ! src/share/native/sun/font/layout/SunLayoutEngine.cpp Changeset: bcce47d9d8da Author: jbachorik Date: 2013-07-19 16:29 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bcce47d9d8da 8019584: javax/management/remote/mandatory/loading/MissingClassTest.java failed in nightly against jdk7u45: java.io.InvalidObjectException: Invalid notification: null Reviewed-by: mchung, sjiang, dfuchs, ahgross ! src/share/classes/javax/management/remote/NotificationResult.java ! src/share/classes/javax/management/remote/TargetedNotification.java ! test/javax/management/remote/mandatory/loading/MissingClassTest.java Changeset: d7a0bbf526f8 Author: jbachorik Date: 2013-07-29 04:43 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d7a0bbf526f8 8021577: JCK test api/javax_management/jmx_serial/modelmbean/ModelMBeanNotificationInfo/serial/index.html#Input has failed since jdk 7u45 b01 Reviewed-by: alanb, dfuchs, ahgross ! src/share/classes/javax/management/MBeanNotificationInfo.java Changeset: 1a1e42c8e988 Author: chegar Date: 2013-07-25 19:03 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1a1e42c8e988 Merge ! src/share/classes/com/sun/crypto/provider/DHPrivateKey.java - src/share/classes/com/sun/org/apache/xml/internal/security/resource/log4j.properties - src/share/classes/com/sun/org/apache/xml/internal/security/transforms/implementations/FuncHereContext.java - src/share/classes/com/sun/org/apache/xml/internal/security/utils/CachedXPathAPIHolder.java - src/share/classes/com/sun/org/apache/xml/internal/security/utils/CachedXPathFuncHereAPI.java - src/share/classes/com/sun/org/apache/xml/internal/security/utils/XPathFuncHereAPI.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/ClassLoader.java ! src/share/classes/java/lang/System.java ! src/share/classes/java/lang/Thread.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/net/Inet6Address.java ! src/share/classes/java/net/InetAddress.java - src/share/classes/java/util/stream/StreamBuilder.java ! src/share/classes/javax/security/auth/Subject.java - src/share/classes/javax/security/auth/callback/package.html - src/share/classes/javax/security/auth/kerberos/package.html - src/share/classes/javax/security/auth/login/package.html - src/share/classes/javax/security/auth/package.html - src/share/classes/javax/security/auth/spi/package.html - src/share/classes/javax/security/auth/x500/package.html - src/share/classes/javax/security/cert/package.html - src/share/classes/javax/security/sasl/package.html ! src/share/classes/sun/misc/JavaLangAccess.java ! src/share/classes/sun/security/pkcs11/P11Key.java - test/java/util/Collections/EmptySortedSet.java Changeset: 446bc20447a1 Author: chegar Date: 2013-07-29 14:58 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/446bc20447a1 Merge Changeset: e537b7f5f39b Author: naoto Date: 2013-08-01 14:09 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e537b7f5f39b 8021286: Improve MacOS resourcing Reviewed-by: okutsu - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk ! make/sun/awt/Makefile ! makefiles/CompileNativeLibraries.gmk ! src/macosx/classes/com/apple/laf/AquaLookAndFeel.java - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m Changeset: 44a063555ccd Author: chegar Date: 2013-08-02 11:11 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/44a063555ccd Merge Changeset: 17e1675e3d1e Author: serb Date: 2013-08-04 02:50 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/17e1675e3d1e 8021282: Better recycling of object instances Reviewed-by: art ! src/macosx/classes/com/apple/laf/AquaUtils.java Changeset: ba7566de89c6 Author: sjiang Date: 2013-08-06 10:33 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ba7566de89c6 8019292: Better Attribute Value Exceptions Reviewed-by: dfuchs, dholmes, ahgross ! src/share/classes/javax/management/BadAttributeValueExpException.java Changeset: 23476862c55b Author: malenkov Date: 2013-08-07 14:37 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/23476862c55b 8021969: The index_AccessAllowed jnlp can not load successfully with exception thrown in the log. Reviewed-by: art, skoivu ! src/share/classes/java/awt/datatransfer/DataFlavor.java Changeset: db9539b0061d Author: jbachorik Date: 2013-08-08 19:16 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/db9539b0061d 8021360: object not exported" on start of JMXConnectorServer for RMI-IIOP protocol with security manager Reviewed-by: alanb, ahgross, smarks, coffeys ! src/share/classes/com/sun/jmx/remote/protocol/iiop/IIOPProxyImpl.java Changeset: 077d8c2cc5f6 Author: chegar Date: 2013-08-09 14:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/077d8c2cc5f6 Merge ! src/share/classes/java/io/ObjectInputStream.java ! src/share/classes/java/io/ObjectOutputStream.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/net/Inet6Address.java ! src/share/classes/java/net/InetAddress.java - src/share/classes/java/net/package.html ! src/share/classes/java/util/TimeZone.java ! src/share/native/java/net/net_util.c ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c ! src/share/native/sun/awt/medialib/awt_ImagingLib.c ! test/Makefile Changeset: e82ddcc1b2fb Author: serb Date: 2013-08-12 19:57 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e82ddcc1b2fb 8021275: Better screening for ScreenMenu Reviewed-by: art ! src/macosx/classes/com/apple/laf/ScreenMenu.java Changeset: 3e3cbd93f4f1 Author: twisti Date: 2013-08-12 13:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3e3cbd93f4f1 8022066: Evaluation of method reference to signature polymorphic method crashes VM Reviewed-by: jrose ! src/share/classes/java/lang/invoke/MethodHandles.java + test/java/lang/invoke/MethodHandleConstants.java Changeset: e173b8786362 Author: ksrini Date: 2013-08-14 10:17 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e173b8786362 8021355: REGRESSION: Five closed/java/awt/SplashScreen tests fail since 7u45 b01 on Linux, Solaris Reviewed-by: dholmes, anthony, ahgross, erikj ! src/solaris/bin/java_md_solinux.c Changeset: 31010ca3da3e Author: chegar Date: 2013-08-15 21:44 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/31010ca3da3e Merge ! makefiles/CompileNativeLibraries.gmk ! src/share/classes/java/beans/Beans.java ! src/share/classes/java/beans/DefaultPersistenceDelegate.java - test/java/lang/System/MacJNUEncoding/ExpectedEncoding.java - test/java/lang/System/MacJNUEncoding/MacJNUEncoding.sh Changeset: 3f85c96eafcc Author: weijun Date: 2013-08-14 15:25 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3f85c96eafcc 8022931: Enhance Kerberos exceptions Reviewed-by: xuelei, ahgross ! src/share/classes/javax/security/auth/kerberos/KeyTab.java Changeset: 50bdb9577b27 Author: erikj Date: 2013-08-19 12:30 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/50bdb9577b27 8022719: tools/launcher/RunpathTest.java fails after 8012146 Reviewed-by: chegar ! test/tools/launcher/RunpathTest.java Changeset: 0f279113c95a Author: erikj Date: 2013-08-19 14:48 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0f279113c95a 8023231: Remove comma from jtreg bug line Reviewed-by: alanb, chegar ! test/tools/launcher/RunpathTest.java Changeset: ad35b4b6ce8e Author: chegar Date: 2013-08-23 12:32 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ad35b4b6ce8e Merge Changeset: 29f73bc50bd4 Author: chegar Date: 2013-08-30 09:37 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/29f73bc50bd4 Merge ! makefiles/CompileLaunchers.gmk ! makefiles/CompileNativeLibraries.gmk - src/share/classes/com/sun/security/auth/PolicyParser.java - src/share/classes/com/sun/security/auth/SubjectCodeSource.java ! src/share/classes/java/net/InetAddress.java - src/share/classes/java/util/jar/UnsupportedProfileException.java - src/share/classes/sun/security/provider/ConfigSpiFile.java ! src/solaris/native/java/net/NetworkInterface.c - test/java/net/URLClassLoader/profiles/Basic.java - test/java/net/URLClassLoader/profiles/Lib.java - test/java/net/URLClassLoader/profiles/basic.sh - test/tools/jar/AddAndUpdateProfile.java - test/tools/launcher/profiles/Basic.java - test/tools/launcher/profiles/Logging.java - test/tools/launcher/profiles/Main.java - test/tools/launcher/profiles/VersionCheck.java Changeset: a8593bc7c29d Author: chegar Date: 2013-09-06 09:41 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a8593bc7c29d Merge ! src/share/classes/java/lang/Class.java - src/share/classes/sun/misc/Compare.java - src/share/classes/sun/misc/Sort.java Changeset: 22ea25e71b4c Author: chegar Date: 2013-09-14 19:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/22ea25e71b4c Merge Changeset: 240072825ada Author: chegar Date: 2013-10-03 19:06 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/240072825ada Merge ! make/sun/awt/Makefile ! makefiles/CompileLaunchers.gmk ! makefiles/CompileNativeLibraries.gmk ! makefiles/Images.gmk - src/macosx/classes/sun/lwawt/SelectionClearListener.java - src/macosx/classes/sun/lwawt/macosx/CMouseInfoPeer.java ! src/share/classes/java/awt/datatransfer/DataFlavor.java ! src/share/classes/java/beans/DefaultPersistenceDelegate.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/invoke/MethodHandles.java - src/share/classes/java/util/stream/CloseableStream.java - src/share/classes/java/util/stream/DelegatingStream.java ! src/share/classes/javax/management/MBeanNotificationInfo.java ! src/share/classes/javax/management/remote/rmi/RMIConnector.java ! src/share/classes/javax/security/auth/Subject.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/UIDefaults.java ! src/share/classes/sun/swing/SwingUtilities2.java ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c ! src/share/native/sun/font/layout/SunLayoutEngine.cpp ! src/solaris/bin/java_md_solinux.c ! src/windows/native/java/net/NetworkInterface.c ! src/windows/native/java/net/NetworkInterface_winXP.c - test/com/sun/jdi/Solaris32AndSolaris64Test.sh - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-i586/libLauncher.so - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparc/libLauncher.so - test/java/util/Collection/ListDefaults.java - test/java/util/Map/CheckRandomHashSeed.java - test/java/util/Map/TreeBinSplitBackToEntries.java - test/java/util/concurrent/ConcurrentHashMap/toArray.java - test/java/util/regex/PatternTest.java - test/sun/tools/jconsole/ImmutableResourceTest.java - test/sun/tools/jconsole/ImmutableResourceTest.sh ! test/tools/launcher/RunpathTest.java Changeset: adbf6d61c820 Author: chegar Date: 2013-10-07 11:31 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/adbf6d61c820 8025991: tools/launcher/RunpathTest.java fails Reviewed-by: erikj ! test/tools/launcher/RunpathTest.java Changeset: 99832c718cb8 Author: chegar Date: 2013-10-15 09:27 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/99832c718cb8 Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m ! src/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/solaris/native/java/net/Inet6AddressImpl.c Changeset: 3dbfab65c17e Author: chegar Date: 2013-10-15 13:54 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3dbfab65c17e Merge ! src/share/classes/java/awt/datatransfer/DataFlavor.java ! src/share/classes/java/lang/ClassLoader.java - src/share/classes/java/net/HttpURLPermission.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/UIDefaults.java ! src/share/classes/javax/swing/text/DefaultFormatter.java ! src/share/classes/javax/swing/text/NumberFormatter.java - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 Changeset: 27ac58b9a62a Author: chegar Date: 2013-10-15 20:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/27ac58b9a62a 8026513: ProblemList.txt Updates (10/2013) Reviewed-by: alanb ! test/ProblemList.txt Changeset: 78ffa90c77b2 Author: chegar Date: 2013-10-15 20:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/78ffa90c77b2 Merge Changeset: 3676f04e6553 Author: bpb Date: 2013-10-15 16:45 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3676f04e6553 8010371: getaddrinfo can fail with EAI_SYSTEM/EAGAIN, causes UnknownHostException to be thrown Summary: Modify UHE exception message for EAI_AGAIN failures. Reviewed-by: alanb, chegar, michaelm, dsamersoff Contributed-by: Brian Burkhalter ! src/solaris/native/java/net/Inet4AddressImpl.c ! src/windows/native/java/net/Inet4AddressImpl.c ! src/windows/native/java/net/Inet6AddressImpl.c Changeset: e33aea66caa3 Author: dholmes Date: 2013-10-15 20:54 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e33aea66caa3 8026378: TEST_BUG: Clean up TEST.groups Reviewed-by: mduigou, mchung, alanb ! test/TEST.groups Changeset: a70aab9b373e Author: weijun Date: 2013-10-16 14:39 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a70aab9b373e 8025124: InitialToken.useNullKey incorrectly applies NULL_KEY in some cases Reviewed-by: xuelei ! src/share/classes/sun/security/jgss/krb5/InitialToken.java ! src/share/classes/sun/security/krb5/KrbCred.java Changeset: 9ea6a464c147 Author: igerasim Date: 2013-10-15 21:15 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9ea6a464c147 8023431: Test java/util/zip/GZIP/GZIPInZip.java failed Summary: Properly close PipedStreams. Additional testing for malformed input Reviewed-by: darcy, sherman ! test/java/util/zip/GZIP/GZIPInZip.java Changeset: 76a7c0bc74fd Author: erikj Date: 2013-10-16 13:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/76a7c0bc74fd 6604021: RMIC is defaulting to BOOT jdk version, needs to be rmic.jar Reviewed-by: dholmes, chegar ! makefiles/GendataBreakIterator.gmk ! makefiles/GenerateClasses.gmk ! makefiles/Setup.gmk ! src/share/classes/sun/tools/tree/Node.java Changeset: e078fd8a78f6 Author: erikj Date: 2013-10-16 15:53 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e078fd8a78f6 Merge Changeset: d8eec0e3a023 Author: robm Date: 2013-10-16 15:06 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d8eec0e3a023 8026245: InetAddress.getLocalHost crash if IPv6 disabled (macosx) Reviewed-by: chegar, alanb ! src/solaris/native/java/net/Inet4AddressImpl.c ! src/solaris/native/java/net/Inet6AddressImpl.c ! test/java/net/InetAddress/GetLocalHostWithSM.java ! test/java/net/Socket/GetLocalAddress.java Changeset: 445667b19e32 Author: dfuchs Date: 2013-10-16 17:19 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/445667b19e32 8011638: Remove deprecated methods in sun.util.logging.PlatformLogger Reviewed-by: psandoz, mchung, alanb, chegar ! src/share/classes/sun/font/FontUtilities.java ! src/share/classes/sun/util/logging/PlatformLogger.java ! test/sun/util/logging/PlatformLoggerTest.java Changeset: 2ef43f3a901c Author: dfuchs Date: 2013-10-16 20:47 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2ef43f3a901c 8013839: Enhance Logger API for handling of resource bundles 4814565: (rb) add method to get basename from a ResourceBundle Summary: adds Logger.setResourceBundle(ResourceBundle) and ResourceBundle.getBaseBundleName() Reviewed-by: mchung, naoto ! src/share/classes/java/util/ResourceBundle.java ! src/share/classes/java/util/logging/Logger.java + test/java/util/ResourceBundle/getBaseBundleName/TestGetBaseBundleName.java + test/java/util/ResourceBundle/getBaseBundleName/resources/ListBundle.java + test/java/util/ResourceBundle/getBaseBundleName/resources/ListBundle_fr.java + test/java/util/ResourceBundle/getBaseBundleName/resources/PropertyBundle.properties + test/java/util/ResourceBundle/getBaseBundleName/resources/PropertyBundle_fr.properties + test/java/util/logging/Logger/logrb/TestLogrbResourceBundle.java + test/java/util/logging/Logger/logrb/resources/ListBundle.java + test/java/util/logging/Logger/logrb/resources/ListBundle_fr.java + test/java/util/logging/Logger/logrb/resources/PropertyBundle.properties + test/java/util/logging/Logger/logrb/resources/PropertyBundle_fr.properties + test/java/util/logging/Logger/setResourceBundle/TestSetResourceBundle.java + test/java/util/logging/Logger/setResourceBundle/resources/ListBundle.java + test/java/util/logging/Logger/setResourceBundle/resources/ListBundle_fr.java + test/java/util/logging/Logger/setResourceBundle/resources/PropertyBundle.properties + test/java/util/logging/Logger/setResourceBundle/resources/PropertyBundle_fr.properties Changeset: cf9cb3d241a3 Author: mduigou Date: 2013-10-16 13:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cf9cb3d241a3 8025910: rename substream(long) -> skip and remove substream(long,long) Reviewed-by: psandoz, henryjen ! src/share/classes/java/util/stream/DoublePipeline.java ! src/share/classes/java/util/stream/DoubleStream.java ! src/share/classes/java/util/stream/IntPipeline.java ! src/share/classes/java/util/stream/IntStream.java ! src/share/classes/java/util/stream/LongPipeline.java ! src/share/classes/java/util/stream/LongStream.java ! src/share/classes/java/util/stream/ReferencePipeline.java ! src/share/classes/java/util/stream/Stream.java ! test/java/util/stream/boottest/java/util/stream/SpinedBufferTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/InfiniteStreamWithLimitOpTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/IntSliceOpTest.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/SliceOpTest.java Changeset: 60e3cdbe8cdf Author: aefimov Date: 2013-10-13 14:19 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/60e3cdbe8cdf 8025255: (tz) Support tzdata2013g Reviewed-by: okutsu, mfang ! make/sun/javazic/tzdata/VERSION ! make/sun/javazic/tzdata/africa ! make/sun/javazic/tzdata/antarctica ! make/sun/javazic/tzdata/asia ! make/sun/javazic/tzdata/australasia ! make/sun/javazic/tzdata/backward ! make/sun/javazic/tzdata/etcetera ! make/sun/javazic/tzdata/europe ! make/sun/javazic/tzdata/iso3166.tab ! make/sun/javazic/tzdata/leapseconds ! make/sun/javazic/tzdata/northamerica ! make/sun/javazic/tzdata/southamerica ! make/sun/javazic/tzdata/zone.tab ! src/share/classes/sun/util/resources/TimeZoneNames.java ! src/share/classes/sun/util/resources/de/TimeZoneNames_de.java ! src/share/classes/sun/util/resources/es/TimeZoneNames_es.java ! src/share/classes/sun/util/resources/fr/TimeZoneNames_fr.java ! src/share/classes/sun/util/resources/it/TimeZoneNames_it.java ! src/share/classes/sun/util/resources/ja/TimeZoneNames_ja.java ! src/share/classes/sun/util/resources/ko/TimeZoneNames_ko.java ! src/share/classes/sun/util/resources/pt/TimeZoneNames_pt_BR.java ! src/share/classes/sun/util/resources/sv/TimeZoneNames_sv.java ! src/share/classes/sun/util/resources/zh/TimeZoneNames_zh_CN.java ! src/share/classes/sun/util/resources/zh/TimeZoneNames_zh_TW.java ! test/sun/util/calendar/zi/tzdata/VERSION ! test/sun/util/calendar/zi/tzdata/africa ! test/sun/util/calendar/zi/tzdata/antarctica ! test/sun/util/calendar/zi/tzdata/asia ! test/sun/util/calendar/zi/tzdata/australasia ! test/sun/util/calendar/zi/tzdata/backward ! test/sun/util/calendar/zi/tzdata/etcetera ! test/sun/util/calendar/zi/tzdata/europe ! test/sun/util/calendar/zi/tzdata/iso3166.tab ! test/sun/util/calendar/zi/tzdata/leapseconds ! test/sun/util/calendar/zi/tzdata/northamerica ! test/sun/util/calendar/zi/tzdata/southamerica ! test/sun/util/calendar/zi/tzdata/zone.tab Changeset: e2e3c2c249e2 Author: henryjen Date: 2013-10-16 21:34 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e2e3c2c249e2 8026768: java.util.Map.Entry comparingBy methods missing @since 1.8 Reviewed-by: dholmes ! src/share/classes/java/util/Map.java Changeset: ce266885222d Author: peytoia Date: 2013-10-17 13:57 +0900 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ce266885222d 8025703: Update LSR datafile for BCP 47 Reviewed-by: okutsu ! src/share/classes/sun/util/locale/LocaleEquivalentMaps.java + test/java/util/Locale/Bug8025703.java ! test/java/util/Locale/tools/language-subtag-registry.txt Changeset: a45acc8de0f3 Author: wetmore Date: 2013-10-16 23:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a45acc8de0f3 8026762: jdk8-tl builds windows builds failing in corba - javac: no source files Reviewed-by: katleman, dholmes ! makefiles/GenerateClasses.gmk Changeset: 37e3dcb798c3 Author: weijun Date: 2013-10-17 20:56 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/37e3dcb798c3 8026712: TEST_BUG: update sun/security/tools/keytool/autotest.sh with a new location to find of libsoftokn3.so Reviewed-by: vinnie ! test/sun/security/tools/keytool/autotest.sh Changeset: 0a6730b5e192 Author: drchase Date: 2013-10-16 17:55 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0a6730b5e192 8022718: Runtime accessibility checking: protected class, if extended, should be accessible from another package Summary: Modify accessibility check; it was muddled about Java vs JVM protection terminology. Reviewed-by: jrose ! src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java ! src/share/classes/sun/invoke/util/VerifyAccess.java ! src/share/classes/sun/reflect/Reflection.java + test/java/lang/invoke/accessProtectedSuper/BogoLoader.java + test/java/lang/invoke/accessProtectedSuper/MethodInvoker.java + test/java/lang/invoke/accessProtectedSuper/Test.java + test/java/lang/invoke/accessProtectedSuper/anotherpkg/MethodSupplierOuter.java Changeset: 36fe6a9bd43e Author: rriggs Date: 2013-10-17 10:37 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/36fe6a9bd43e 8026516: javadoc errors in java.time Summary: Corrected links to TemporalQuery and TemporalField.resolve Reviewed-by: mduigou, darcy, lancea ! src/share/classes/java/time/Instant.java ! src/share/classes/java/time/LocalDateTime.java ! src/share/classes/java/time/LocalTime.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/OffsetTime.java ! src/share/classes/java/time/ZoneId.java ! src/share/classes/java/time/ZoneOffset.java ! src/share/classes/java/time/ZonedDateTime.java ! src/share/classes/java/time/chrono/ChronoLocalDate.java ! src/share/classes/java/time/chrono/Chronology.java ! src/share/classes/java/time/chrono/Era.java ! src/share/classes/java/time/chrono/IsoChronology.java ! src/share/classes/java/time/chrono/IsoEra.java ! src/share/classes/java/time/chrono/MinguoChronology.java ! src/share/classes/java/time/chrono/MinguoEra.java ! src/share/classes/java/time/chrono/ThaiBuddhistChronology.java ! src/share/classes/java/time/chrono/ThaiBuddhistEra.java ! src/share/classes/java/time/format/DateTimeFormatter.java ! src/share/classes/java/time/format/DateTimeFormatterBuilder.java ! src/share/classes/java/time/temporal/IsoFields.java ! src/share/classes/java/time/temporal/JulianFields.java ! src/share/classes/java/time/temporal/Temporal.java ! src/share/classes/java/time/temporal/WeekFields.java ! src/share/classes/java/time/zone/ZoneOffsetTransitionRule.java ! src/share/classes/java/time/zone/ZoneRules.java Changeset: 5d866df64ae3 Author: mullan Date: 2013-10-17 10:18 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5d866df64ae3 8026346: test/java/lang/SecurityManager/CheckPackageAccess.java failing Reviewed-by: vinnie ! src/share/lib/security/java.security-macosx ! test/java/lang/SecurityManager/CheckPackageAccess.java Changeset: 04e8b8fc6906 Author: mullan Date: 2013-10-17 10:37 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/04e8b8fc6906 Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m - src/share/classes/java/net/HttpURLPermission.java - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 Changeset: 85a73ad28c53 Author: mullan Date: 2013-10-17 11:34 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/85a73ad28c53 Merge Changeset: 456a9b199208 Author: rriggs Date: 2013-10-17 13:43 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/456a9b199208 8026183: minor documentation problems in java.lang.invoke 8015808: Typo in MethodHandle javadoc Summary: Fix typos and javadoc markup and extraneous paragraph tags Reviewed-by: lancea ! src/share/classes/java/lang/invoke/CallSite.java ! src/share/classes/java/lang/invoke/ConstantCallSite.java ! src/share/classes/java/lang/invoke/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandles.java ! src/share/classes/java/lang/invoke/MethodType.java Changeset: bc04f561bb78 Author: joehw Date: 2013-10-17 11:43 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bc04f561bb78 8015243: SchemaFactory does not catch enum. value that is not in the value space of the base type, anyURI Reviewed-by: lancea + test/javax/xml/jaxp/validation/8015243/AnyURITest.java + test/javax/xml/jaxp/validation/8015243/anyURI_b006.xsd Changeset: fa38f8e0accd Author: juh Date: 2013-10-17 12:00 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fa38f8e0accd 8026233: test/sun/security/tools/keytool/StorePasswords.java needs to clean up files Reviewed-by: vinnie ! test/sun/security/tools/keytool/StorePasswords.java Changeset: 64c0ac7cd936 Author: lancea Date: 2013-10-17 15:14 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/64c0ac7cd936 8026812: doclint clean up for java.sql and javax.sql Reviewed-by: mduigou ! src/share/classes/java/sql/CallableStatement.java ! src/share/classes/java/sql/Connection.java ! src/share/classes/java/sql/DatabaseMetaData.java ! src/share/classes/java/sql/ResultSet.java ! src/share/classes/java/sql/SQLException.java ! src/share/classes/java/sql/SQLFeatureNotSupportedException.java ! src/share/classes/java/sql/SQLPermission.java ! src/share/classes/java/sql/SQLWarning.java ! src/share/classes/java/sql/SQLXML.java ! src/share/classes/java/sql/Statement.java ! src/share/classes/javax/sql/CommonDataSource.java ! src/share/classes/javax/sql/RowSet.java ! src/share/classes/javax/sql/rowset/BaseRowSet.java ! src/share/classes/javax/sql/rowset/CachedRowSet.java ! src/share/classes/javax/sql/rowset/FilteredRowSet.java ! src/share/classes/javax/sql/rowset/JdbcRowSet.java ! src/share/classes/javax/sql/rowset/JoinRowSet.java ! src/share/classes/javax/sql/rowset/Joinable.java ! src/share/classes/javax/sql/rowset/Predicate.java ! src/share/classes/javax/sql/rowset/WebRowSet.java ! src/share/classes/javax/sql/rowset/spi/SyncFactory.java ! src/share/classes/javax/sql/rowset/spi/SyncProvider.java ! src/share/classes/javax/sql/rowset/spi/SyncResolver.java Changeset: 3735d81552a7 Author: mchung Date: 2013-10-17 13:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3735d81552a7 8015912: jdeps support to output in dot file format 8026255: Switch jdeps to follow traditional Java option style Reviewed-by: alanb ! test/sun/reflect/CallerSensitive/CallerSensitiveFinder.java Changeset: c1af85c48819 Author: mduigou Date: 2013-10-17 12:43 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c1af85c48819 8004138: ForkJoinTask leaks exceptions Reviewed-by: chegar, mduigou, psandoz, martin Contributed-by: Doug Lea
! src/share/classes/java/util/concurrent/ForkJoinTask.java + test/java/util/concurrent/forkjoin/FJExceptionTableLeak.java Changeset: e76bb2436b04 Author: bpb Date: 2013-10-17 15:05 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e76bb2436b04 8026832: Clean up straggling doclint warnings in java.math Summary: Fix empty paragraph tag warnings. Reviewed-by: lancea ! src/share/classes/java/math/BigDecimal.java ! src/share/classes/java/math/RoundingMode.java Changeset: 187d5ccb5b18 Author: lana Date: 2013-10-17 15:04 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/187d5ccb5b18 Merge ! makefiles/CompileJavaClasses.gmk ! makefiles/CompileLaunchers.gmk ! makefiles/CompileNativeLibraries.gmk ! makefiles/CopyFiles.gmk ! makefiles/CreateJars.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk ! makefiles/GenerateClasses.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk ! makefiles/Images.gmk ! makefiles/Setup.gmk ! makefiles/Tools.gmk + makefiles/gendata/GendataBreakIterator.gmk ! makefiles/profile-includes.txt - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 Changeset: b73fb7920645 Author: lana Date: 2013-10-17 15:53 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b73fb7920645 Merge - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 Changeset: c1616a944d1c Author: weijun Date: 2013-10-18 08:57 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c1616a944d1c 7025699: Policy Tool is not accessible by keyboard Reviewed-by: alexp, weijun Contributed-by: Leif Samuelsson ! src/share/classes/sun/security/tools/policytool/PolicyTool.java ! src/share/classes/sun/security/tools/policytool/Resources.java ! test/sun/security/tools/policytool/Alias.html ! test/sun/security/tools/policytool/OpenPolicy.html ! test/sun/security/tools/policytool/UpdatePermissions.html Changeset: 01b81253f2d5 Author: dcubed Date: 2013-10-15 08:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/01b81253f2d5 7165611: implement Full Debug Symbols on MacOS X hotspot Summary: Add MacOS X FDS support to hotspot; add minimal MacOS X FDS import support to jdk; add MacOS X FDS support to install; add MacOS X FDS support to root. Reviewed-by: erikj, sla, dholmes, rdurbin, tbell, ihse ! make/common/Defs-macosx.gmk ! make/common/Defs.gmk ! make/java/redist/Makefile ! makefiles/Import.gmk ! makefiles/Tools.gmk Changeset: 969e8c6c26cc Author: amurillo Date: 2013-10-19 08:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/969e8c6c26cc Merge ! makefiles/Import.gmk ! makefiles/Tools.gmk Changeset: c4ab67d1e0ce Author: amurillo Date: 2013-10-22 13:56 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c4ab67d1e0ce Merge ! makefiles/Tools.gmk Changeset: a5b57fca66da Author: ihse Date: 2013-10-16 20:24 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a5b57fca66da 8025715: Split CompileNativeLibraries.gmk Reviewed-by: erikj ! makefiles/CompileNativeLibraries.gmk + makefiles/lib/Awt2dLibraries.gmk + makefiles/lib/CoreLibraries.gmk + makefiles/lib/NetworkingLibraries.gmk + makefiles/lib/NioLibraries.gmk + makefiles/lib/PlatformLibraries.gmk + makefiles/lib/SecurityLibraries.gmk + makefiles/lib/ServiceabilityLibraries.gmk + makefiles/lib/SoundLibraries.gmk Changeset: 1e99d539088d Author: katleman Date: 2013-10-18 15:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1e99d539088d Merge Changeset: 7ec4ddc36ad6 Author: erikj Date: 2013-10-17 16:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7ec4ddc36ad6 8019540: licensee reports a JDK8 build failure after 8005849/8005008 fixes integrated. Reviewed-by: dholmes, sla ! makefiles/CopyIntoClasses.gmk Changeset: 11e90e4167d4 Author: erikj Date: 2013-10-21 10:40 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/11e90e4167d4 Merge Changeset: 3a6ac3484b05 Author: cl Date: 2013-10-21 23:33 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3a6ac3484b05 8026974: solaris build missing java-rmi.cgi Reviewed-by: ksrini ! makefiles/CompileLaunchers.gmk Changeset: b121e84392fa Author: erikj Date: 2013-10-22 11:59 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b121e84392fa 8026966: Most native libs broken on mac in jdk8/build Reviewed-by: ihse, anthony ! makefiles/lib/PlatformLibraries.gmk Changeset: 9850efaedc50 Author: katleman Date: 2013-10-22 16:14 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9850efaedc50 Merge ! makefiles/CompileLaunchers.gmk ! makefiles/CompileNativeLibraries.gmk + makefiles/lib/Awt2dLibraries.gmk + makefiles/lib/CoreLibraries.gmk + makefiles/lib/NetworkingLibraries.gmk + makefiles/lib/NioLibraries.gmk + makefiles/lib/PlatformLibraries.gmk + makefiles/lib/SecurityLibraries.gmk + makefiles/lib/ServiceabilityLibraries.gmk + makefiles/lib/SoundLibraries.gmk Changeset: 698937f18761 Author: tbell Date: 2013-10-22 16:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/698937f18761 8027039: [jprt] Remove 32-bit Solaris from jprt.properties files Reviewed-by: mduigou, mchung ! make/jprt.properties ! makefiles/jprt.properties Changeset: 81431a7c17cf Author: tbell Date: 2013-10-22 16:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/81431a7c17cf Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m - src/share/classes/com/sun/jdi/connect/package.html - src/share/classes/com/sun/jdi/connect/spi/package.html - src/share/classes/com/sun/jdi/event/package.html - src/share/classes/com/sun/jdi/package.html - src/share/classes/com/sun/jdi/request/package.html - src/share/classes/com/sun/management/package.html - src/share/classes/com/sun/tools/attach/package.html - src/share/classes/com/sun/tools/attach/spi/package.html - src/share/classes/com/sun/tools/jconsole/package.html - src/share/classes/java/net/HttpURLPermission.java - test/com/oracle/security/ucrypto/TestAES.java - test/com/oracle/security/ucrypto/TestDigest.java - test/com/oracle/security/ucrypto/TestRSA.java - test/com/oracle/security/ucrypto/UcryptoTest.java - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 Changeset: aabaae5de1ee Author: ihse Date: 2013-10-23 13:06 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/aabaae5de1ee 8001922: Improve freetype handling. Reviewed-by: erikj ! makefiles/CopyFiles.gmk ! makefiles/lib/Awt2dLibraries.gmk Changeset: ab0e61a57df7 Author: chegar Date: 2013-10-23 13:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ab0e61a57df7 8027059: (sctp) fatal warnings overly restrictive with gcc 4.8.1 Reviewed-by: mduigou, dxu, erikj, ihse ! makefiles/lib/NioLibraries.gmk Changeset: 5b4261b4b72a Author: erikj Date: 2013-10-23 17:57 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5b4261b4b72a 8026888: Licensee build failure due to wrong libs being called Reviewed-by: tbell, ihse, simonis ! makefiles/lib/Awt2dLibraries.gmk Changeset: b88aa723a5fa Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b88aa723a5fa Added tag jdk8-b113 for changeset 5b4261b4b72a ! .hgtags Changeset: 110c4fe4c354 Author: erikj Date: 2013-10-24 10:43 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/110c4fe4c354 8009280: JCE jurisdiction policy files not copied into jdk/lib/security Reviewed-by: tbell, ihse ! makefiles/BuildJdk.gmk ! makefiles/CompileJavaClasses.gmk ! makefiles/CreateJars.gmk + makefiles/CreateSecurityJars.gmk ! makefiles/SignJars.gmk Changeset: f40f639e1f52 Author: dholmes Date: 2013-10-24 20:46 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f40f639e1f52 8016096: [macosx] jawt_md.h shipped with jdk is outdated Summary: Revised build system and added platform specific headers for Mac OS X Reviewed-by: anthony, art, ihse, erikj Contributed-by: david.dehaven at oracle.com ! makefiles/CopyFiles.gmk ! makefiles/gensrc/GensrcX11Wrappers.gmk + src/macosx/javavm/export/jawt_md.h + src/macosx/javavm/export/jni_md.h + src/macosx/javavm/export/jvm_md.h ! src/macosx/native/sun/awt/AWTSurfaceLayers.h ! src/macosx/native/sun/awt/CMenuComponent.h ! src/macosx/native/sun/awt/jawt.m ! src/macosx/native/sun/font/CoreTextSupport.h ! src/share/javavm/export/jawt.h Changeset: f3c95d961557 Author: dholmes Date: 2013-10-24 20:47 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f3c95d961557 8025673: [macosx] Disable X11 AWT toolkit Summary: Disable but not completely remove the XAWT and headless toolkits on Mac OS X Reviewed-by: anthony, art, ihse, erikj Contributed-by: david.dehaven at oracle.com ! makefiles/CompileJavaClasses.gmk ! makefiles/GenerateSources.gmk ! makefiles/Tools.gmk ! makefiles/lib/Awt2dLibraries.gmk ! src/share/native/java/lang/System.c ! src/share/native/java/lang/java_props.h ! src/solaris/native/java/lang/java_props_macosx.c ! src/solaris/native/java/lang/java_props_macosx.h ! src/solaris/native/java/lang/java_props_md.c ! src/solaris/native/sun/awt/fontpath.c ! test/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh Changeset: 5813af4c02e4 Author: dcubed Date: 2013-10-25 10:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5813af4c02e4 8027117: adapt JDK-7165611 to new build-infra whitespace/indent policy Summary: Fix whitespace/indent issues. Reviewed-by: hseigel, coleenp, erikj, ihse ! makefiles/Import.gmk Changeset: 1628a137edca Author: katleman Date: 2013-10-28 16:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1628a137edca Merge Changeset: f26a0c8071bd Author: erikj Date: 2013-10-29 15:44 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f26a0c8071bd 8027298: broken link in jdk8b113 macosx binaries Reviewed-by: dcubed, ihse ! makefiles/Import.gmk Changeset: 62982664dc72 Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/62982664dc72 Added tag jdk8-b114 for changeset f26a0c8071bd ! .hgtags From john.coomes at oracle.com Sat Nov 2 02:44:46 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 02:44:46 +0000 Subject: hg: hsx/hotspot-gc/langtools: 76 new changesets Message-ID: <20131102024838.A69E562921@hg.openjdk.java.net> Changeset: 16194509e483 Author: vromero Date: 2013-09-27 10:24 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/16194509e483 8024497: crash returning this-referencing lambda from default method Reviewed-by: jjg, rfield ! src/share/classes/com/sun/tools/javac/code/Symbol.java + test/tools/javac/lambda/8024497/CrashUsingReturningThisRefLambdaFromDefaultMetTest.java Changeset: b7d8b71e1658 Author: jlahoda Date: 2013-09-27 17:28 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b7d8b71e1658 8022765: Compiler crashes with exception on wrong usage of an annotation. Summary: Error recovery for incorrect annotation attribute values - ensure the values are always attributed appropriately Reviewed-by: jfranck, jjg ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/annotations/neg/8022765/T8022765.java + test/tools/javac/annotations/neg/8022765/T8022765.out + test/tools/javac/annotations/neg/8022765/VerifyAnnotationsAttributed.java Changeset: 2c24a04ebfb4 Author: kizune Date: 2013-09-27 21:20 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/2c24a04ebfb4 6978886: javadoc shows stacktrace after print error resulting from disk full Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java Changeset: 699b86e82656 Author: sogoel Date: 2013-09-27 10:39 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/699b86e82656 8025537: Convert 2 javac/enumdeclarations tests in jtreg for regression ws Reviewed-by: jjg + test/tools/javac/enum/EnumAsIdentifier.java + test/tools/javac/enum/EnumAsIdentifier.out + test/tools/javac/enum/EnumAsIdentifier4.out + test/tools/javac/enum/EnumAsIdentifier5.out + test/tools/javac/enum/EnumMembersOrder.java + test/tools/javac/enum/EnumMembersOrder.out Changeset: 4ed8565fa536 Author: mduigou Date: 2013-09-27 11:34 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/4ed8565fa536 8024842: Define ABS_TEST_OUTPUT_DIR via TEST_OUTPUT_DIR Reviewed-by: ihse, erikj, vromero ! test/Makefile Changeset: dee28dd47e12 Author: rfield Date: 2013-09-27 13:06 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/dee28dd47e12 8025548: langtools test tools/javac/lambda/methodReference/BridgeMethod.java incorrectly assumes no other methods generated in lambda class Reviewed-by: vromero ! test/tools/javac/lambda/methodReference/BridgeMethod.java Changeset: 82044fe8c7f7 Author: ksrini Date: 2013-09-27 16:05 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/82044fe8c7f7 8015073: c.s.t.javac.api.JavacTool.getTask() - more informative exception Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/api/JavacTool.java ! test/tools/javac/api/TestJavacTask.java Changeset: 34223fc58c1a Author: lana Date: 2013-09-27 18:38 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/34223fc58c1a Merge Changeset: 84161510f257 Author: emc Date: 2013-09-28 13:46 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/84161510f257 8025413: NPE in Type.java due to recent change Summary: isCompound throws a NPE for noType and other types. Made it return a reasonable result instead. Reviewed-by: jjg, vromero ! src/share/classes/com/sun/tools/javac/code/Type.java + test/tools/javac/processing/model/type/InheritedAP.java Changeset: 1a3e8347f3dd Author: kizune Date: 2013-10-01 17:03 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/1a3e8347f3dd 7118749: NPE in CreateSymbols caused by bad diagnostic Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java Changeset: de1c5dbe6c28 Author: emc Date: 2013-10-01 17:41 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/de1c5dbe6c28 8021339: Compile-time error during casting array to intersection Summary: Add ability to have arrays in intersection types. Reviewed-by: jjg, vromero ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/ArraysInIntersections.java + test/tools/javac/InferArraysInIntersections.java ! test/tools/javac/generics/typevars/6680106/T6680106.out Changeset: 1e6088da1740 Author: vromero Date: 2013-10-02 17:04 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/1e6088da1740 8023679: Improve error message for '_' used as a lambda parameter name Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/UnderscoreInLambdaExpression.java Changeset: c13305cf8528 Author: jlahoda Date: 2013-10-04 08:29 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/c13305cf8528 8025118: Annotation processing api returns default modifier for interface without default methods Summary: TypeElement.getModifiers() should not contain Modifier.DEFAULT Reviewed-by: darcy, jjg ! src/share/classes/com/sun/tools/javac/code/Symbol.java + test/tools/javac/processing/model/element/TestTypeElement.java Changeset: c0d44b1e6b6a Author: kizune Date: 2013-10-04 19:38 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/c0d44b1e6b6a 7096170: should remove unused support for enabling javac logging Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Changeset: 379c04c090cf Author: darcy Date: 2013-10-04 10:00 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/379c04c090cf 8025913: Rename jdk.Supported to jdk.Exported Reviewed-by: psandoz, forax, lancea, alanb, mchung, jjg ! src/share/classes/com/sun/source/doctree/AttributeTree.java ! src/share/classes/com/sun/source/doctree/AuthorTree.java ! src/share/classes/com/sun/source/doctree/BlockTagTree.java ! src/share/classes/com/sun/source/doctree/CommentTree.java ! src/share/classes/com/sun/source/doctree/DeprecatedTree.java ! src/share/classes/com/sun/source/doctree/DocCommentTree.java ! src/share/classes/com/sun/source/doctree/DocRootTree.java ! src/share/classes/com/sun/source/doctree/DocTree.java ! src/share/classes/com/sun/source/doctree/DocTreeVisitor.java ! src/share/classes/com/sun/source/doctree/EndElementTree.java ! src/share/classes/com/sun/source/doctree/EntityTree.java ! src/share/classes/com/sun/source/doctree/ErroneousTree.java ! src/share/classes/com/sun/source/doctree/IdentifierTree.java ! src/share/classes/com/sun/source/doctree/InheritDocTree.java ! src/share/classes/com/sun/source/doctree/InlineTagTree.java ! src/share/classes/com/sun/source/doctree/LinkTree.java ! src/share/classes/com/sun/source/doctree/LiteralTree.java ! src/share/classes/com/sun/source/doctree/ParamTree.java ! src/share/classes/com/sun/source/doctree/ReferenceTree.java ! src/share/classes/com/sun/source/doctree/ReturnTree.java ! src/share/classes/com/sun/source/doctree/SeeTree.java ! src/share/classes/com/sun/source/doctree/SerialDataTree.java ! src/share/classes/com/sun/source/doctree/SerialFieldTree.java ! src/share/classes/com/sun/source/doctree/SerialTree.java ! src/share/classes/com/sun/source/doctree/SinceTree.java ! src/share/classes/com/sun/source/doctree/StartElementTree.java ! src/share/classes/com/sun/source/doctree/TextTree.java ! src/share/classes/com/sun/source/doctree/ThrowsTree.java ! src/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java ! src/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java ! src/share/classes/com/sun/source/doctree/ValueTree.java ! src/share/classes/com/sun/source/doctree/VersionTree.java ! src/share/classes/com/sun/source/doctree/package-info.java ! src/share/classes/com/sun/source/tree/AnnotatedTypeTree.java ! src/share/classes/com/sun/source/tree/AnnotationTree.java ! src/share/classes/com/sun/source/tree/ArrayAccessTree.java ! src/share/classes/com/sun/source/tree/ArrayTypeTree.java ! src/share/classes/com/sun/source/tree/AssertTree.java ! src/share/classes/com/sun/source/tree/AssignmentTree.java ! src/share/classes/com/sun/source/tree/BinaryTree.java ! src/share/classes/com/sun/source/tree/BlockTree.java ! src/share/classes/com/sun/source/tree/BreakTree.java ! src/share/classes/com/sun/source/tree/CaseTree.java ! src/share/classes/com/sun/source/tree/CatchTree.java ! src/share/classes/com/sun/source/tree/ClassTree.java ! src/share/classes/com/sun/source/tree/CompilationUnitTree.java ! src/share/classes/com/sun/source/tree/CompoundAssignmentTree.java ! src/share/classes/com/sun/source/tree/ConditionalExpressionTree.java ! src/share/classes/com/sun/source/tree/ContinueTree.java ! src/share/classes/com/sun/source/tree/DoWhileLoopTree.java ! src/share/classes/com/sun/source/tree/EmptyStatementTree.java ! src/share/classes/com/sun/source/tree/EnhancedForLoopTree.java ! src/share/classes/com/sun/source/tree/ErroneousTree.java ! src/share/classes/com/sun/source/tree/ExpressionStatementTree.java ! src/share/classes/com/sun/source/tree/ExpressionTree.java ! src/share/classes/com/sun/source/tree/ForLoopTree.java ! src/share/classes/com/sun/source/tree/IdentifierTree.java ! src/share/classes/com/sun/source/tree/IfTree.java ! src/share/classes/com/sun/source/tree/ImportTree.java ! src/share/classes/com/sun/source/tree/InstanceOfTree.java ! src/share/classes/com/sun/source/tree/IntersectionTypeTree.java ! src/share/classes/com/sun/source/tree/LabeledStatementTree.java ! src/share/classes/com/sun/source/tree/LambdaExpressionTree.java ! src/share/classes/com/sun/source/tree/LineMap.java ! src/share/classes/com/sun/source/tree/LiteralTree.java ! src/share/classes/com/sun/source/tree/MemberReferenceTree.java ! src/share/classes/com/sun/source/tree/MemberSelectTree.java ! src/share/classes/com/sun/source/tree/MethodInvocationTree.java ! src/share/classes/com/sun/source/tree/MethodTree.java ! src/share/classes/com/sun/source/tree/ModifiersTree.java ! src/share/classes/com/sun/source/tree/NewArrayTree.java ! src/share/classes/com/sun/source/tree/NewClassTree.java ! src/share/classes/com/sun/source/tree/ParameterizedTypeTree.java ! src/share/classes/com/sun/source/tree/ParenthesizedTree.java ! src/share/classes/com/sun/source/tree/PrimitiveTypeTree.java ! src/share/classes/com/sun/source/tree/ReturnTree.java ! src/share/classes/com/sun/source/tree/Scope.java ! src/share/classes/com/sun/source/tree/StatementTree.java ! src/share/classes/com/sun/source/tree/SwitchTree.java ! src/share/classes/com/sun/source/tree/SynchronizedTree.java ! src/share/classes/com/sun/source/tree/ThrowTree.java ! src/share/classes/com/sun/source/tree/Tree.java ! src/share/classes/com/sun/source/tree/TreeVisitor.java ! src/share/classes/com/sun/source/tree/TryTree.java ! src/share/classes/com/sun/source/tree/TypeCastTree.java ! src/share/classes/com/sun/source/tree/TypeParameterTree.java ! src/share/classes/com/sun/source/tree/UnaryTree.java ! src/share/classes/com/sun/source/tree/UnionTypeTree.java ! src/share/classes/com/sun/source/tree/VariableTree.java ! src/share/classes/com/sun/source/tree/WhileLoopTree.java ! src/share/classes/com/sun/source/tree/WildcardTree.java ! src/share/classes/com/sun/source/tree/package-info.java ! src/share/classes/com/sun/source/util/DocSourcePositions.java ! src/share/classes/com/sun/source/util/DocTreePath.java ! src/share/classes/com/sun/source/util/DocTreePathScanner.java ! src/share/classes/com/sun/source/util/DocTreeScanner.java ! src/share/classes/com/sun/source/util/DocTrees.java ! src/share/classes/com/sun/source/util/JavacTask.java ! src/share/classes/com/sun/source/util/Plugin.java ! src/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java ! src/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/share/classes/com/sun/source/util/SourcePositions.java ! src/share/classes/com/sun/source/util/TaskEvent.java ! src/share/classes/com/sun/source/util/TaskListener.java ! src/share/classes/com/sun/source/util/TreePath.java ! src/share/classes/com/sun/source/util/TreePathScanner.java ! src/share/classes/com/sun/source/util/TreeScanner.java ! src/share/classes/com/sun/source/util/Trees.java ! src/share/classes/com/sun/source/util/package-info.java ! src/share/classes/com/sun/tools/javac/Main.java + src/share/classes/jdk/Exported.java - src/share/classes/jdk/Supported.java Changeset: 6e186ca11ec0 Author: bpatel Date: 2013-10-04 13:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/6e186ca11ec0 8008164: Invisible table captions in javadoc-generated html Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlStyle.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css + test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java + test/com/sun/javadoc/testHtmlTableStyles/pkg1/TestTable.java + test/com/sun/javadoc/testHtmlTableStyles/pkg2/TestUse.java ! test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java ! test/com/sun/javadoc/testProfiles/TestProfiles.java ! test/com/sun/javadoc/testStylesheet/TestStylesheet.java Changeset: 3344ea7404b1 Author: bpatel Date: 2013-10-04 13:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/3344ea7404b1 8024756: method grouping tabs are not selectable Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java ! test/com/sun/javadoc/JavascriptWinTitle/JavascriptWinTitle.java ! test/com/sun/javadoc/testJavascript/TestJavascript.java Changeset: 2fa6ced325cc Author: jjg Date: 2013-10-04 13:59 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/2fa6ced325cc 8022163: javac exits with 0 status and no messages on error to construct an ann-procesor Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java + test/tools/javac/processing/errors/TestBadProcessor.java Changeset: 515d54c1b063 Author: jjg Date: 2013-10-04 14:46 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/515d54c1b063 6525408: DiagnosticListener should receive MANDATORY_WARNING in standard compiler mode Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java ! src/share/classes/javax/tools/Diagnostic.java Changeset: 3e3c321710be Author: jjg Date: 2013-10-04 15:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/3e3c321710be 8025970: Spurious characters in JavaCompiler Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Changeset: bb87db832b31 Author: ksrini Date: 2013-10-04 16:08 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/bb87db832b31 8003537: javap use internal class name when printing bound of type variable Reviewed-by: jjg ! src/share/classes/com/sun/tools/javap/ClassWriter.java + test/tools/javap/BoundsTypeVariableTest.java Changeset: 15651a673358 Author: ksrini Date: 2013-10-04 16:23 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/15651a673358 8005542: jtreg test OverrideBridge.java contains @ignore Reviewed-by: jjg Contributed-by: steve.sides at oracle.com - test/tools/javac/generics/OverrideBridge.java Changeset: 4dd7ffbf01fb Author: darcy Date: 2013-10-07 16:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/4dd7ffbf01fb 8026017: Make history of AnnotatedConstruct methods in jx.l.m.e.Element clearer Reviewed-by: jjg ! src/share/classes/javax/lang/model/element/Element.java Changeset: 4dfcf3a6902f Author: lana Date: 2013-10-08 14:59 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/4dfcf3a6902f Merge - src/share/classes/jdk/Supported.java - test/tools/javac/generics/OverrideBridge.java Changeset: 2f43529df42f Author: lana Date: 2013-10-11 03:09 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/2f43529df42f Merge - src/share/classes/jdk/Supported.java - test/tools/javac/generics/OverrideBridge.java Changeset: 343aeb2033f0 Author: ihse Date: 2013-10-10 14:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/343aeb2033f0 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! makefiles/BuildLangtools.gmk ! makefiles/Makefile Changeset: 954dd199d6ff Author: katleman Date: 2013-10-16 12:05 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/954dd199d6ff Merge Changeset: 8f54b4231c28 Author: cl Date: 2013-10-17 09:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/8f54b4231c28 Added tag jdk8-b112 for changeset 954dd199d6ff ! .hgtags Changeset: ea000904db62 Author: alundblad Date: 2013-10-08 15:33 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/ea000904db62 8024415: Bug in javac Pretty: Wrong precedence in JCConditional trees Summary: Fixed precedence and associativity issues with pretty printing of JCConditional expressions. Reviewed-by: jfranck Contributed-by: Andreas Lundblad , Matthew Dempsky ! src/share/classes/com/sun/tools/javac/tree/Pretty.java + test/tools/javac/tree/T8024415.java Changeset: 0be3f1820e8b Author: jlahoda Date: 2013-10-09 13:06 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/0be3f1820e8b 8025141: java.lang.ClassFormatError: Illegal field modifiers in class (...) Summary: Should not generate non-public $assertionsDisabled field into interfaces Reviewed-by: jjg, vromero ! src/share/classes/com/sun/tools/javac/comp/Lower.java + test/tools/javac/defaultMethods/Assertions.java + test/tools/javac/defaultMethods/CannotChangeAssertionsStateAfterInitialized.java Changeset: 1b469fd31e35 Author: jlahoda Date: 2013-10-09 13:09 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/1b469fd31e35 8025087: Annotation processing api returns default modifier for interface static method Summary: ClassReader must not set Flags.DEFAULT for interface static methods Reviewed-by: vromero, jjg ! make/build.xml ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/defaultMethods/BadClassfile.java ! test/tools/javac/diags/examples.not-yet.txt + test/tools/javac/diags/examples/InvalidDefaultInterface/InvalidDefaultInterface.java + test/tools/javac/diags/examples/InvalidDefaultInterface/processors/CreateBadClassFile.java + test/tools/javac/diags/examples/InvalidStaticInterface/InvalidStaticInterface.java + test/tools/javac/diags/examples/InvalidStaticInterface/processors/CreateBadClassFile.java ! test/tools/javac/processing/model/element/TestExecutableElement.java Changeset: 1e7ad879f15e Author: alundblad Date: 2013-10-10 08:51 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/1e7ad879f15e 8021237: clean up JavacAnnotatedConstruct Summary: Refactored the static helper methods in JavacAnnoConstructs into ordinary methods and put them in a common superclass (AnnoConstruct) of Symbol and Type. Reviewed-by: jjg, vromero, jfranck + src/share/classes/com/sun/tools/javac/code/AnnoConstruct.java ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/code/Type.java - src/share/classes/com/sun/tools/javac/model/JavacAnnoConstructs.java Changeset: 933ba3f81a87 Author: bpatel Date: 2013-10-10 10:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/933ba3f81a87 8025633: Fix javadoc to generate valid anchor names Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractExecutableMemberWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialFieldWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialMethodWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/PropertyWriterImpl.java + src/share/classes/com/sun/tools/doclets/formats/html/SectionName.java ! src/share/classes/com/sun/tools/doclets/formats/html/SingleIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocletConstants.java ! test/com/sun/javadoc/AccessSkipNav/AccessSkipNav.java + test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java + test/com/sun/javadoc/testAnchorNames/pkg1/DeprMemClass.java + test/com/sun/javadoc/testAnchorNames/pkg1/RegClass.java ! test/com/sun/javadoc/testAnnotationOptional/TestAnnotationOptional.java ! test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java ! test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java ! test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/com/sun/javadoc/testHref/TestHref.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testInterface/TestInterface.java ! test/com/sun/javadoc/testJavaFX/TestJavaFX.java ! test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java ! test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java ! test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java ! test/com/sun/javadoc/testNavigation/TestNavigation.java ! test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenMethodDocCopy.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPackageFlag.java ! test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java Changeset: 6dcf94e32a3a Author: emc Date: 2013-10-10 13:55 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/6dcf94e32a3a 8019461: Clean up javac diagnostics 7196553: Review error messages for repeating annotations Summary: Changes to the diagnostic messages to improve clarity and JLS coherence Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties - test/tools/javac/diags/examples/DuplicateAnnotation.java + test/tools/javac/diags/examples/InterfaceOrArrayExpected.java + test/tools/javac/diags/examples/RepeatableAnnotationsNotSupported.java Changeset: b1b4a6dcc282 Author: emc Date: 2013-10-10 20:12 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b1b4a6dcc282 8008762: Type annotation on inner class in anonymous class show up as regular type annotations 8015257: type annotation with TYPE_USE and FIELD attributed differently if repeated. 8013409: test failures for type annotations Summary: Fixes to address some problems in type annotations Reviewed-by: jfranck, jjg ! src/share/classes/com/sun/tools/javac/code/Attribute.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java + test/tools/javac/annotations/typeAnnotations/classfile/TestAnonInnerClasses.java + test/tools/javac/annotations/typeAnnotations/classfile/testanoninner.template ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.java ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.out ! test/tools/javac/annotations/typeAnnotations/newlocations/MultiCatch.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MultiCatch.java Changeset: f068d235c4f7 Author: jjg Date: 2013-10-10 17:13 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/f068d235c4f7 8026294: 8025633 breaks langtools/test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java Reviewed-by: darcy ! test/com/sun/javadoc/testRepeatedAnnotations/TestRepeatedAnnotations.java Changeset: 8f293c710369 Author: lana Date: 2013-10-10 13:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/8f293c710369 Merge Changeset: bf33f4f81b40 Author: lana Date: 2013-10-10 20:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/bf33f4f81b40 Merge - test/tools/javac/diags/examples/DuplicateAnnotation.java Changeset: 1ce8405af5fe Author: rfield Date: 2013-10-10 23:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/1ce8405af5fe 8012557: Implement lambda methods on interfaces as private 8016320: Method reference in subinterface of type I.super::foo produces exception at runtime Summary: Now that the VM supports interface instance private methods, lambda methods and lambda bridges are always private. Access is now through invokespecial. Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/share/classes/com/sun/tools/javac/jvm/Pool.java + test/tools/javac/lambda/8012557/A.java + test/tools/javac/lambda/8012557/B.java + test/tools/javac/lambda/8012557/C.java + test/tools/javac/lambda/8012557/PrivateLambdas.java + test/tools/javac/lambda/8012557/SAM.java + test/tools/javac/lambda/8016320/IllegalBridgeModifier.java Changeset: 872c4a898b38 Author: jlahoda Date: 2013-10-11 15:49 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/872c4a898b38 6278240: Exception from AnnotationValue.getValue() should list the found type not the required type Reviewed-by: darcy, jfranck, jjg ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java + test/tools/javac/processing/errors/EnsureAnnotationTypeMismatchException/Processor.java + test/tools/javac/processing/errors/EnsureAnnotationTypeMismatchException/Source.java + test/tools/javac/processing/errors/EnsureAnnotationTypeMismatchException/Source.out Changeset: f329c374da4b Author: lana Date: 2013-10-11 23:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/f329c374da4b Merge Changeset: b024fe427d24 Author: jjg Date: 2013-10-14 12:38 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b024fe427d24 8026368: doclint does not report empty tags when tag closed implicitly Reviewed-by: darcy ! src/share/classes/com/sun/tools/doclint/Checker.java ! test/tools/doclint/HtmlAttrsTest.java ! test/tools/doclint/HtmlAttrsTest.out ! test/tools/doclint/tidy/BadEnd.out ! test/tools/doclint/tidy/TrimmingEmptyTag.java ! test/tools/doclint/tidy/TrimmingEmptyTag.out Changeset: 87b5bfef7edb Author: jlahoda Date: 2013-10-14 22:11 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/87b5bfef7edb 8014016: javac is too late detecting invalid annotation usage Summary: Adding new queue to Annotate for validation tasks, performing annotation validation during enter Reviewed-by: jjg, emc, jfranck ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.out + test/tools/javac/processing/errors/StopOnInapplicableAnnotations/GenerateFunctionalInterface.java + test/tools/javac/processing/errors/StopOnInapplicableAnnotations/GenerateSuperInterfaceProcessor.java + test/tools/javac/processing/errors/StopOnInapplicableAnnotations/Processor.java + test/tools/javac/processing/errors/StopOnInapplicableAnnotations/Source.java Changeset: b9e3b55a908c Author: jjg Date: 2013-10-14 16:28 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b9e3b55a908c 8026371: "tidy" issues in langtools/src/**/*.html files Reviewed-by: darcy + src/share/classes/com/sun/javadoc/package-info.java - src/share/classes/com/sun/javadoc/package.html + src/share/classes/com/sun/tools/classfile/package-info.java - src/share/classes/com/sun/tools/classfile/package.html + src/share/classes/com/sun/tools/doclets/formats/html/markup/package-info.java - src/share/classes/com/sun/tools/doclets/formats/html/markup/package.html + src/share/classes/com/sun/tools/doclets/formats/html/package-info.java - src/share/classes/com/sun/tools/doclets/formats/html/package.html + src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package-info.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package.html + src/share/classes/com/sun/tools/doclets/internal/toolkit/package-info.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/package.html + src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package-info.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package.html + src/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package-info.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package.html + src/share/classes/com/sun/tools/doclets/internal/toolkit/util/package-info.java - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/package.html + src/share/classes/com/sun/tools/doclets/package-info.java - src/share/classes/com/sun/tools/doclets/package.html + src/share/classes/com/sun/tools/javap/package-info.java - src/share/classes/com/sun/tools/javap/package.html ! src/share/classes/javax/lang/model/overview.html ! src/share/classes/javax/tools/overview.html Changeset: 7d266a2b31b2 Author: jjg Date: 2013-10-14 22:34 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/7d266a2b31b2 8025693: recent javadoc changes cause com/sun/javadoc/testLinkOption/TestLinkOption.java to fail Reviewed-by: darcy ! src/share/classes/com/sun/tools/javadoc/ClassDocImpl.java + test/tools/javadoc/8025693/Test.java Changeset: 09a414673570 Author: jjg Date: 2013-10-14 23:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/09a414673570 8025998: Missing LV table in lambda bodies Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java + test/tools/javac/lambda/LocalVariableTable.java Changeset: 79649bf21a92 Author: jlahoda Date: 2013-10-15 16:23 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/79649bf21a92 8026180: com.sun.source.tree.NewArrayTree refers to com.sun.tools.javac.util.List Summary: Correcting import in NewArrayTree, adding test protecting againts improper types in API signatures Reviewed-by: jjg ! src/share/classes/com/sun/source/tree/NewArrayTree.java + test/tools/javac/tree/NoPrivateTypesExported.java Changeset: bf6b11347b1a Author: bpatel Date: 2013-10-15 11:20 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/bf6b11347b1a 8026370: javadoc creates empty Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/TagletWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/ContentBuilder.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java + test/com/sun/javadoc/testTagOutput/TestTagOutput.java + test/com/sun/javadoc/testTagOutput/pkg1/DeprecatedTag.java Changeset: 70a301b35e71 Author: vromero Date: 2013-10-15 19:36 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/70a301b35e71 8025816: javac crash with method reference with a type variable as the site Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/lambda/T8025816/CrashMethodReferenceWithSiteTypeVarTest.java Changeset: d8d6b58f1ebf Author: vromero Date: 2013-10-15 21:02 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/d8d6b58f1ebf 8024947: javac should issue the potentially ambiguous overload warning only where the problem appears Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/lambda/T8024947/PotentiallyAmbiguousWarningTest.java + test/tools/javac/lambda/T8024947/PotentiallyAmbiguousWarningTest.out Changeset: 84df20dc604a Author: bpatel Date: 2013-07-24 15:18 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/84df20dc604a 8016675: Make Javadoc pages more robust Reviewed-by: jlaskey, ksrini ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java + test/com/sun/javadoc/testWindowTitle/TestWindowTitle.java + test/com/sun/javadoc/testWindowTitle/p1/C1.java + test/com/sun/javadoc/testWindowTitle/p2/C2.java Changeset: 8b3e2cc5f1de Author: chegar Date: 2013-07-25 19:06 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/8b3e2cc5f1de Merge - test/tools/javac/generics/6723444/T6723444.out - test/tools/javac/generics/7015430/T7015430.out Changeset: 0d75d3b96477 Author: chegar Date: 2013-08-02 11:11 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/0d75d3b96477 Merge Changeset: 2d1a54d213c2 Author: chegar Date: 2013-08-09 14:44 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/2d1a54d213c2 Merge Changeset: 84b6d75ff2c9 Author: chegar Date: 2013-08-15 21:34 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/84b6d75ff2c9 Merge Changeset: a540e2a926cf Author: chegar Date: 2013-08-23 22:12 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/a540e2a926cf Merge Changeset: a8f0c3583a86 Author: chegar Date: 2013-08-30 10:17 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/a8f0c3583a86 Merge - test/tools/javac/defaultMethods/defaultMethodExecution/DefaultMethodRegressionTests.java - test/tools/javac/diags/examples/IncompatibleThrownTypesInLambda.java Changeset: 6250a7f0aba6 Author: chegar Date: 2013-09-06 10:05 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/6250a7f0aba6 Merge - test/com/sun/javadoc/testNavagation/TestNavagation.java - test/com/sun/javadoc/testNavagation/pkg/A.java - test/com/sun/javadoc/testNavagation/pkg/C.java - test/com/sun/javadoc/testNavagation/pkg/E.java - test/com/sun/javadoc/testNavagation/pkg/I.java - test/tools/javac/8015701/AnonymousParameters.java Changeset: a6901af8a2e4 Author: chegar Date: 2013-09-14 20:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/a6901af8a2e4 Merge Changeset: 2c13a5da6854 Author: chegar Date: 2013-10-03 19:28 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/2c13a5da6854 Merge ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java - src/share/classes/com/sun/tools/javac/code/Annotations.java - test/tools/javac/diags/examples/CyclicInference.java - test/tools/javac/diags/examples/MrefStat.java.rej - test/tools/javac/diags/examples/MrefStat1.java.rej - test/tools/javac/lambda/TargetType10.out - test/tools/javac/lambda/typeInference/InferenceTest5.java - test/tools/javac/lambda/typeInference/InferenceTest_neg5.java - test/tools/javac/lambda/typeInference/InferenceTest_neg5.out Changeset: 86e57f576e65 Author: chegar Date: 2013-10-11 19:05 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/86e57f576e65 Merge ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java Changeset: 46feacb99698 Author: chegar Date: 2013-10-15 14:17 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/46feacb99698 Merge - src/share/classes/com/sun/javadoc/package.html - src/share/classes/com/sun/tools/classfile/package.html - src/share/classes/com/sun/tools/doclets/formats/html/markup/package.html - src/share/classes/com/sun/tools/doclets/formats/html/package.html - src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/package.html - src/share/classes/com/sun/tools/doclets/internal/toolkit/package.html - src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/package.html - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/links/package.html - src/share/classes/com/sun/tools/doclets/internal/toolkit/util/package.html - src/share/classes/com/sun/tools/doclets/package.html - src/share/classes/com/sun/tools/javap/package.html Changeset: 90c9ae4bc756 Author: chegar Date: 2013-10-15 20:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/90c9ae4bc756 Merge Changeset: dd073728085d Author: chegar Date: 2013-10-15 21:12 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/dd073728085d Merge Changeset: 19e8eebfbe52 Author: jlahoda Date: 2013-10-15 22:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/19e8eebfbe52 8026510: The name of com.sun.tools.javac.comp.Annotate.Annotator is confusing Summary: A mostly automated rename Annotate.Annotator->Annotate.Worker and enterAnnotation->run. Reviewed-by: emc, jjg ! src/share/classes/com/sun/tools/javac/code/SymbolMetadata.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java Changeset: b0c086cd4520 Author: jjg Date: 2013-10-15 15:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b0c086cd4520 8026564: import changes from type-annotations forest Reviewed-by: jjg Contributed-by: wdietl at gmail.com, steve.sides at oracle.com ! make/build.properties ! make/build.xml ! src/share/classes/com/sun/tools/javac/code/Attribute.java ! src/share/classes/com/sun/tools/javac/code/Printer.java ! src/share/classes/com/sun/tools/javac/code/SymbolMetadata.java ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/share/classes/javax/lang/model/AnnotatedConstruct.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/typeAnnotations/smoke/TestSmoke.java ! test/tools/javac/T7042623.java ! test/tools/javac/annotations/typeAnnotations/classfile/ClassfileTestHelper.java + test/tools/javac/annotations/typeAnnotations/classfile/Scopes.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage1.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage1.out ! test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion.java ! test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion.out ! test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion7.out ! test/tools/javac/annotations/typeAnnotations/failures/BadCast.java ! test/tools/javac/annotations/typeAnnotations/failures/BadCast.out + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotatePackages.java + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotatePackages.out + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateScoping.java + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateScoping.out ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.java - test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.out + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass2.java + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass2.out + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass3.java + test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass3.out ! test/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java ! test/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.out - test/tools/javac/annotations/typeAnnotations/failures/IncompleteVararg.java - test/tools/javac/annotations/typeAnnotations/failures/IncompleteVararg.out ! test/tools/javac/annotations/typeAnnotations/failures/IndexArray.java ! test/tools/javac/annotations/typeAnnotations/failures/IndexArray.out ! test/tools/javac/annotations/typeAnnotations/failures/LintCast.out ! test/tools/javac/annotations/typeAnnotations/failures/OldArray.java + test/tools/javac/annotations/typeAnnotations/failures/OldArray.out ! test/tools/javac/annotations/typeAnnotations/failures/Scopes.java ! test/tools/javac/annotations/typeAnnotations/failures/Scopes.out ! test/tools/javac/annotations/typeAnnotations/failures/StaticFields.java ! test/tools/javac/annotations/typeAnnotations/failures/StaticFields.out - test/tools/javac/annotations/typeAnnotations/failures/StaticMethods.java - test/tools/javac/annotations/typeAnnotations/failures/StaticMethods.out ! test/tools/javac/annotations/typeAnnotations/failures/TypeVariableCycleTest.java + test/tools/javac/annotations/typeAnnotations/failures/TypeVariableMissingTA.java + test/tools/javac/annotations/typeAnnotations/failures/TypeVariableMissingTA.out - test/tools/javac/diags/examples/CantAnnotateNestedType.java + test/tools/javac/diags/examples/CantAnnotateScoping.java + test/tools/javac/diags/examples/CantAnnotateScoping1.java - test/tools/javac/diags/examples/CantAnnotateStaticClass.java ! test/tools/javac/lib/DPrinter.java ! test/tools/javac/processing/model/type/BasicAnnoTests.java Changeset: d7e155f874a7 Author: jjg Date: 2013-10-16 10:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/d7e155f874a7 8026704: Build failure with --enable-debug Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java - test/tools/javac/lambda/LocalVariableTable.java Changeset: 7f6481e5fe3a Author: emc Date: 2013-10-16 16:33 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/7f6481e5fe3a 8026286: Improper locking of annotation queues causes assertion failures. 8026063: Calls to annotate.flush() cause incorrect type annotations to be generated. Summary: Fix locking in ClassReader.java Reviewed-by: jfranck ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java + test/tools/javac/annotations/typeAnnotations/TestAnonInnerInstance1.java ! test/tools/javac/annotations/typeAnnotations/classfile/T8008762.java Changeset: a48d3b981083 Author: mnunez Date: 2013-10-17 13:27 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/a48d3b981083 8015372: Update tests for Method Parameter Reflection API to check whether a parameter is final Reviewed-by: jjg, jfranck ! test/tools/javac/MethodParameters/AnnotationTest.java + test/tools/javac/MethodParameters/AnnotationTest.out ! test/tools/javac/MethodParameters/AnonymousClass.java + test/tools/javac/MethodParameters/AnonymousClass.out ! test/tools/javac/MethodParameters/ClassFileVisitor.java ! test/tools/javac/MethodParameters/Constructors.java + test/tools/javac/MethodParameters/Constructors.out ! test/tools/javac/MethodParameters/EnumTest.java + test/tools/javac/MethodParameters/EnumTest.out ! test/tools/javac/MethodParameters/InstanceMethods.java + test/tools/javac/MethodParameters/InstanceMethods.out ! test/tools/javac/MethodParameters/LambdaTest.java + test/tools/javac/MethodParameters/LambdaTest.out ! test/tools/javac/MethodParameters/LocalClassTest.java + test/tools/javac/MethodParameters/LocalClassTest.out ! test/tools/javac/MethodParameters/MemberClassTest.java + test/tools/javac/MethodParameters/MemberClassTest.out ! test/tools/javac/MethodParameters/ReflectionVisitor.java ! test/tools/javac/MethodParameters/StaticMethods.java + test/tools/javac/MethodParameters/StaticMethods.out ! test/tools/javac/MethodParameters/Tester.java ! test/tools/javac/MethodParameters/UncommonParamNames.java + test/tools/javac/MethodParameters/UncommonParamNames.out Changeset: 4d8af6fda907 Author: mnunez Date: 2013-10-17 13:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/4d8af6fda907 8008192: Better ordering checks needed in repeatingAnnotations/combo/ReflectionTest Reviewed-by: jjg, jfranck ! test/tools/javac/annotations/repeatingAnnotations/combo/Helper.java ! test/tools/javac/annotations/repeatingAnnotations/combo/ReflectionTest.java Changeset: defadd528513 Author: mchung Date: 2013-10-17 13:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/defadd528513 8015912: jdeps support to output in dot file format 8026255: Switch jdeps to follow traditional Java option style Reviewed-by: alanb ! src/share/classes/com/sun/tools/jdeps/Analyzer.java ! src/share/classes/com/sun/tools/jdeps/Archive.java ! src/share/classes/com/sun/tools/jdeps/ClassFileReader.java ! src/share/classes/com/sun/tools/jdeps/JdepsTask.java ! src/share/classes/com/sun/tools/jdeps/PlatformClassPath.java + src/share/classes/com/sun/tools/jdeps/Profile.java - src/share/classes/com/sun/tools/jdeps/Profiles.java ! src/share/classes/com/sun/tools/jdeps/resources/jdeps.properties + test/tools/jdeps/APIDeps.java ! test/tools/jdeps/Basic.java ! test/tools/jdeps/Test.java + test/tools/jdeps/b/B.java + test/tools/jdeps/c/C.java + test/tools/jdeps/c/I.java + test/tools/jdeps/d/D.java + test/tools/jdeps/e/E.java + test/tools/jdeps/f/F.java + test/tools/jdeps/g/G.java + test/tools/jdeps/m/Bar.java + test/tools/jdeps/m/Foo.java + test/tools/jdeps/m/Gee.java Changeset: bca97b47f0a2 Author: lana Date: 2013-10-17 16:13 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/bca97b47f0a2 Merge Changeset: 127c2e74d2cf Author: tbell Date: 2013-10-22 16:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/127c2e74d2cf 8027039: [jprt] Remove 32-bit Solaris from jprt.properties files Reviewed-by: mduigou, mchung ! make/jprt.properties Changeset: 54150586ba78 Author: katleman Date: 2013-10-23 08:50 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/54150586ba78 Merge Changeset: 850d2602ae98 Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/850d2602ae98 Added tag jdk8-b113 for changeset 54150586ba78 ! .hgtags Changeset: fea486d30d41 Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/fea486d30d41 Added tag jdk8-b114 for changeset 850d2602ae98 ! .hgtags From john.coomes at oracle.com Sat Nov 2 02:48:48 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Sat, 02 Nov 2013 02:48:48 +0000 Subject: hg: hsx/hotspot-gc/nashorn: 51 new changesets Message-ID: <20131102024937.ECBA962922@hg.openjdk.java.net> Changeset: 982dd6e1bf4f Author: lana Date: 2013-09-27 18:38 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/982dd6e1bf4f Merge Changeset: 2016a6b9e1f3 Author: hannesw Date: 2013-09-27 16:59 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/2016a6b9e1f3 8025515: Performance issues with Source.getLine() Reviewed-by: sundar, lagergren ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/ir/LexicalContext.java ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/Source.java + test/script/basic/JDK-8025515.js Changeset: 1809c9e97c71 Author: hannesw Date: 2013-09-27 17:00 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/1809c9e97c71 8025520: Array.prototype.slice should only copy defined elements Reviewed-by: sundar, lagergren ! src/jdk/nashorn/internal/objects/NativeArray.java + test/script/basic/JDK-8025520.js Changeset: efc40aacaee4 Author: hannesw Date: 2013-09-30 15:54 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/efc40aacaee4 8025589: Array.prototype.shift should only copy defined elements in generic mode Reviewed-by: sundar, attila ! src/jdk/nashorn/internal/objects/NativeArray.java + test/script/basic/JDK-8025589.js Changeset: ad5f9ce2a95b Author: jlaskey Date: 2013-09-30 10:24 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/ad5f9ce2a95b Merge Changeset: 787e36fdf69a Author: jlaskey Date: 2013-09-30 12:06 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/787e36fdf69a Merge Changeset: 7272ec90f2c6 Author: sundar Date: 2013-09-30 21:33 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/7272ec90f2c6 8025629: load function should support a way to load scripts from classpath Reviewed-by: lagergren, hannesw, attila ! make/build.xml ! src/jdk/nashorn/internal/runtime/Context.java + test/script/trusted/JDK-8025629.js + test/src/jdk/nashorn/internal/runtime/resources/load_test.js Changeset: f5aefbe76cec Author: jlaskey Date: 2013-09-30 18:09 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/f5aefbe76cec 8025689: fx:base.js classes not loading Reviewed-by: sundar Contributed-by: james.laskey at oracle.com ! src/jdk/nashorn/internal/runtime/resources/fx/base.js Changeset: cd7fb58043cb Author: sundar Date: 2013-10-01 14:38 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/cd7fb58043cb 8025488: Error.captureStackTrace should not format error stack Reviewed-by: hannesw, attila ! src/jdk/nashorn/internal/objects/NativeError.java + test/script/basic/JDK-8025488.js + test/script/basic/JDK-8025488.js.EXPECTED Changeset: 3470bc26128f Author: sundar Date: 2013-10-04 16:21 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/3470bc26128f 8025771: Enhance Nashorn Contexts Reviewed-by: jlaskey, hannesw - make/java.security.override ! make/project.properties ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterFactory.java ! src/jdk/nashorn/internal/runtime/linker/NashornStaticClassLinker.java ! test/script/basic/JDK-8023026.js + test/script/sandbox/arrayclass.js + test/script/sandbox/arrayclass.js.EXPECTED Changeset: 6345d08fd5de Author: hannesw Date: 2013-10-08 11:55 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/6345d08fd5de 8025213: Assignment marks variable as defined too early Reviewed-by: jlaskey, lagergren, sundar ! src/jdk/nashorn/internal/codegen/Attr.java + test/script/basic/JDK-8025213.js + test/script/basic/JDK-8025213.js.EXPECTED Changeset: 8c326f8c6799 Author: sundar Date: 2013-10-08 13:02 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/8c326f8c6799 8026033: Switch should load expression even when there are no cases in it Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8026033.js + test/script/basic/JDK-8026033.js.EXPECTED Changeset: 025e2ff9e91b Author: hannesw Date: 2013-10-08 13:11 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/025e2ff9e91b 8025965: Specialized functions with same weight replace each other in TreeSet Reviewed-by: jlaskey, sundar ! src/jdk/nashorn/internal/runtime/CompiledFunction.java Changeset: 19dba6637f20 Author: sundar Date: 2013-10-08 14:57 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/19dba6637f20 8026039: future strict names are allowed as function name and argument name of a strict function Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/parser/AbstractParser.java ! src/jdk/nashorn/internal/parser/Parser.java + test/script/error/JDK-8026039.js + test/script/error/JDK-8026039.js.EXPECTED Changeset: c9921761903b Author: hannesw Date: 2013-10-08 15:53 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/c9921761903b 8026042: FoldConstants need to guard against ArrayLiteralNode Reviewed-by: jlaskey, sundar ! src/jdk/nashorn/internal/codegen/FoldConstants.java ! src/jdk/nashorn/internal/ir/LiteralNode.java + test/script/basic/JDK-8026042.js + test/script/basic/JDK-8026042.js.EXPECTED Changeset: 346ba5b8a488 Author: sundar Date: 2013-10-08 16:46 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/346ba5b8a488 8026048: Function constructor should convert arguments to String before performing any syntax checks Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/objects/NativeFunction.java + test/script/basic/JDK-8026048.js Changeset: 3551855c4f40 Author: lana Date: 2013-10-08 15:00 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/3551855c4f40 Merge - make/java.security.override Changeset: b48b719c5efc Author: lana Date: 2013-10-11 03:09 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b48b719c5efc Merge - make/java.security.override Changeset: 45399f3ef717 Author: ihse Date: 2013-10-10 14:58 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/45399f3ef717 8001931: The new build system whitespace cleanup Reviewed-by: tbell, simonis, erikj ! makefiles/BuildNashorn.gmk ! makefiles/Makefile Changeset: 6a4fdb3bb4e3 Author: katleman Date: 2013-10-16 12:05 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/6a4fdb3bb4e3 Merge Changeset: 103590fc1e0a Author: cl Date: 2013-10-17 09:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/103590fc1e0a Added tag jdk8-b112 for changeset 6a4fdb3bb4e3 ! .hgtags Changeset: 8d29733ad609 Author: sundar Date: 2013-10-09 10:47 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/8d29733ad609 8026112: Function("with(x ? 1e81 : (x2.constructor = 0.1)){}") throws AssertionError: double is not compatible with object Reviewed-by: lagergren, hannesw ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8026112.js Changeset: 1e03d7caa68b Author: sundar Date: 2013-10-09 13:26 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/1e03d7caa68b 8026125: Array.prototype.slice.call(Java.type("java.util.HashMap")) throws ClassCastException: jdk.internal.dynalink.beans.StaticClass cannot be cast to jdk.nashorn.internal.runtime.ScriptObject Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/objects/NativeArray.java + test/script/basic/JDK-8026125.js Changeset: ec3094d9d5d5 Author: hannesw Date: 2013-10-09 14:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/ec3094d9d5d5 8026008: Constant folding removes var statement Reviewed-by: sundar, jlaskey ! src/jdk/nashorn/internal/codegen/FoldConstants.java + test/script/basic/JDK-8026008.js + test/script/basic/JDK-8026008.js.EXPECTED Changeset: 03a68e7ca1d5 Author: lagergren Date: 2013-10-09 17:53 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/03a68e7ca1d5 8026137: Fix Issues with Binary Evaluation Order Reviewed-by: hannesw, jlaskey Contributed-by: marcus.lagergren at oracle.com, attila.szegedi at oracle.com ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/BranchOptimizer.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/CompileUnit.java ! src/jdk/nashorn/internal/codegen/Compiler.java ! src/jdk/nashorn/internal/codegen/FinalizeTypes.java ! src/jdk/nashorn/internal/codegen/MethodEmitter.java ! src/jdk/nashorn/internal/codegen/WeighNodes.java ! src/jdk/nashorn/internal/codegen/types/BooleanType.java ! src/jdk/nashorn/internal/codegen/types/ObjectType.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/ir/AccessNode.java ! src/jdk/nashorn/internal/ir/BaseNode.java ! src/jdk/nashorn/internal/ir/CallNode.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/IndexNode.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! src/jdk/nashorn/internal/ir/RuntimeNode.java - src/jdk/nashorn/internal/ir/TypeOverride.java ! src/jdk/nashorn/internal/ir/UnaryNode.java ! src/jdk/nashorn/internal/ir/visitor/NodeOperatorVisitor.java ! src/jdk/nashorn/internal/parser/TokenType.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/arrays/JavaArrayIterator.java ! src/jdk/nashorn/internal/runtime/arrays/ReverseJavaArrayIterator.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java + test/script/basic/JDK-8026137.js + test/script/basic/JDK-8026137.js.EXPECTED Changeset: 7cc5ff16380f Author: sundar Date: 2013-10-10 11:48 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/7cc5ff16380f 8026167: Class cache/reuse of 'eval' scripts results in ClassCastException in some cases. Reviewed-by: lagergren, jlaskey ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/runtime/CodeInstaller.java ! src/jdk/nashorn/internal/runtime/Context.java ! test/script/assert.js ! test/script/basic/JDK-8019508.js ! test/script/basic/JDK-8019508.js.EXPECTED ! test/script/basic/JDK-8019553.js ! test/script/basic/JDK-8019553.js.EXPECTED ! test/script/basic/JDK-8019791.js ! test/script/basic/JDK-8019791.js.EXPECTED ! test/script/basic/JDK-8019805.js ! test/script/basic/JDK-8019805.js.EXPECTED + test/script/basic/JDK-8026167.js ! test/script/basic/NASHORN-100.js ! test/script/basic/NASHORN-100.js.EXPECTED ! test/script/basic/NASHORN-293.js ! test/script/basic/NASHORN-293.js.EXPECTED ! test/script/basic/NASHORN-40.js ! test/script/basic/NASHORN-40.js.EXPECTED ! test/script/basic/NASHORN-51.js ! test/script/basic/NASHORN-51.js.EXPECTED ! test/script/basic/NASHORN-98.js ! test/script/basic/NASHORN-98.js.EXPECTED ! test/script/basic/eval.js ! test/script/basic/eval.js.EXPECTED Changeset: e60bbcf2f6b6 Author: sundar Date: 2013-10-10 13:17 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/e60bbcf2f6b6 8026248: importClass has to be a varargs function Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/runtime/resources/mozilla_compat.js + test/script/basic/JDK-8026248.js + test/script/basic/JDK-8026248.js.EXPECTED Changeset: f6263ae511c2 Author: lana Date: 2013-10-10 13:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/f6263ae511c2 Merge Changeset: 34f7a699cdef Author: sundar Date: 2013-10-10 14:43 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/34f7a699cdef 8026162: "this" in SAM adapter functions is wrong Reviewed-by: jlaskey, hannesw ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterBytecodeGenerator.java ! src/jdk/nashorn/internal/runtime/linker/JavaAdapterServices.java + test/script/basic/JDK-8026162.js Changeset: ed3da7a574a0 Author: lagergren Date: 2013-10-10 16:16 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/ed3da7a574a0 8026250: Logging nullpointer bugfix and javadoc warnings Reviewed-by: hannesw, jlaskey, sundar ! src/jdk/nashorn/api/scripting/JSObject.java ! src/jdk/nashorn/api/scripting/NashornScriptEngine.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeError.java ! src/jdk/nashorn/internal/runtime/Context.java ! src/jdk/nashorn/internal/runtime/DebugLogger.java ! src/jdk/nashorn/internal/runtime/GlobalObject.java ! src/jdk/nashorn/internal/runtime/ListAdapter.java ! src/jdk/nashorn/internal/runtime/ScriptLoader.java ! src/jdk/nashorn/internal/runtime/WithObject.java Changeset: a781ea074521 Author: sundar Date: 2013-10-10 21:43 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/a781ea074521 8026264: Getter, setter function name mangling issues Reviewed-by: lagergren, jlaskey ! src/jdk/nashorn/internal/parser/Parser.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java + test/script/basic/JDK-8026264.js Changeset: 375c2f2d41c8 Author: sundar Date: 2013-10-11 06:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/375c2f2d41c8 8026263: [NASHORN] Test test/script/basic/JDK-8025488.js fails in nightly builds Reviewed-by: jlaskey ! test/script/basic/JDK-8025488.js Changeset: 56be5161f0d2 Author: sundar Date: 2013-10-11 09:09 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/56be5161f0d2 Merge Changeset: 1c154cee43d9 Author: hannesw Date: 2013-10-11 10:56 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/1c154cee43d9 8026292: Megamorphic setter fails with boolean value Reviewed-by: jlaskey, sundar ! src/jdk/nashorn/internal/codegen/MethodEmitter.java + test/script/basic/JDK-8026292.js Changeset: fb091f9052a6 Author: sundar Date: 2013-10-11 11:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/fb091f9052a6 8026302: source representation of getter and setter methods is wrong Reviewed-by: lagergren, hannesw, jlaskey ! src/jdk/nashorn/internal/parser/Parser.java + test/script/basic/JDK-8026302.js + test/script/basic/JDK-8026302.js.EXPECTED ! test/script/basic/objects.js.EXPECTED Changeset: 062579f50371 Author: sundar Date: 2013-10-11 14:11 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/062579f50371 8026317: $ in the function name results in wrong function being invoked Reviewed-by: lagergren, jlaskey ! src/jdk/nashorn/internal/codegen/Namespace.java + test/script/basic/JDK-8026317.js + test/script/basic/JDK-8026317.js.EXPECTED Changeset: b35d175207f6 Author: sundar Date: 2013-10-11 14:13 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b35d175207f6 Merge Changeset: 1b0a71a9920a Author: lana Date: 2013-10-11 23:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/1b0a71a9920a Merge Changeset: 6cb4f20d971f Author: jlaskey Date: 2013-10-11 14:54 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/6cb4f20d971f 8026309: latest runsunspider.js tests contains several bugs Reviewed-by: sundar, lagergren Contributed-by: james.laskey at oracle.com ! test/script/basic/runsunspider.js Changeset: 8c617a092d68 Author: hannesw Date: 2013-10-14 11:45 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/8c617a092d68 8026016: too many relinks dominate avatar.js http benchmark Reviewed-by: sundar, jlaskey, attila ! src/jdk/nashorn/internal/runtime/ScriptObject.java + test/script/basic/JDK-8026016.js + test/script/basic/JDK-8026016.js.EXPECTED Changeset: d155c4a7703c Author: attila Date: 2013-10-14 12:41 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/d155c4a7703c 8026113: Nashorn arrays should automatically convert to Java arrays Reviewed-by: jlaskey, sundar ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/linker/JavaArgumentConverters.java + test/src/jdk/nashorn/api/javaaccess/ArrayConversionTest.java Changeset: 64e841576c68 Author: attila Date: 2013-10-15 15:57 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/64e841576c68 8026397: Fix ambiguity with array conversion, including passing JS NativeArrays in Java variable arity methods' vararg array position Reviewed-by: jlaskey, sundar ! src/jdk/internal/dynalink/beans/SingleDynamicMethod.java ! src/jdk/internal/dynalink/support/Guards.java ! src/jdk/internal/dynalink/support/messages.properties ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/runtime/linker/JavaArgumentConverters.java ! src/jdk/nashorn/internal/runtime/linker/NashornLinker.java ! test/src/jdk/nashorn/api/javaaccess/ArrayConversionTest.java Changeset: aa452eb4a5d0 Author: hannesw Date: 2013-10-15 17:37 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/aa452eb4a5d0 8026367: Add a sync keyword to mozilla_compat Reviewed-by: sundar, attila, lagergren ! src/jdk/nashorn/api/scripting/ScriptUtils.java ! src/jdk/nashorn/internal/objects/ScriptFunctionImpl.java ! src/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunction.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/resources/mozilla_compat.js + test/script/basic/JDK-8026367.js ! test/script/sandbox/loadcompat.js Changeset: b3ee112a328e Author: jlaskey Date: 2013-10-15 13:14 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b3ee112a328e 8026498: Revert: latest runsunspider.js tests contains several bugs Reviewed-by: sundar, hannesw Contributed-by: james.laskey at oracle.com ! test/script/basic/runsunspider.js Changeset: 9a13e95cc40f Author: sundar Date: 2013-10-15 22:13 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/9a13e95cc40f Merge Changeset: 1899da5c71d3 Author: hannesw Date: 2013-10-16 10:12 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/1899da5c71d3 8026692: eval() throws NullPointerException with --compile-only Reviewed-by: sundar, lagergren ! src/jdk/nashorn/internal/codegen/CompilationPhase.java ! src/jdk/nashorn/internal/codegen/Lower.java + test/script/basic/JDK-8026692.js Changeset: 2d5f9f77c199 Author: hannesw Date: 2013-10-16 10:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/2d5f9f77c199 8026693: getType() called on DISCARD node Reviewed-by: sundar, lagergren ! src/jdk/nashorn/internal/codegen/BranchOptimizer.java + test/script/basic/JDK-8026693.js Changeset: adc5639fc4b9 Author: sundar Date: 2013-10-17 13:02 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/adc5639fc4b9 Merge Changeset: 676cd7bf5e09 Author: lana Date: 2013-10-17 16:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/676cd7bf5e09 Merge Changeset: 79f7b79bf97b Author: cl Date: 2013-10-24 09:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/79f7b79bf97b Added tag jdk8-b113 for changeset 676cd7bf5e09 ! .hgtags Changeset: f109bb255b80 Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/f109bb255b80 Added tag jdk8-b114 for changeset 79f7b79bf97b ! .hgtags From jesper.wilhelmsson at oracle.com Sat Nov 2 13:05:44 2013 From: jesper.wilhelmsson at oracle.com (jesper.wilhelmsson at oracle.com) Date: Sat, 02 Nov 2013 13:05:44 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8026853: Prepare GC code for collector policy regression fix Message-ID: <20131102130548.C8EC062930@hg.openjdk.java.net> Changeset: 46d7652b223c Author: jwilhelm Date: 2013-10-21 18:56 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/46d7652b223c 8026853: Prepare GC code for collector policy regression fix Summary: Cleanup related to the NewSize and MaxNewSize bugs Reviewed-by: tschatzl, jcoomes, ehelin ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.cpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genCollectedHeap.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/runtime/arguments.cpp From jesper.wilhelmsson at oracle.com Sat Nov 2 15:16:13 2013 From: jesper.wilhelmsson at oracle.com (jesper.wilhelmsson at oracle.com) Date: Sat, 02 Nov 2013 15:16:13 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8016309: assert(eden_size > 0 && survivor_size > 0) failed: just checking; ... Message-ID: <20131102151618.06BDB62932@hg.openjdk.java.net> Changeset: 8f07aa079343 Author: jwilhelm Date: 2013-11-01 17:09 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/8f07aa079343 8016309: assert(eden_size > 0 && survivor_size > 0) failed: just checking 7057939: jmap shows MaxNewSize=4GB when Java is using parallel collector Summary: Major cleanup of the collectorpolicy classes Reviewed-by: tschatzl, jcoomes ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsCollectorPolicy.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/cmsCollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.cpp ! src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.hpp ! src/share/vm/gc_implementation/parallelScavenge/asPSOldGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp + src/share/vm/gc_implementation/parallelScavenge/generationSizer.cpp ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.cpp ! src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.hpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp ! src/share/vm/gc_interface/collectedHeap.cpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/memory/defNewGeneration.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! test/gc/arguments/TestMaxHeapSizeTools.java + test/gc/arguments/TestMaxNewSize.java From alejandro.murillo at oracle.com Sat Nov 2 22:20:01 2013 From: alejandro.murillo at oracle.com (alejandro.murillo at oracle.com) Date: Sat, 02 Nov 2013 22:20:01 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 37 new changesets Message-ID: <20131102222126.D378B6293A@hg.openjdk.java.net> Changeset: e64f1fe9756b Author: farvidsson Date: 2013-10-24 10:02 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e64f1fe9756b 8024423: JVMTI: GetLoadedClasses doesn't enumerate anonymous classes Summary: Rewrite of the getLoadedClasses() method implementation to include anonymous classes. Reviewed-by: coleenp, sspitsyn ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/classLoaderData.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/prims/jvmtiGetLoadedClasses.cpp Changeset: d70a665e25d7 Author: iklam Date: 2013-10-24 22:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/d70a665e25d7 8020753: JNI_CreateJavaVM on Mac OSX 10.9 Mavericks corrupts the callers stack size Summary: Use hard-coded DEFAULT_MAIN_THREAD_STACK_PAGES = 2048 for 10.9 Reviewed-by: dcubed, iveresov Contributed-by: gerard.ziemski at oracle.com ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp Changeset: e4f478e7781b Author: jbachorik Date: 2013-10-25 09:07 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e4f478e7781b 8027294: Prepare hotspot for non TOD based uptime counter Summary: Use HR timer when available for os::elapsed_counter() on linux/bsd. Add a new counter for the JVM uptime. Reviewed-by: dholmes, sla ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/share/vm/services/jmm.h ! src/share/vm/services/management.cpp Changeset: a6177f601c64 Author: hseigel Date: 2013-10-25 11:05 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/a6177f601c64 8026822: metaspace/flags/maxMetaspaceSize throws OOM of unexpected type.java.lang.OutOfMemoryError: Compressed class space Summary: Incorporate chunk size when seeing if OutOfMemoryError was caused by Metaspace or Compressed class space. Reviewed-by: stefank, coleenp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspace.hpp ! src/share/vm/memory/universe.cpp Changeset: 634715d59d9e Author: hseigel Date: 2013-10-25 11:13 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/634715d59d9e Merge Changeset: 209aa13ab8c0 Author: coleenp Date: 2013-10-25 15:19 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/209aa13ab8c0 8024927: Nashorn performance regression with CompressedOops Summary: Allocate compressed class space at end of Java heap. For small heap sizes, without CDS, save some space so compressed classes can have the same favorable compression as oops Reviewed-by: stefank, hseigel, goetz ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/sparc.ad ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/metaspace.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/utilities/globalDefinitions.hpp + test/runtime/CompressedOops/CompressedClassPointers.java Changeset: b4aa8fc5d0d5 Author: ccheung Date: 2013-10-25 22:06 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/b4aa8fc5d0d5 Merge ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/sparc.ad ! src/share/vm/memory/metaspace.cpp - test/compiler/intrinsics/mathexact/CondTest.java - test/compiler/intrinsics/mathexact/ConstantTest.java - test/compiler/intrinsics/mathexact/LoadTest.java - test/compiler/intrinsics/mathexact/LoopDependentTest.java - test/compiler/intrinsics/mathexact/NonConstantTest.java - test/compiler/intrinsics/mathexact/RepeatTest.java Changeset: 1a04de1aaedb Author: dsamersoff Date: 2013-10-28 21:41 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/1a04de1aaedb 8026950: Nits in agent ps_proc.c file breaks compilation of open hotspot Summary: Fixed two compilation-breaking nits Reviewed-by: sla, dholmes ! agent/src/os/bsd/ps_proc.c Changeset: 85730a185147 Author: ccheung Date: 2013-10-30 14:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/85730a185147 Merge Changeset: 292050e5d5ea Author: dholmes Date: 2013-10-24 00:33 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/292050e5d5ea 8026877: Error in opening JAR file when invalid jar specified with -Xbootclasspath/a on OpenJDK build Reviewed-by: coleenp, twisti ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/runtime/thread.cpp Changeset: 066778844ed9 Author: jprovino Date: 2013-10-27 14:11 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/066778844ed9 Merge Changeset: f2f9139ccde9 Author: jprovino Date: 2013-10-30 16:06 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/f2f9139ccde9 Merge Changeset: a007575ea726 Author: vladidan Date: 2013-10-30 16:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/a007575ea726 Merge Changeset: 6d965678f21e Author: ehelin Date: 2013-10-31 21:20 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/6d965678f21e Merge Changeset: bd3237e0e18d Author: twisti Date: 2013-10-24 16:23 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/bd3237e0e18d 8026328: Setting a breakpoint on invokedynamic crashes the JVM Reviewed-by: jrose, roland ! src/cpu/sparc/vm/cppInterpreter_sparc.cpp ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/cpu/x86/vm/cppInterpreter_x86.cpp ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/cpu/zero/vm/globals_zero.hpp ! src/share/vm/interpreter/abstractInterpreter.hpp ! src/share/vm/interpreter/cppInterpreter.hpp ! src/share/vm/interpreter/interpreter.cpp ! src/share/vm/interpreter/templateInterpreter.cpp ! src/share/vm/interpreter/templateInterpreter.hpp ! src/share/vm/interpreter/templateInterpreterGenerator.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/runtime/handles.cpp Changeset: cbe8ba0fb8fc Author: twisti Date: 2013-10-24 16:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/cbe8ba0fb8fc Merge - test/compiler/intrinsics/mathexact/CondTest.java - test/compiler/intrinsics/mathexact/ConstantTest.java - test/compiler/intrinsics/mathexact/LoadTest.java - test/compiler/intrinsics/mathexact/LoopDependentTest.java - test/compiler/intrinsics/mathexact/NonConstantTest.java - test/compiler/intrinsics/mathexact/RepeatTest.java Changeset: f01788f13696 Author: adlertz Date: 2013-10-25 10:13 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/f01788f13696 8026940: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc Summary: Remove input to junk phi if they also become dead during post_allocate_copy_removal Reviewed-by: roland ! src/share/vm/opto/postaloc.cpp Changeset: 7ae254fd0b3c Author: adlertz Date: 2013-10-25 12:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/7ae254fd0b3c Merge Changeset: 6c2f07d1495f Author: roland Date: 2013-10-28 09:58 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/6c2f07d1495f 8027140: Assertion in compiler when running bigapps/Kitchensink/stability Summary: filter() code for TypeKlassPtr not moved when permgen removal was introduced Reviewed-by: twisti, iveresov ! src/share/vm/opto/type.cpp ! src/share/vm/opto/type.hpp Changeset: bfdb530cdffa Author: roland Date: 2013-10-28 12:21 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/bfdb530cdffa Merge Changeset: a196f1aaec86 Author: anoll Date: 2013-10-25 22:57 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/a196f1aaec86 8026949: -Xint flag prints wrong warning: Initialization of C1 thread failed (no space to run compilers) Summary: Exit compiler threads early during startup so that wrong error message is not printed Reviewed-by: iveresov, twisti ! src/share/vm/compiler/compileBroker.cpp + test/compiler/startup/StartupOutput.java Changeset: 8c16f426dbb2 Author: iveresov Date: 2013-10-28 15:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/8c16f426dbb2 Merge Changeset: fc1632f5021a Author: iveresov Date: 2013-10-28 17:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/fc1632f5021a Merge Changeset: a57a165b8296 Author: rbackman Date: 2013-10-28 08:34 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/a57a165b8296 8027353: Exact intrinsics: assert(n != NULL) failed: must not be null Reviewed-by: kvn, roland ! src/share/vm/opto/library_call.cpp ! test/compiler/intrinsics/mathexact/SubExactLConstantTest.java ! test/compiler/intrinsics/mathexact/SubExactLNonConstantTest.java Changeset: 60a32bb8ff99 Author: rbackman Date: 2013-10-30 13:14 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/60a32bb8ff99 8027444: mathExact: assert(i < _max) failed: oob: i=1, _max=1 Reviewed-by: duke ! src/share/vm/opto/loopTransform.cpp + test/compiler/intrinsics/mathexact/NestedMathExactTest.java Changeset: 4d3575d37a07 Author: iveresov Date: 2013-10-30 22:55 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/4d3575d37a07 8026735: Stream tests throw java.lang.IncompatibleClassChangeError Summary: Put a band-aid to disable CHA-based inlining for interfaces with default methods in C1 Reviewed-by: kvn, twisti ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciInstanceKlass.hpp + test/compiler/inlining/InlineDefaultMethod.java Changeset: 946a8294ab15 Author: iveresov Date: 2013-10-31 04:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/946a8294ab15 8024919: G1: SPECjbb2013 crashes due to a broken object reference Summary: Pass correct new value to post_barrer() in Unsafe.getAndSetObject() C1 intrinsic Reviewed-by: kvn, roland ! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp Changeset: 2dcd0bd2920d Author: iveresov Date: 2013-10-31 14:54 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/2dcd0bd2920d Merge Changeset: 0836a3c28c6a Author: iveresov Date: 2013-10-31 15:04 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/0836a3c28c6a Merge Changeset: e006d2e25bc7 Author: dholmes Date: 2013-10-24 20:47 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e006d2e25bc7 8025673: [macosx] Disable X11 AWT toolkit Summary: Disable but not completely remove the XAWT and headless toolkits on Mac OS X Reviewed-by: dholmes Contributed-by: david.dehaven at oracle.com ! src/os/bsd/vm/os_bsd.cpp Changeset: 913a35723a0a Author: katleman Date: 2013-10-28 16:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/913a35723a0a Merge Changeset: 7fd913010dbb Author: katleman Date: 2013-10-29 14:56 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/7fd913010dbb Merge Changeset: ddc3758f68db Author: cl Date: 2013-10-31 12:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/ddc3758f68db Added tag jdk8-b114 for changeset 7fd913010dbb ! .hgtags Changeset: 3b32d287da89 Author: amurillo Date: 2013-11-01 08:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/3b32d287da89 Merge ! src/os/bsd/vm/os_bsd.cpp Changeset: afd012c940e4 Author: amurillo Date: 2013-11-01 08:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/afd012c940e4 Added tag hs25-b57 for changeset 3b32d287da89 ! .hgtags Changeset: 5b84039ca739 Author: amurillo Date: 2013-11-01 08:35 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/5b84039ca739 8027580: new hotspot build - hs25-b58 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 610be0309a79 Author: amurillo Date: 2013-11-02 13:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/610be0309a79 Merge ! src/share/vm/memory/metaspace.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/utilities/globalDefinitions.hpp From david.holmes at oracle.com Mon Nov 4 01:33:40 2013 From: david.holmes at oracle.com (David Holmes) Date: Mon, 04 Nov 2013 11:33:40 +1000 Subject: Preventing Class Definitions from Compacting At GC Cycle In-Reply-To: References: Message-ID: <5276F974.5070103@oracle.com> Adding hotspot-gc and (hopefully) bcc'ing the discuss list. David On 3/11/2013 5:18 AM, serkan ?zal wrote: > Hi all, > I am not sure that target of mail is this group or not but I don't know better one for asking :) > I am currently working on an OffHeap solution and I have a problem with "Compact" phase of GC.As I see at "Compact" phase, location of classes these not loaded by bootloader may be changed. However, location of classes these loaded by bootloader (classloaders are null) are not changed.Changing memory location of class definition fails my OffHeap solution. > Compacting can be disabled by VM arguments but I don't want to use these arguments. Because disabling compaction for all objects causes increasing of fragmentation. In addition, I tried class pinning with JNI by "NewGlobalRef" method but it doesn't prevent compacting. As I understood, it only hides object from garbage collected. > In brief, is there any way to prevent compacting of any specific class defition (or object) at GC cycle?Is there any bit, offset or field (such as mark_oop) in object header to prevent compacting of fully from GC for any specific object or class? > Thanks in advance. > -- > Serkan ?ZAL > > From jiangshanlin at gmail.com Mon Nov 4 01:40:34 2013 From: jiangshanlin at gmail.com (=?GB2312?B?varJxsHW?=) Date: Mon, 4 Nov 2013 09:40:34 +0800 Subject: Preventing Class Definitions from Compacting At GC Cycle In-Reply-To: <5276F974.5070103@oracle.com> References: <5276F974.5070103@oracle.com> Message-ID: Hi all, I'm sorry if this email bothers you. Just one question, is there any way to determine precisely the regression test scope for java development and testing? Many thanks! 2013/11/4 David Holmes > Adding hotspot-gc and (hopefully) bcc'ing the discuss list. > > David > > On 3/11/2013 5:18 AM, serkan ?zal wrote: > >> Hi all, >> I am not sure that target of mail is this group or not but I don't know >> better one for asking :) >> I am currently working on an OffHeap solution and I have a problem with >> "Compact" phase of GC.As I see at "Compact" phase, location of classes >> these not loaded by bootloader may be changed. However, location of classes >> these loaded by bootloader (classloaders are null) are not changed.Changing >> memory location of class definition fails my OffHeap solution. >> Compacting can be disabled by VM arguments but I don't want to use these >> arguments. Because disabling compaction for all objects causes increasing >> of fragmentation. In addition, I tried class pinning with JNI by >> "NewGlobalRef" method but it doesn't prevent compacting. As I understood, >> it only hides object from garbage collected. >> In brief, is there any way to prevent compacting of any specific class >> defition (or object) at GC cycle?Is there any bit, offset or field (such as >> mark_oop) in object header to prevent compacting of fully from GC for any >> specific object or class? >> Thanks in advance. >> -- >> Serkan ?ZAL >> >> >> -- ??? -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.holmes at oracle.com Mon Nov 4 01:52:02 2013 From: david.holmes at oracle.com (David Holmes) Date: Mon, 04 Nov 2013 11:52:02 +1000 Subject: Preventing Class Definitions from Compacting At GC Cycle In-Reply-To: References: <5276F974.5070103@oracle.com> Message-ID: <5276FDC2.2020901@oracle.com> On 4/11/2013 11:40 AM, ??? wrote: > Hi all, > > I'm sorry if this email bothers you. Just one question, is there any way > to determine precisely the regression test scope for java development > and testing? I have no idea what you mean by that but it doesn't sound related to Serkan's query so please start your own email thread - perhaps on hotspot-dev if it is a general hotspot question. David > Many thanks! > > > 2013/11/4 David Holmes > > > Adding hotspot-gc and (hopefully) bcc'ing the discuss list. > > David > > On 3/11/2013 5:18 AM, serkan ?zal wrote: > > Hi all, > I am not sure that target of mail is this group or not but I > don't know better one for asking :) > I am currently working on an OffHeap solution and I have a > problem with "Compact" phase of GC.As I see at "Compact" phase, > location of classes these not loaded by bootloader may be > changed. However, location of classes these loaded by bootloader > (classloaders are null) are not changed.Changing memory location > of class definition fails my OffHeap solution. > Compacting can be disabled by VM arguments but I don't want to > use these arguments. Because disabling compaction for all > objects causes increasing of fragmentation. In addition, I tried > class pinning with JNI by "NewGlobalRef" method but it doesn't > prevent compacting. As I understood, it only hides object from > garbage collected. > In brief, is there any way to prevent compacting of any specific > class defition (or object) at GC cycle?Is there any bit, offset > or field (such as mark_oop) in object header to prevent > compacting of fully from GC for any specific object or class? > Thanks in advance. > -- > Serkan ?ZAL > > > > > > -- > ??? From mikael.gerdin at oracle.com Mon Nov 4 08:38:13 2013 From: mikael.gerdin at oracle.com (Mikael Gerdin) Date: Mon, 04 Nov 2013 09:38:13 +0100 Subject: Preventing Class Definitions from Compacting At GC Cycle In-Reply-To: <5276F974.5070103@oracle.com> References: <5276F974.5070103@oracle.com> Message-ID: <13840277.lkyHCgtSzQ@mgerdin03> On Monday 04 November 2013 11.33.40 David Holmes wrote: > Adding hotspot-gc and (hopefully) bcc'ing the discuss list. > > David > > On 3/11/2013 5:18 AM, serkan ?zal wrote: > > Hi all, > > I am not sure that target of mail is this group or not but I don't know > > better one for asking :) I am currently working on an OffHeap solution > > and I have a problem with "Compact" phase of GC.As I see at "Compact" > > phase, location of classes these not loaded by bootloader may be changed. > > However, location of classes these loaded by bootloader (classloaders are > > null) are not changed.Changing memory location of class definition fails > > my OffHeap solution. Compacting can be disabled by VM arguments but I > > don't want to use these arguments. Because disabling compaction for all > > objects causes increasing of fragmentation. In addition, I tried class > > pinning with JNI by "NewGlobalRef" method but it doesn't prevent > > compacting. As I understood, it only hides object from garbage collected. > > In brief, is there any way to prevent compacting of any specific class > > defition (or object) at GC cycle?Is there any bit, offset or field (such > > as mark_oop) in object header to prevent compacting of fully from GC for > > any specific object or class? Thanks in advance. There is no way to prevent the objects from moving. You need to either: * keep JNI Handles (jobject) to the objects instead of the "oop" object pointers. * add hooks to the garbage collectors through a "oops_do"-style callback interface. Look at other implementors of oops_do to see how to do it. Also, your observation about classes loaded in by the null classloader not moving is not technically correct. They can move as well, but since a lot of them are loaded early they may not need to move. All of this has changed as of JDK 8, when we removed the perm gen and the whole concept of moving classes. /Mikael > > -- > > Serkan ?ZAL From bengt.rutisson at oracle.com Mon Nov 4 09:02:47 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Mon, 04 Nov 2013 10:02:47 +0100 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly In-Reply-To: <52744109.5030302@oracle.com> References: <52744109.5030302@oracle.com> Message-ID: <527762B7.4060605@oracle.com> Hi Jon, On 2013-11-02 01:02, Jon Masamitsu wrote: > 8024483 - assertion failure: (!mirror_alive || loader_alive) failed > > The default value of _should_unload_classes in CMSCollector is false. > The default value of CMSClassUnloadingEnabled is true (changed in jdk8) > and is used to set the root scanning options. This inconsistency leads to > dead class loaders without unloading classes. > > The fix for 8024954 fixes (or works around) this inconsistency by > resetting > the root scanning options based on _should_unload_classes. > > Additionally there is a missing call to update_should_unload_classes() in > the CMS foreground collector. Adding the call allows the test for > CMSClassUnloadingEnabled to pass but may not be a complete fix. > > http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ Looks good. > > > 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly > > For 8024954 the classes used as roots was being set at initialization > based on > the value of CMSClassUnloadingEnabled. For a value of > CMSClassUnloadingMaxInterval > greater than 1, the roots need to be set dynamically > (done in CMSCollector::setup_cms_unloading_and_verification_state with > this fix). > > http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ Looks good. One minor question. In CMSCollector::CMSCollector() you left this line: 792 add_root_scanning_option(SharedHeap::SO_SystemClasses); But in CMSCollector::setup_cms_unloading_and_verification_state() we now always set up the state correctly to be either SO_AllClasses or SO_SystemClasses. So, do we need that initilization in CMSCollector::CMSCollector()? Thanks, Bengt -------------- next part -------------- An HTML attachment was scrubbed... URL: From tao.mao at oracle.com Mon Nov 4 23:50:35 2013 From: tao.mao at oracle.com (Tao Mao) Date: Mon, 04 Nov 2013 15:50:35 -0800 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs In-Reply-To: <52741711.9010601@oracle.com> References: <5273CDB4.5060504@oracle.com> <5273EA8A.8040105@oracle.com> <52741711.9010601@oracle.com> Message-ID: <527832CB.4090700@oracle.com> looks good in general. Could you make the regex pattern check more verbose? say, - Matcher stdoutMatcher = Pattern.compile("\\[GC .Allocation Failure.*K->.*K., .* secs\\]", Pattern.MULTILINE).matcher(stdout); + Matcher stdoutMatcher = Pattern.compile("\\[GC .Allocation Failure.*K->.*K\\(.*K\\), .* secs\\]", Pattern.MULTILINE).matcher(stdout); On 11/1/13 2:03 PM, Bengt Rutisson wrote: > > Hi Tao, > > On 11/1/13 6:53 PM, Tao Mao wrote: >> Hi Bengt, >> >> Thank you for looking at this. >> >> Can you explain why, in this particular case, the used heap size got >> larger after GC? > > It is because of the way the used value is calculated. The used value > for the DefNew generation is implemented as: > > size_t DefNewGeneration::used() const { > return eden()->used() > + from()->used(); // to() is only used during scavenge > } > > Where, for both eden and from, used() is implemented as: > > size_t used() const { return byte_size(bottom(), top()); > > Since we got a promotion failure the top value is not reset. There are > still objects in the eden and from spaces. This means that the used > value after the GC is whatever we managed to promote plus the full > young gen (except the to space). This is more than the used before the > GC, since that was just what was already in the old gen plus the full > young gen. > > This is the same behavior as with the other collectors. > > Thanks, > Bengt > >> >> Thanks. >> Tao >> >> On 11/1/13 8:50 AM, Bengt Rutisson wrote: >>> >>> Hi all, >>> >>> Can I have a couple of reviews for this small change? >>> >>> http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ >>> >>> https://bugs.openjdk.java.net/browse/JDK-8027440 >>> >>> DefNew was not printing the heap change information when a promotion >>> failure occured. Before this change the logging for a DefNew >>> collection that got promotion failure looked like this: >>> >>> [GC (Allocation Failure) , 0.0543440 secs] >>> >>> After my change it looks like: >>> >>> [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] >>> >>> Thanks, >>> Bengt > From jon.masamitsu at oracle.com Tue Nov 5 00:15:42 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 04 Nov 2013 16:15:42 -0800 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs In-Reply-To: <5273CDB4.5060504@oracle.com> References: <5273CDB4.5060504@oracle.com> Message-ID: <527838AE.1070409@oracle.com> Change looks good. Jon On 11/1/2013 8:50 AM, Bengt Rutisson wrote: > > Hi all, > > Can I have a couple of reviews for this small change? > > http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ > > https://bugs.openjdk.java.net/browse/JDK-8027440 > > DefNew was not printing the heap change information when a promotion > failure occured. Before this change the logging for a DefNew > collection that got promotion failure looked like this: > > [GC (Allocation Failure) , 0.0543440 secs] > > After my change it looks like: > > [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] > > Thanks, > Bengt From jon.masamitsu at oracle.com Tue Nov 5 00:33:55 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 04 Nov 2013 16:33:55 -0800 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly In-Reply-To: <527762B7.4060605@oracle.com> References: <52744109.5030302@oracle.com> <527762B7.4060605@oracle.com> Message-ID: <52783CF3.6040006@oracle.com> On 11/4/2013 1:02 AM, Bengt Rutisson wrote: > > Hi Jon, > > On 2013-11-02 01:02, Jon Masamitsu wrote: >> 8024483 - assertion failure: (!mirror_alive || loader_alive) failed >> >> The default value of _should_unload_classes in CMSCollector is false. >> The default value of CMSClassUnloadingEnabled is true (changed in jdk8) >> and is used to set the root scanning options. This inconsistency >> leads to >> dead class loaders without unloading classes. >> >> The fix for 8024954 fixes (or works around) this inconsistency by >> resetting >> the root scanning options based on _should_unload_classes. >> >> Additionally there is a missing call to update_should_unload_classes() in >> the CMS foreground collector. Adding the call allows the test for >> CMSClassUnloadingEnabled to pass but may not be a complete fix. >> >> http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ > > Looks good. > >> >> >> 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly >> >> For 8024954 the classes used as roots was being set at initialization >> based on >> the value of CMSClassUnloadingEnabled. For a value of >> CMSClassUnloadingMaxInterval >> greater than 1, the roots need to be set dynamically >> (done in CMSCollector::setup_cms_unloading_and_verification_state >> with this fix). >> >> http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ > > > Looks good. One minor question. In CMSCollector::CMSCollector() you > left this line: > > 792 add_root_scanning_option(SharedHeap::SO_SystemClasses); > > But in CMSCollector::setup_cms_unloading_and_verification_state() we > now always set up the state correctly to be either SO_AllClasses or > SO_SystemClasses. So, do we need that initilization in > CMSCollector::CMSCollector()? I tested both with and without it and it is not needed as far as I can tell. I left it in because I know that SO_None is always wrong (as set by the constructor). I didn't want to try and figure out what the best default was based on the other flags because that was the source of this bug. If you think leaving it initialized to SO_None makes the code more readable, I can remove it. Jon > > Thanks, > Bengt -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikael.gerdin at oracle.com Tue Nov 5 08:33:40 2013 From: mikael.gerdin at oracle.com (Mikael Gerdin) Date: Tue, 05 Nov 2013 09:33:40 +0100 Subject: Preventing Class Definitions from Compacting At GC Cycle In-Reply-To: References: <5276F974.5070103@oracle.com>, <13840277.lkyHCgtSzQ@mgerdin03> Message-ID: <5278AD64.1070700@oracle.com> On 11/04/2013 08:13 PM, serkan ?zal wrote: > Hi Mikael, > > Thanks for your answer. > > Can you explain these a little bit more? > > * keep JNI Handles (jobject) to the objects instead of the "oop" object > pointers. Say that you have some sort of datastructure which keeps pointers into the java heap. class MyClass { oop _java_object; int _some_value; }; Instead of keeping the _java_object as an "oop" you could use the type jobject, which is a handle to an oop. As long as you use the jobject you should be able to handle garbage collection > * add hooks to the garbage collectors through a "oops_do"-style callback > interface. Look at other implementors of oops_do to see how to do it. With this approach you would need to add a method to your class: void MyClass::oops_do(OopClosure* cl) { cl->do_oop(&_java_object); } and add code which calls oops_do on _all_ instances of MyClass to the garbage collection code (several places). /Mikael > > -- > > Serkan OZAL > > > From: mikael.gerdin at oracle.com > > To: hotspot-gc-dev at openjdk.java.net > > CC: david.holmes at oracle.com; serkanozal86 at hotmail.com > > Subject: Re: Preventing Class Definitions from Compacting At GC Cycle > > Date: Mon, 4 Nov 2013 09:38:13 +0100 > > > > On Monday 04 November 2013 11.33.40 David Holmes wrote: > > > Adding hotspot-gc and (hopefully) bcc'ing the discuss list. > > > > > > David > > > > > > On 3/11/2013 5:18 AM, serkan ?zal wrote: > > > > Hi all, > > > > I am not sure that target of mail is this group or not but I > don't know > > > > better one for asking :) I am currently working on an OffHeap > solution > > > > and I have a problem with "Compact" phase of GC.As I see at "Compact" > > > > phase, location of classes these not loaded by bootloader may be > changed. > > > > However, location of classes these loaded by bootloader > (classloaders are > > > > null) are not changed.Changing memory location of class > definition fails > > > > my OffHeap solution. Compacting can be disabled by VM arguments but I > > > > don't want to use these arguments. Because disabling compaction > for all > > > > objects causes increasing of fragmentation. In addition, I tried > class > > > > pinning with JNI by "NewGlobalRef" method but it doesn't prevent > > > > compacting. As I understood, it only hides object from garbage > collected. > > > > In brief, is there any way to prevent compacting of any specific > class > > > > defition (or object) at GC cycle?Is there any bit, offset or > field (such > > > > as mark_oop) in object header to prevent compacting of fully from > GC for > > > > any specific object or class? Thanks in advance. > > > > There is no way to prevent the objects from moving. > > > > You need to either: > > * keep JNI Handles (jobject) to the objects instead of the "oop" object > > pointers. > > * add hooks to the garbage collectors through a "oops_do"-style callback > > interface. Look at other implementors of oops_do to see how to do it. > > > > > > Also, your observation about classes loaded in by the null > classloader not > > moving is not technically correct. They can move as well, but since a > lot of > > them are loaded early they may not need to move. > > > > All of this has changed as of JDK 8, when we removed the perm gen and > the > > whole concept of moving classes. > > > > /Mikael > > > > > > > > -- > > > > Serkan ?ZAL > > From bengt.rutisson at oracle.com Tue Nov 5 09:25:31 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Tue, 05 Nov 2013 10:25:31 +0100 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly In-Reply-To: <52783CF3.6040006@oracle.com> References: <52744109.5030302@oracle.com> <527762B7.4060605@oracle.com> <52783CF3.6040006@oracle.com> Message-ID: <5278B98B.10503@oracle.com> On 2013-11-05 01:33, Jon Masamitsu wrote: > > On 11/4/2013 1:02 AM, Bengt Rutisson wrote: >> >> Hi Jon, >> >> On 2013-11-02 01:02, Jon Masamitsu wrote: >>> 8024483 - assertion failure: (!mirror_alive || loader_alive) failed >>> >>> The default value of _should_unload_classes in CMSCollector is false. >>> The default value of CMSClassUnloadingEnabled is true (changed in jdk8) >>> and is used to set the root scanning options. This inconsistency >>> leads to >>> dead class loaders without unloading classes. >>> >>> The fix for 8024954 fixes (or works around) this inconsistency by >>> resetting >>> the root scanning options based on _should_unload_classes. >>> >>> Additionally there is a missing call to >>> update_should_unload_classes() in >>> the CMS foreground collector. Adding the call allows the test for >>> CMSClassUnloadingEnabled to pass but may not be a complete fix. >>> >>> http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ >> >> Looks good. >> >>> >>> >>> 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly >>> >>> For 8024954 the classes used as roots was being set at >>> initialization based on >>> the value of CMSClassUnloadingEnabled. For a value of >>> CMSClassUnloadingMaxInterval >>> greater than 1, the roots need to be set dynamically >>> (done in CMSCollector::setup_cms_unloading_and_verification_state >>> with this fix). >>> >>> http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ >> >> >> Looks good. One minor question. In CMSCollector::CMSCollector() you >> left this line: >> >> 792 add_root_scanning_option(SharedHeap::SO_SystemClasses); >> >> But in CMSCollector::setup_cms_unloading_and_verification_state() we >> now always set up the state correctly to be either SO_AllClasses or >> SO_SystemClasses. So, do we need that initilization in >> CMSCollector::CMSCollector()? > > I tested both with and without it and it is not needed as far as I can > tell. > I left it in because I know that SO_None is always wrong (as set by the > constructor). I didn't want to try and figure out what the best default > was based on the other flags because that was the source of this bug. > If you think leaving it initialized to SO_None makes the code more > readable, > I can remove it. I prefer to just use SO_None as default since I think that setting it to SharedHeap::SO_SystemClasses just gives the false impression that this is what we want to use. But I'm also ok with the change as it is. So, I'll leave it up to you to decide. Thanks, Bengt > > Jon > >> >> Thanks, >> Bengt > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bengt.rutisson at oracle.com Tue Nov 5 09:32:23 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Tue, 05 Nov 2013 10:32:23 +0100 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs In-Reply-To: <527832CB.4090700@oracle.com> References: <5273CDB4.5060504@oracle.com> <5273EA8A.8040105@oracle.com> <52741711.9010601@oracle.com> <527832CB.4090700@oracle.com> Message-ID: <5278BB27.3060001@oracle.com> Hi Tao, On 2013-11-05 00:50, Tao Mao wrote: > looks good in general. > > Could you make the regex pattern check more verbose? > > say, > > - Matcher stdoutMatcher = Pattern.compile("\\[GC .Allocation > Failure.*K->.*K., .* secs\\]", Pattern.MULTILINE).matcher(stdout); > + Matcher stdoutMatcher = Pattern.compile("\\[GC .Allocation > Failure.*K->.*K\\(.*K\\), .* secs\\]", > Pattern.MULTILINE).matcher(stdout); Good point. I updated the test to use your regexp pattern. Thanks for the review! Bengt > > > On 11/1/13 2:03 PM, Bengt Rutisson wrote: >> >> Hi Tao, >> >> On 11/1/13 6:53 PM, Tao Mao wrote: >>> Hi Bengt, >>> >>> Thank you for looking at this. >>> >>> Can you explain why, in this particular case, the used heap size got >>> larger after GC? >> >> It is because of the way the used value is calculated. The used value >> for the DefNew generation is implemented as: >> >> size_t DefNewGeneration::used() const { >> return eden()->used() >> + from()->used(); // to() is only used during scavenge >> } >> >> Where, for both eden and from, used() is implemented as: >> >> size_t used() const { return byte_size(bottom(), top()); >> >> Since we got a promotion failure the top value is not reset. There >> are still objects in the eden and from spaces. This means that the >> used value after the GC is whatever we managed to promote plus the >> full young gen (except the to space). This is more than the used >> before the GC, since that was just what was already in the old gen >> plus the full young gen. >> >> This is the same behavior as with the other collectors. >> >> Thanks, >> Bengt >> >>> >>> Thanks. >>> Tao >>> >>> On 11/1/13 8:50 AM, Bengt Rutisson wrote: >>>> >>>> Hi all, >>>> >>>> Can I have a couple of reviews for this small change? >>>> >>>> http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ >>>> >>>> https://bugs.openjdk.java.net/browse/JDK-8027440 >>>> >>>> DefNew was not printing the heap change information when a >>>> promotion failure occured. Before this change the logging for a >>>> DefNew collection that got promotion failure looked like this: >>>> >>>> [GC (Allocation Failure) , 0.0543440 secs] >>>> >>>> After my change it looks like: >>>> >>>> [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] >>>> >>>> Thanks, >>>> Bengt >> From bengt.rutisson at oracle.com Tue Nov 5 09:32:46 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Tue, 05 Nov 2013 10:32:46 +0100 Subject: RFR (S): JDK-8027440: DefNew does not log heap change information when a promotion failure occurs In-Reply-To: <527838AE.1070409@oracle.com> References: <5273CDB4.5060504@oracle.com> <527838AE.1070409@oracle.com> Message-ID: <5278BB3E.1000102@oracle.com> On 2013-11-05 01:15, Jon Masamitsu wrote: > Change looks good. Thanks for looking at this, Jon! Bengt > > Jon > > On 11/1/2013 8:50 AM, Bengt Rutisson wrote: >> >> Hi all, >> >> Can I have a couple of reviews for this small change? >> >> http://cr.openjdk.java.net/~brutisso/8027440/webrev.00/ >> >> https://bugs.openjdk.java.net/browse/JDK-8027440 >> >> DefNew was not printing the heap change information when a promotion >> failure occured. Before this change the logging for a DefNew >> collection that got promotion failure looked like this: >> >> [GC (Allocation Failure) , 0.0543440 secs] >> >> After my change it looks like: >> >> [GC (Allocation Failure) 81920K->120831K(120832K), 0.0620180 secs] >> >> Thanks, >> Bengt > From thomas.schatzl at oracle.com Tue Nov 5 13:46:37 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Tue, 05 Nov 2013 14:46:37 +0100 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) Message-ID: <1383659197.2830.23.camel@cirrus> Hi all, can I get quick reviews for the following small changes? The patchset fixes wrong assertions that assume that references to humongous/large objects cannot be embedded into the code stream. They can. This is not true, and in the failing (existing) test case just that happens. The fix is to just change all these wrong assertions to check whether the region we want to add the code root to is a humongous continuation: that really should not occur as they do not contain an object header. Note that there is a similar assertions with the same conditions in e.g. MigrateCodeRootsHeapRegionClosure::doHeapRegion() - however this one checks a different situation: there should be no migration of code roots because (currently) large objects can never move. The original reasons for adding this assertion, and why this assertion only triggers just now (the code has been in for a few months) are unknown. I will try to find out what change (possibly in the compiler) triggered this. The changeset also adds a new test in addition to the original one that particularly targets most reasons why the assertion failed before: - when adding a new code root to a humongous region - when removing a new code root to a humongous region - during verification (does anybody know why G1VerifyHeapRegionCodeRoots is false by default?) - strong code roots root marking (in anticipation of class unloading during concurrent marking) bugs.openjdk https://bugs.openjdk.java.net/browse/JDK-8027756 Webrev http://cr.openjdk.java.net/~tschatzl/8027756/webrev/ Testing: jprt, manual invocation of the failing test (verifying that without the change the assertion triggers, and does not with the patch), new test Thanks, Thomas From jon.masamitsu at oracle.com Tue Nov 5 18:22:33 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Tue, 05 Nov 2013 10:22:33 -0800 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly In-Reply-To: <52744109.5030302@oracle.com> References: <52744109.5030302@oracle.com> Message-ID: <52793769.3050403@oracle.com> I've updated the webrev for 8024954 for review comments (thanks, Bengt) http://cr.openjdk.java.net/~jmasa/8024954/webrev.02/ On 11/1/2013 5:02 PM, Jon Masamitsu wrote: > 8024483 - assertion failure: (!mirror_alive || loader_alive) failed > > The default value of _should_unload_classes in CMSCollector is false. > The default value of CMSClassUnloadingEnabled is true (changed in jdk8) > and is used to set the root scanning options. This inconsistency leads to > dead class loaders without unloading classes. > > The fix for 8024954 fixes (or works around) this inconsistency by > resetting > the root scanning options based on _should_unload_classes. > > Additionally there is a missing call to update_should_unload_classes() in > the CMS foreground collector. Adding the call allows the test for > CMSClassUnloadingEnabled to pass but may not be a complete fix. > > http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ > > > 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly > > For 8024954 the classes used as roots was being set at initialization > based on > the value of CMSClassUnloadingEnabled. For a value of > CMSClassUnloadingMaxInterval > greater than 1, the roots need to be set dynamically > (done in CMSCollector::setup_cms_unloading_and_verification_state with > this fix). > > http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From tao.mao at oracle.com Tue Nov 5 18:49:44 2013 From: tao.mao at oracle.com (Tao Mao) Date: Tue, 05 Nov 2013 10:49:44 -0800 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <1383659197.2830.23.camel@cirrus> References: <1383659197.2830.23.camel@cirrus> Message-ID: <52793DC8.7010305@oracle.com> Hi Thomas, Can you make the assertion message from a question to a statement? It'll help future readers understand it. say, in g1CollectedHeap.cpp - assert(!hr->continuesHumongous(), "code root in continuation of humongous region?"); + assert(!hr->continuesHumongous(), "code root should not attached to a humonguous continuation"); There may be a couple of other similar ones. Thanks. Tao On 11/5/13 5:46 AM, Thomas Schatzl wrote: > Hi all, > > can I get quick reviews for the following small changes? > > The patchset fixes wrong assertions that assume that references to > humongous/large objects cannot be embedded into the code stream. They > can. > > This is not true, and in the failing (existing) test case just that > happens. > > The fix is to just change all these wrong assertions to check whether > the region we want to add the code root to is a humongous continuation: > that really should not occur as they do not contain an object header. > > Note that there is a similar assertions with the same conditions in e.g. > MigrateCodeRootsHeapRegionClosure::doHeapRegion() - however this one > checks a different situation: there should be no migration of code roots > because (currently) large objects can never move. > > The original reasons for adding this assertion, and why this assertion > only triggers just now (the code has been in for a few months) are > unknown. I will try to find out what change (possibly in the compiler) > triggered this. > > The changeset also adds a new test in addition to the original one that > particularly targets most reasons why the assertion failed before: > - when adding a new code root to a humongous region > - when removing a new code root to a humongous region > - during verification (does anybody know why > G1VerifyHeapRegionCodeRoots is false by default?) > - strong code roots root marking (in anticipation of class unloading > during concurrent marking) > > bugs.openjdk > https://bugs.openjdk.java.net/browse/JDK-8027756 > > Webrev > http://cr.openjdk.java.net/~tschatzl/8027756/webrev/ > > Testing: > jprt, manual invocation of the failing test (verifying that without the > change the assertion triggers, and does not with the patch), new test > > Thanks, > Thomas > From jon.masamitsu at oracle.com Wed Nov 6 00:00:19 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Tue, 05 Nov 2013 16:00:19 -0800 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <1383659197.2830.23.camel@cirrus> References: <1383659197.2830.23.camel@cirrus> Message-ID: <52798693.4050308@oracle.com> Thomas, Do you think there would be value in printing out the region address in the cases where the assertion fails? Does your new test case fail with both the client and server compilesr? Jon On 11/5/2013 5:46 AM, Thomas Schatzl wrote: > Hi all, > > can I get quick reviews for the following small changes? > > The patchset fixes wrong assertions that assume that references to > humongous/large objects cannot be embedded into the code stream. They > can. > > This is not true, and in the failing (existing) test case just that > happens. > > The fix is to just change all these wrong assertions to check whether > the region we want to add the code root to is a humongous continuation: > that really should not occur as they do not contain an object header. > > Note that there is a similar assertions with the same conditions in e.g. > MigrateCodeRootsHeapRegionClosure::doHeapRegion() - however this one > checks a different situation: there should be no migration of code roots > because (currently) large objects can never move. > > The original reasons for adding this assertion, and why this assertion > only triggers just now (the code has been in for a few months) are > unknown. I will try to find out what change (possibly in the compiler) > triggered this. > > The changeset also adds a new test in addition to the original one that > particularly targets most reasons why the assertion failed before: > - when adding a new code root to a humongous region > - when removing a new code root to a humongous region > - during verification (does anybody know why > G1VerifyHeapRegionCodeRoots is false by default?) > - strong code roots root marking (in anticipation of class unloading > during concurrent marking) > > bugs.openjdk > https://bugs.openjdk.java.net/browse/JDK-8027756 > > Webrev > http://cr.openjdk.java.net/~tschatzl/8027756/webrev/ > > Testing: > jprt, manual invocation of the failing test (verifying that without the > change the assertion triggers, and does not with the patch), new test > > Thanks, > Thomas > From jon.masamitsu at oracle.com Wed Nov 6 04:11:13 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Tue, 05 Nov 2013 20:11:13 -0800 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <52798693.4050308@oracle.com> References: <1383659197.2830.23.camel@cirrus> <52798693.4050308@oracle.com> Message-ID: <5279C161.4060508@oracle.com> Thomas, I should also have said that the changes look good. On 11/5/2013 4:00 PM, Jon Masamitsu wrote: > Thomas, > > Do you think there would be value in printing out the > region address in the cases where the assertion fails? Your call as to whether it's worth printing the heap region. > > Does your new test case fail with both the client and > server compilesr? Question relates to whether you want to specify the JIT used when running the test. Jon > > Jon > > On 11/5/2013 5:46 AM, Thomas Schatzl wrote: >> Hi all, >> >> can I get quick reviews for the following small changes? >> >> The patchset fixes wrong assertions that assume that references to >> humongous/large objects cannot be embedded into the code stream. They >> can. >> >> This is not true, and in the failing (existing) test case just that >> happens. >> >> The fix is to just change all these wrong assertions to check whether >> the region we want to add the code root to is a humongous continuation: >> that really should not occur as they do not contain an object header. >> >> Note that there is a similar assertions with the same conditions in e.g. >> MigrateCodeRootsHeapRegionClosure::doHeapRegion() - however this one >> checks a different situation: there should be no migration of code roots >> because (currently) large objects can never move. >> >> The original reasons for adding this assertion, and why this assertion >> only triggers just now (the code has been in for a few months) are >> unknown. I will try to find out what change (possibly in the compiler) >> triggered this. >> >> The changeset also adds a new test in addition to the original one that >> particularly targets most reasons why the assertion failed before: >> - when adding a new code root to a humongous region >> - when removing a new code root to a humongous region >> - during verification (does anybody know why >> G1VerifyHeapRegionCodeRoots is false by default?) >> - strong code roots root marking (in anticipation of class unloading >> during concurrent marking) >> >> bugs.openjdk >> https://bugs.openjdk.java.net/browse/JDK-8027756 >> >> Webrev >> http://cr.openjdk.java.net/~tschatzl/8027756/webrev/ >> >> Testing: >> jprt, manual invocation of the failing test (verifying that without the >> change the assertion triggers, and does not with the patch), new test >> >> Thanks, >> Thomas >> > From filipp.zhinkin at oracle.com Wed Nov 6 16:13:34 2013 From: filipp.zhinkin at oracle.com (Filipp Zhinkin) Date: Wed, 06 Nov 2013 20:13:34 +0400 Subject: RFR (S): 8026047: add regression test for DisableExplicitGC flag In-Reply-To: <52663963.3020209@oracle.com> References: <52542529.2010601@oracle.com> <5257D270.9030904@oracle.com> <52663963.3020209@oracle.com> Message-ID: <527A6AAE.8040404@oracle.com> Hi, I'm still looking for reviews on this test. Thanks, Filipp. On 10/22/2013 12:37 PM, Filipp Zhinkin wrote: > Hi, > > I've also removed unnecessary @build tag. > > Updated webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.02/ > > Thanks, > Filipp. > > On 10/11/2013 02:26 PM, Filipp Zhinkin wrote: >> Hi, >> >> I've done following changes: >> - misused @bug tag removed; >> - VM options parsing refactored; >> - append -XX:+PrintGCCause option to avoid the case when options >> contain -XX:-PrintGCCause; >> - added method to ProcessTools that removes options that suppress VM >> output before creating ProcessBuilder. >> >> Updated webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.01/ >> >> Thanks, >> Filipp. >> >> On 10/08/2013 07:30 PM, Filipp Zhinkin wrote: >>> Hi, >>> >>> I would like to get couple reviews on regression test for >>> DisableExplicitGC flag. >>> >>> It verifies that System.gc() calls did not trigger garbage >>> collection if DisableExplicitGC is turned on and vice versa. >>> >>> Bug ID: https://bugs.openjdk.java.net/browse/JDK-8026047 >>> Webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.00/ >>> Testing: manual on local host, automated on various platforms. >>> >>> Thanks, >>> Filipp. >> > From thomas.schatzl at oracle.com Wed Nov 6 16:49:50 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Wed, 06 Nov 2013 17:49:50 +0100 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <52793DC8.7010305@oracle.com> References: <1383659197.2830.23.camel@cirrus> <52793DC8.7010305@oracle.com> Message-ID: <1383756590.2918.35.camel@cirrus> Hi, On Tue, 2013-11-05 at 10:49 -0800, Tao Mao wrote: > Hi Thomas, > > Can you make the assertion message from a question to a statement? It'll > help future readers understand it. > > say, in g1CollectedHeap.cpp > > - assert(!hr->continuesHumongous(), "code root in continuation of > humongous region?"); > + assert(!hr->continuesHumongous(), "code root should not attached to a > humonguous continuation"); > > There may be a couple of other similar ones. Done for all related assertions. There are more, but I did not think changing them fit into this changeset. See new webrev at http://cr.openjdk.java.net/~tschatzl/8027756/webrev.1/ Also changed the test to try both server and client compilers (e.g. -client and -server). Thanks for the review, Thomas From thomas.schatzl at oracle.com Wed Nov 6 16:52:22 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Wed, 06 Nov 2013 17:52:22 +0100 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <5279C161.4060508@oracle.com> References: <1383659197.2830.23.camel@cirrus> <52798693.4050308@oracle.com> <5279C161.4060508@oracle.com> Message-ID: <1383756742.2918.38.camel@cirrus> Hi Jon, On Tue, 2013-11-05 at 20:11 -0800, Jon Masamitsu wrote: > Thomas, > > I should also have said that the changes look good. Thanks for the review - comments inline. > > On 11/5/2013 4:00 PM, Jon Masamitsu wrote: > > Thomas, > > > > Do you think there would be value in printing out the > > region address in the cases where the assertion fails? > > Your call as to whether it's worth printing the heap region. I fixed up the assertions as part of Tao's request to change them. > > > > > Does your new test case fail with both the client and > > server compilesr? > > Question relates to whether you want to specify the JIT > used when running the test. I changed the test to try both server and client compilers. Both failed btw. New webrev at: http://cr.openjdk.java.net/~tschatzl/8027756/webrev.1 Thanks, Thomas > > > > On 11/5/2013 5:46 AM, Thomas Schatzl wrote: > >> Hi all, > >> > >> can I get quick reviews for the following small changes? > >> > >> The patchset fixes wrong assertions that assume that references to > >> humongous/large objects cannot be embedded into the code stream. They > >> can. > >> > >> This is not true, and in the failing (existing) test case just that > >> happens. > >> > >> The fix is to just change all these wrong assertions to check whether > >> the region we want to add the code root to is a humongous continuation: > >> that really should not occur as they do not contain an object header. > >> > >> Note that there is a similar assertions with the same conditions in e.g. > >> MigrateCodeRootsHeapRegionClosure::doHeapRegion() - however this one > >> checks a different situation: there should be no migration of code roots > >> because (currently) large objects can never move. > >> > >> The original reasons for adding this assertion, and why this assertion > >> only triggers just now (the code has been in for a few months) are > >> unknown. I will try to find out what change (possibly in the compiler) > >> triggered this. > >> > >> The changeset also adds a new test in addition to the original one that > >> particularly targets most reasons why the assertion failed before: > >> - when adding a new code root to a humongous region > >> - when removing a new code root to a humongous region > >> - during verification (does anybody know why > >> G1VerifyHeapRegionCodeRoots is false by default?) > >> - strong code roots root marking (in anticipation of class unloading > >> during concurrent marking) > >> > >> bugs.openjdk > >> https://bugs.openjdk.java.net/browse/JDK-8027756 > >> > >> Webrev > >> http://cr.openjdk.java.net/~tschatzl/8027756/webrev/ > >> > >> Testing: > >> jprt, manual invocation of the failing test (verifying that without the > >> change the assertion triggers, and does not with the patch), new test > >> > >> Thanks, > >> Thomas > >> > > > From filipp.zhinkin at oracle.com Wed Nov 6 16:11:56 2013 From: filipp.zhinkin at oracle.com (Filipp Zhinkin) Date: Wed, 06 Nov 2013 20:11:56 +0400 Subject: RFR (S): 8026043: add regression test for JDK-8000831 In-Reply-To: <52663A13.3010100@oracle.com> References: <525425FC.4050907@oracle.com> <52582315.2030508@oracle.com> <5258234A.7070208@oracle.com> <525825D0.50407@oracle.com> <525BC6DB.9090200@oracle.com> <20131018145942.GB4344@ehelin-thinkpad> <526154B5.3040806@oracle.com> <52663A13.3010100@oracle.com> Message-ID: <527A6A4C.3060606@oracle.com> Hi, may I have a review on it? Thanks, Filipp. On 10/22/2013 12:40 PM, Filipp Zhinkin wrote: > Hi, > > I've done following changes: > - @build tag removed; > - 'garbage' array is now static field; > - added heap-sizing flags to avoid failures with options passed via > 'test.java.opts'. > > Updated webrev: http://cr.openjdk.java.net/~kshefov/8026043/webrev.02/ > > Thanks, > Filipp. > > On 10/18/2013 07:33 PM, Filipp Zhinkin wrote: >> Hi Erik, >> >> thank you for watching at it! >> >> On 10/18/2013 06:59 PM, Erik Helin wrote: >>> Hi Filipp, >>> >>> thanks for adding new tests, really appreciate it! >>> >>> I have a couple of comments/questions about this test: >>> - Do you really need a @build tag? >> No, I don't. >>> - Could you please provide a comment above each regex with an example >>> that shows what the regex matches? >> Yes, sure. >>> - This test will only run with the default GC (since no GC is >>> specified). What do you think about additional run targets testing >>> various GC combinations? >> The idea was to pass all VM options including different GC's via >> test.java.opts property. >> It makes test more flexible and allow us to test not only some fixed >> subset of GC combinations. >>> - Have you tried running the test with -Xcomp? The reason I'm asking is >>> because I'm afraid that the compiler might be able to realize >>> that the >>> GarbageProducer main method isn't doing anything. >> Yes, I've tried and that object allocation was not optimized out, >> but I agree with you, "garbage" should be static. >>> >>> One thing that usually solves this is having garbage as a public >>> static variable in the class. >>> - Are you using GarbageProducer since you want to trigger young GCs? If >>> so, why only tests young GCs? Would the test works just as well >>> using >>> System.gc() to tests full GCs? >> In fact, test running with MaxHeapSize=5m, so both minor and full GC >> happens. >> But there is another issue then - I forgot to set up other heap >> sizing options, >> so test will fail when someone start if with, for example, -Xms10m. >> >> I'll fix that. >> >> Thanks, >> Filipp. >>> Thanks, >>> Erik >>> >>> On 2013-10-14, Filipp Zhinkin wrote: >>>> Hi, >>>> >>>> I've refactored options parsing, here is updated webrev: >>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.01/ >>>> >>>> Note that I'm using ProcessTools.createVerboseJavaProcessBuilder >>>> from 8026047 >>>> to make sure that VM output will not be suppressed or redirected to >>>> file. >>>> >>>> Thanks, >>>> Filipp. >>>> >>>> On 10/11/2013 08:22 PM, Tao Mao wrote: >>>>> Ok, thank you for heads-up. Then, I'll await your webrev update. >>>>> >>>>> Thanks. >>>>> Tao >>>>> >>>>> On 10/11/13 9:11 AM, Filipp Zhinkin wrote: >>>>>> Hi Tao, >>>>>> >>>>>> Sorry for typo. You're right, the correct one is >>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/. >>>>>> >>>>>> And I'll refactor it in the same way as fix for 8026047. >>>>>> >>>>>> Thanks, >>>>>> Filipp. >>>>>> >>>>>> On 10/11/2013 08:11 PM, Tao Mao wrote: >>>>>>> Hi Filipp, >>>>>>> >>>>>>> FYI, it has a wrong webrev. I guess it should be >>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/ >>>>>>> >>>>>>> Thanks. >>>>>>> Tao >>>>>>> >>>>>>> On 10/8/13 8:34 AM, Filipp Zhinkin wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> I would like to get couple review on test, that cover issue >>>>>>>> fixed by 8000831 - Heap verification output >>>>>>>> incorrect/incomplete. >>>>>>>> >>>>>>>> Test verifies that options VerifyBeforeGC and >>>>>>>> VerifyAfterGCemit appropriate output if they are turned on >>>>>>>> and never >>>>>>>> emit corrupted output as it was before 8000831 fixed. >>>>>>>> >>>>>>>> Bug ID: https://bugs.openjdk.java.net/browse/JDK-8026043 >>>>>>>> Webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.00/ >>>>>>>> Testing: manual on local host, automated on various platforms. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Filipp. >> > From John.Coomes at oracle.com Wed Nov 6 18:18:30 2013 From: John.Coomes at oracle.com (John Coomes) Date: Wed, 6 Nov 2013 10:18:30 -0800 Subject: Preventing Class Definitions from Compacting At GC Cycle In-Reply-To: References: Message-ID: <21114.34806.357515.254475@oracle.com> serkan ?zal (serkanozal86 at hotmail.com) wrote: > Hi all, > I am not sure that target of mail is this group or not but I don't know better one for asking :) Hi Serkan, hotspot-gc-dev at openjdk.java.net (now cc'd) is the right list. -John > I am currently working on an OffHeap solution and I have a problem with "Compact" phase of GC.As I see at "Compact" phase, location of classes these not loaded by bootloader may be changed. However, location of classes these loaded by bootloader (classloaders are null) are not changed.Changing memory location of class definition fails my OffHeap solution. > Compacting can be disabled by VM arguments but I don't want to use these arguments. Because disabling compaction for all objects causes increasing of fragmentation. In addition, I tried class pinning with JNI by "NewGlobalRef" method but it doesn't prevent compacting. As I understood, it only hides object from garbage collected. > In brief, is there any way to prevent compacting of any specific class defition (or object) at GC cycle?Is there any bit, offset or field (such as mark_oop) in object header to prevent compacting of fully from GC for any specific object or class? > Thanks in advance. > -- > Serkan ?ZAL > From tao.mao at oracle.com Wed Nov 6 19:38:29 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 06 Nov 2013 11:38:29 -0800 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <1383756590.2918.35.camel@cirrus> References: <1383659197.2830.23.camel@cirrus> <52793DC8.7010305@oracle.com> <1383756590.2918.35.camel@cirrus> Message-ID: <527A9AB5.7050306@oracle.com> Hi Thomas, The code changes look good. One question about the test: How would the old code before your change fail the test? Thanks. Tao On 11/6/13 8:49 AM, Thomas Schatzl wrote: > Hi, > > On Tue, 2013-11-05 at 10:49 -0800, Tao Mao wrote: >> Hi Thomas, >> >> Can you make the assertion message from a question to a statement? It'll >> help future readers understand it. >> >> say, in g1CollectedHeap.cpp >> >> - assert(!hr->continuesHumongous(), "code root in continuation of >> humongous region?"); >> + assert(!hr->continuesHumongous(), "code root should not attached to a >> humonguous continuation"); >> >> There may be a couple of other similar ones. > Done for all related assertions. There are more, but I did not think > changing them fit into this changeset. > > See new webrev at http://cr.openjdk.java.net/~tschatzl/8027756/webrev.1/ > > Also changed the test to try both server and client compilers (e.g. > -client and -server). > > Thanks for the review, > Thomas > > From thomas.schatzl at oracle.com Wed Nov 6 20:12:11 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Wed, 06 Nov 2013 21:12:11 +0100 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <527A9AB5.7050306@oracle.com> References: <1383659197.2830.23.camel@cirrus> <52793DC8.7010305@oracle.com> <1383756590.2918.35.camel@cirrus> <527A9AB5.7050306@oracle.com> Message-ID: <1383768731.2752.28.camel@cirrus> Hi, On Wed, 2013-11-06 at 11:38 -0800, Tao Mao wrote: > Hi Thomas, > > The code changes look good. > > One question about the test: > How would the old code before your change fail the test? the assertions that failed asserted on when the region we wanted to add a code cache root to was a humongous region. I.e. when the compiler embeds a reference to an oop into the code stream, it notifies the heap about this. In the process of this notification, G1 adds that nmethod to the region the oop starts to it's code cache roots. This is sort of remembered set that contains nmethods as roots for that region. When evacuating a particular region we use its nmethod remembered set (code cache roots) just like any other remembered set. This is a quick way to find the actually relevant nmethods, i.e. during gc this is much cheaper than iterating over the entire code cache looking for these references. That the code references a humongous object, is a valid occurrence for humongous objects/regions, as code may embed references to humongous (start) regions just like any other object. For whatever reason this went unnoticed for two months - I guess some recent compiler changes triggered that. This change changes the asserts from any kind of humongous region to just the continuations of humongous regions: humongous continuation regions do not contain an object start, and as mentioned before, we only ever add the nmethod to the region where the object starts in, so no nmethods should be added in continuations of humongous regions. The test tries to verify all these asserts: - when adding an nmethod to a region's remembered set, i.e. when generated code embeds a reference to a humongous object. Happens during compilation and on-stack-replacement of the loop that initializes the arrays in the code I guess. - during verification (i.e. at the System.gc() calls in the test), when the remembered set is checked for validity - and during removal of an nmethod from that remembered set, i.e. after code is unloaded (the deoptimizeAll() call) and has been swept. The Thread.sleep() in the test waits for the code sweeper to wake up and notice that there are methods to remove from the cache. The VM parameters for the forked VM in the test contains appropriate command line options. - there is a fourth case that the test code executes the asserts, and that is during an initial mark when class unloading is enabled. Admittedly, since G1 does not do class unloading after concurrent marking yet, this code is not exercised yet, but will be. The test simply sets IHOP to zero so that any young gc will be an initial mark where this is done :) To test whether these three test cases would trigger, I simply successively fixed one assert after another, and each time checking that the correct assert would be triggered at the expected place in the test. Other asserts in the migrate_* methods in the change basically check that humongous objects are not in the collection set. "Migration" of code roots is similar to remembered set update after region evacuation. Since we never put humongous objects into the collection set to evacuate them, this code path will and did not trigger before with the old code too. The test does not check this situation either. It's probably somewhat tricky to make the GC move humongous objects in a reproducable way. Testing must be added, and these asserts changed with any code that changes the evacuation policy for humongous objects (at that point a *ton* of similar asserts will trigger, so a few more do not hurt :) Hth, Thomas > > Thanks. > Tao > > On 11/6/13 8:49 AM, Thomas Schatzl wrote: > > Hi, > > > > On Tue, 2013-11-05 at 10:49 -0800, Tao Mao wrote: > >> Hi Thomas, > >> > >> Can you make the assertion message from a question to a statement? It'll > >> help future readers understand it. > >> > >> say, in g1CollectedHeap.cpp > >> > >> - assert(!hr->continuesHumongous(), "code root in continuation of > >> humongous region?"); > >> + assert(!hr->continuesHumongous(), "code root should not attached to a > >> humonguous continuation"); > >> > >> There may be a couple of other similar ones. > > Done for all related assertions. There are more, but I did not think > > changing them fit into this changeset. > > > > See new webrev at http://cr.openjdk.java.net/~tschatzl/8027756/webrev.1/ > > > > Also changed the test to try both server and client compilers (e.g. > > -client and -server). > > > > Thanks for the review, > > Thomas > > > > From tao.mao at oracle.com Wed Nov 6 21:31:52 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 06 Nov 2013 13:31:52 -0800 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <1383768731.2752.28.camel@cirrus> References: <1383659197.2830.23.camel@cirrus> <52793DC8.7010305@oracle.com> <1383756590.2918.35.camel@cirrus> <527A9AB5.7050306@oracle.com> <1383768731.2752.28.camel@cirrus> Message-ID: <527AB548.80400@oracle.com> Hi Thomas, Thank you for a very informative response. Looks good. Ship it! Tao On 11/6/13 12:12 PM, Thomas Schatzl wrote: > Hi, > > On Wed, 2013-11-06 at 11:38 -0800, Tao Mao wrote: >> Hi Thomas, >> >> The code changes look good. >> >> One question about the test: >> How would the old code before your change fail the test? > the assertions that failed asserted on when the region we wanted to > add a code cache root to was a humongous region. I.e. when the compiler > embeds a reference to an oop into the code stream, it notifies the heap > about this. In the process of this notification, G1 adds that nmethod to > the region the oop starts to it's code cache roots. > > This is sort of remembered set that contains nmethods as roots for that > region. > > When evacuating a particular region we use its nmethod remembered set > (code cache roots) just like any other remembered set. This is a quick > way to find the actually relevant nmethods, i.e. during gc this is much > cheaper than iterating over the entire code cache looking for these > references. > > That the code references a humongous object, is a valid occurrence for > humongous objects/regions, as code may embed references to humongous > (start) regions just like any other object. > > For whatever reason this went unnoticed for two months - I guess some > recent compiler changes triggered that. > > This change changes the asserts from any kind of humongous region to > just the continuations of humongous regions: humongous continuation > regions do not contain an object start, and as mentioned before, we only > ever add the nmethod to the region where the object starts in, so no > nmethods should be added in continuations of humongous regions. > > The test tries to verify all these asserts: > - when adding an nmethod to a region's remembered set, i.e. when > generated code embeds a reference to a humongous object. Happens during > compilation and on-stack-replacement of the loop that initializes the > arrays in the code I guess. > - during verification (i.e. at the System.gc() calls in the test), when > the remembered set is checked for validity > - and during removal of an nmethod from that remembered set, i.e. after > code is unloaded (the deoptimizeAll() call) and has been swept. The > Thread.sleep() in the test waits for the code sweeper to wake up and > notice that there are methods to remove from the cache. The VM > parameters for the forked VM in the test contains appropriate command > line options. > - there is a fourth case that the test code executes the asserts, and > that is during an initial mark when class unloading is enabled. > Admittedly, since G1 does not do class unloading after concurrent > marking yet, this code is not exercised yet, but will be. The test > simply sets IHOP to zero so that any young gc will be an initial mark > where this is done :) > > To test whether these three test cases would trigger, I simply > successively fixed one assert after another, and each time checking that > the correct assert would be triggered at the expected place in the test. > > Other asserts in the migrate_* methods in the change basically check > that humongous objects are not in the collection set. "Migration" of > code roots is similar to remembered set update after region evacuation. > Since we never put humongous objects into the collection set to evacuate > them, this code path will and did not trigger before with the old code > too. The test does not check this situation either. It's probably > somewhat tricky to make the GC move humongous objects in a reproducable > way. > Testing must be added, and these asserts changed with any code that > changes the evacuation policy for humongous objects (at that point a > *ton* of similar asserts will trigger, so a few more do not hurt :) > > Hth, > Thomas > >> Thanks. >> Tao >> >> On 11/6/13 8:49 AM, Thomas Schatzl wrote: >>> Hi, >>> >>> On Tue, 2013-11-05 at 10:49 -0800, Tao Mao wrote: >>>> Hi Thomas, >>>> >>>> Can you make the assertion message from a question to a statement? It'll >>>> help future readers understand it. >>>> >>>> say, in g1CollectedHeap.cpp >>>> >>>> - assert(!hr->continuesHumongous(), "code root in continuation of >>>> humongous region?"); >>>> + assert(!hr->continuesHumongous(), "code root should not attached to a >>>> humonguous continuation"); >>>> >>>> There may be a couple of other similar ones. >>> Done for all related assertions. There are more, but I did not think >>> changing them fit into this changeset. >>> >>> See new webrev at http://cr.openjdk.java.net/~tschatzl/8027756/webrev.1/ >>> >>> Also changed the test to try both server and client compilers (e.g. >>> -client and -server). >>> >>> Thanks for the review, >>> Thomas >>> >>> > From tao.mao at oracle.com Thu Nov 7 00:43:42 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 06 Nov 2013 16:43:42 -0800 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <1372853037.2719.43.camel@cirrus> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> Message-ID: <527AE23E.1020000@oracle.com> Hi all, A new webrev is updated http://cr.openjdk.java.net/~tamao/6521376/webrev.03/ It includes a thorough test, which is one good way to examine the changeset. Changeset: One point I want to discuss here is the validity of setting -XX:MaxTenuringThreshold=16. The reason why I'd consider it valid is: when NeverTenure is set, MaxTenuringThreshold is set to 16 while setting MaxTenuringThreshold=15 doesn't make sense here. Thus, MaxTenuringThreshold=16 needs to be considered a valid setting. With that being said, I've also modified the test code in TestInitialTenuringThreshold.java to reflect the above decision. Test: Manual checked the jtreg tests. Thanks. Tao -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Thu Nov 7 03:02:27 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Wed, 06 Nov 2013 19:02:27 -0800 Subject: Request for review: 7098155: Resize young gen at full collections for UseParallelGC In-Reply-To: <5240CB0F.9080902@oracle.com> References: <5240CB0F.9080902@oracle.com> Message-ID: <527B02C3.3040805@oracle.com> Tao, http://cr.openjdk.java.net/~tamao/7098155/webrev.00/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp.frames.html Should this block of code 266 // Swap the survivor spaces if from_space is empty 267 if (UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection && 268 young_gen->from_space()->is_empty()) { 269 young_gen->from_space()->clear(SpaceDecorator::Mangle); 270 young_gen->swap_spaces(); 271 } be under the guard just below it? 273 if (UseAdaptiveSizePolicy) { http://cr.openjdk.java.net/~tamao/7098155/webrev.00/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.frames.html Same question for this block of code 2103 // Swap the survivor spaces if from_space is empty 2104 if (UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection && 2105 young_gen->from_space()->is_empty()) { 2106 young_gen->from_space()->clear(SpaceDecorator::Mangle); 2107 young_gen->swap_spaces(); 2108 } Jon On 9/23/2013 4:13 PM, Tao Mao wrote: > Hi, > > changeset: > https://bugs.openjdk.java.net/browse/JDK-7098155 > > In order to avoid the situation for UseParallelGC described in the CR, > we need to resize young gen at full collections. > > And, according to the heap configuration in young gen, we need to swap > from- and to-space () after full gc in order to get the young gen > correctly resized after several GC's. > > webrev: > http://cr.openjdk.java.net/~tamao/7098155/webrev.00/ > > test: > - Pass JPRT tests > > - RefWorkload > > (1) ParallelGC (-XX:+UseParallelGC -XX:-UseParallelOldGC) > > baseline: -XX:-UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection > resize: -XX:+UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection > > ./compare results_baseline_512m results_resize_512m > ============================================================================== > > results_baseline_512m: > Benchmark Samples Mean Stdev Geomean Weight > jetstream 30 192.52 9.86 > scimark 30 855.62 30.33 > specjbb2005 30 145844.73 4552.07 > specjvm98 30 568.92 10.65 > ============================================================================== > > results_resize_512m: > Benchmark Samples Mean Stdev %Diff P > Significant > jetstream 30 192.89 11.33 0.19 > 0.894 * > scimark 30 862.21 24.17 0.77 > 0.356 * > specjbb2005 30 142749.53 4852.66 -2.12 > 0.014 * > specjvm98 30 566.42 8.55 -0.44 > 0.320 * > ============================================================================== > > * - Not Significant: A non-zero %Diff for the mean could be noise. > If the > %Diff is 0, an actual difference may still exist. In either > case, more > samples would be needed to detect an actual difference in sample > means. > > (2) ParallelOldGC (-XX:+UseParallelGC -XX:+UseParallelOldGC) > > baseline: -XX:-UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection > resize: -XX:+UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection > > ./compare results_baseline_512m_ParallelOldGC > results_resize_512m_ParallelOldGC > ============================================================================== > > results_baseline_512m_ParallelOldGC: > Benchmark Samples Mean Stdev Geomean Weight > jetstream 30 196.15 8.91 > scimark 30 855.92 22.58 > specjbb2005 30 161857.59 2653.89 > specjvm98 30 554.76 11.31 > ============================================================================== > > results_resize_512m_ParallelOldGC: > Benchmark Samples Mean Stdev %Diff P > Significant > jetstream 30 195.17 6.04 -0.50 > 0.623 * > scimark 30 853.43 22.33 -0.29 > 0.669 * > specjbb2005 30 161027.44 2705.23 -0.51 > 0.235 * > specjvm98 30 560.08 9.74 0.96 > 0.056 * > ============================================================================== > > * - Not Significant: A non-zero %Diff for the mean could be noise. > If the > %Diff is 0, an actual difference may still exist. In either > case, more > samples would be needed to detect an actual difference in sample > means. > > Thanks. > Tao From jon.masamitsu at oracle.com Thu Nov 7 04:48:16 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Wed, 06 Nov 2013 20:48:16 -0800 Subject: RFR (XS): 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? (P2-JDK8!) In-Reply-To: <1383756742.2918.38.camel@cirrus> References: <1383659197.2830.23.camel@cirrus> <52798693.4050308@oracle.com> <5279C161.4060508@oracle.com> <1383756742.2918.38.camel@cirrus> Message-ID: <527B1B90.3050107@oracle.com> Ok. I'm good with both your responses. Jon On 11/6/2013 8:52 AM, Thomas Schatzl wrote: > Hi Jon, > > On Tue, 2013-11-05 at 20:11 -0800, Jon Masamitsu wrote: >> Thomas, >> >> I should also have said that the changes look good. > Thanks for the review - comments inline. > >> On 11/5/2013 4:00 PM, Jon Masamitsu wrote: >>> Thomas, >>> >>> Do you think there would be value in printing out the >>> region address in the cases where the assertion fails? >> Your call as to whether it's worth printing the heap region. > I fixed up the assertions as part of Tao's request to change them. > >>> Does your new test case fail with both the client and >>> server compilesr? >> Question relates to whether you want to specify the JIT >> used when running the test. > I changed the test to try both server and client compilers. Both failed > btw. > > New webrev at: > http://cr.openjdk.java.net/~tschatzl/8027756/webrev.1 > > Thanks, > Thomas > >>> On 11/5/2013 5:46 AM, Thomas Schatzl wrote: >>>> Hi all, >>>> >>>> can I get quick reviews for the following small changes? >>>> >>>> The patchset fixes wrong assertions that assume that references to >>>> humongous/large objects cannot be embedded into the code stream. They >>>> can. >>>> >>>> This is not true, and in the failing (existing) test case just that >>>> happens. >>>> >>>> The fix is to just change all these wrong assertions to check whether >>>> the region we want to add the code root to is a humongous continuation: >>>> that really should not occur as they do not contain an object header. >>>> >>>> Note that there is a similar assertions with the same conditions in e.g. >>>> MigrateCodeRootsHeapRegionClosure::doHeapRegion() - however this one >>>> checks a different situation: there should be no migration of code roots >>>> because (currently) large objects can never move. >>>> >>>> The original reasons for adding this assertion, and why this assertion >>>> only triggers just now (the code has been in for a few months) are >>>> unknown. I will try to find out what change (possibly in the compiler) >>>> triggered this. >>>> >>>> The changeset also adds a new test in addition to the original one that >>>> particularly targets most reasons why the assertion failed before: >>>> - when adding a new code root to a humongous region >>>> - when removing a new code root to a humongous region >>>> - during verification (does anybody know why >>>> G1VerifyHeapRegionCodeRoots is false by default?) >>>> - strong code roots root marking (in anticipation of class unloading >>>> during concurrent marking) >>>> >>>> bugs.openjdk >>>> https://bugs.openjdk.java.net/browse/JDK-8027756 >>>> >>>> Webrev >>>> http://cr.openjdk.java.net/~tschatzl/8027756/webrev/ >>>> >>>> Testing: >>>> jprt, manual invocation of the failing test (verifying that without the >>>> change the assertion triggers, and does not with the patch), new test >>>> >>>> Thanks, >>>> Thomas >>>> > From thomas.schatzl at oracle.com Thu Nov 7 15:26:30 2013 From: thomas.schatzl at oracle.com (thomas.schatzl at oracle.com) Date: Thu, 07 Nov 2013 15:26:30 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? Message-ID: <20131107152633.1C09262400@hg.openjdk.java.net> Changeset: 28674af341ac Author: tschatzl Date: 2013-11-07 15:17 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/28674af341ac 8027756: assert(!hr->isHumongous()) failed: code root in humongous region? Summary: Change checks for isHumongous() to continuesHumongous() as installing a code root for a humongous object is valid, but not for continuations of humongous objects. Cleaned up asserts. Reviewed-by: jmasa, tamao ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp + test/gc/g1/TestHumongousCodeCacheRoots.java From john.coomes at oracle.com Thu Nov 7 21:56:56 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 21:56:56 +0000 Subject: hg: hsx/hotspot-gc/jaxp: 6 new changesets Message-ID: <20131107215718.3DDC662444@hg.openjdk.java.net> Changeset: 390e94b9a852 Author: joehw Date: 2013-10-24 13:43 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/390e94b9a852 8004476: XSLT Extension Functions Don't Work in WebStart Reviewed-by: dfuchs, lancea, alanb ! src/com/sun/org/apache/xalan/internal/XalanConstants.java + src/com/sun/org/apache/xalan/internal/utils/FeatureManager.java + src/com/sun/org/apache/xalan/internal/utils/FeaturePropertyBase.java ! src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java ! src/com/sun/org/apache/xalan/internal/utils/XMLSecurityPropertyManager.java ! src/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java ! src/com/sun/org/apache/xerces/internal/utils/SecuritySupport.java ! src/com/sun/org/apache/xpath/internal/jaxp/JAXPExtensionsProvider.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java ! src/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java Changeset: 96562bf197f2 Author: lana Date: 2013-10-28 12:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/96562bf197f2 Merge Changeset: 1af33ab1bc58 Author: joehw Date: 2013-10-29 14:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/1af33ab1bc58 8027484: Implementation error in SAX2DOM.java Reviewed-by: alanb, lancea ! src/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java Changeset: 04778b00286a Author: joehw Date: 2013-10-30 08:58 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/04778b00286a 8024378: StAX parser shall support JAXP properties Reviewed-by: dfuchs, lancea ! src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java ! src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java Changeset: f610fd46463e Author: lana Date: 2013-10-31 16:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/f610fd46463e Merge Changeset: e757eb9aee3d Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/e757eb9aee3d Added tag jdk8-b115 for changeset f610fd46463e ! .hgtags From john.coomes at oracle.com Thu Nov 7 21:57:23 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 21:57:23 +0000 Subject: hg: hsx/hotspot-gc/jaxws: Added tag jdk8-b115 for changeset e126d8eca69b Message-ID: <20131107215732.2861362445@hg.openjdk.java.net> Changeset: 587560c222a2 Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/587560c222a2 Added tag jdk8-b115 for changeset e126d8eca69b ! .hgtags From john.coomes at oracle.com Thu Nov 7 21:56:45 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 21:56:45 +0000 Subject: hg: hsx/hotspot-gc/corba: 5 new changesets Message-ID: <20131107215650.F2E5162443@hg.openjdk.java.net> Changeset: 52ad44f9a3ec Author: alanb Date: 2013-10-22 11:40 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/52ad44f9a3ec 8021257: com.sun.corba.se.** should be on restricted package list Reviewed-by: chegar, coffeys, smarks Contributed-by: alan.bateman at oralce.com, mark.sheppard at oracle.com ! src/share/classes/javax/rmi/CORBA/Stub.java ! src/share/classes/javax/rmi/CORBA/Util.java ! src/share/classes/javax/rmi/PortableRemoteObject.java ! src/share/classes/org/omg/CORBA/ORB.java Changeset: a90e9efa4264 Author: coffeys Date: 2013-10-23 16:45 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/a90e9efa4264 5036554: unmarshal error on CORBA alias type in CORBA any Reviewed-by: chegar, smarks ! src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java Changeset: 219e616a6a4f Author: lana Date: 2013-10-28 12:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/219e616a6a4f Merge Changeset: 8d07115924b7 Author: lana Date: 2013-10-31 16:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/8d07115924b7 Merge Changeset: 5fdc44652089 Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/5fdc44652089 Added tag jdk8-b115 for changeset 8d07115924b7 ! .hgtags From john.coomes at oracle.com Thu Nov 7 21:56:39 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 21:56:39 +0000 Subject: hg: hsx/hotspot-gc: 30 new changesets Message-ID: <20131107215641.094F062442@hg.openjdk.java.net> Changeset: 3dc55f0c1b6f Author: jlaskey Date: 2013-01-28 16:29 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/3dc55f0c1b6f 8006676: Integrate Nashorn into new build system Reviewed-by: jlaskey Contributed-by: james.laskey at oracle.com ! common/autoconf/generated-configure.sh ! common/autoconf/source-dirs.m4 ! common/autoconf/spec.gmk.in ! common/bin/compare.sh ! common/makefiles/Main.gmk ! common/makefiles/MakeBase.gmk + make/nashorn-rules.gmk ! make/scripts/hgforest.sh Changeset: ecd447139a39 Author: jlaskey Date: 2013-02-04 17:30 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ecd447139a39 Merge ! common/autoconf/generated-configure.sh Changeset: 9ed388a04fa7 Author: jlaskey Date: 2013-02-06 13:37 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/9ed388a04fa7 8007666: nashorn missing from hgforest.sh Reviewed-by: jlaskey Contributed-by: james.laskey at oracle.com ! common/bin/hgforest.sh Changeset: 8b19b55f695d Author: jlaskey Date: 2013-02-18 19:01 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/8b19b55f695d 8008420: Fix Nashorn forest to build with NEWBUILD=false Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! Makefile ! make/nashorn-rules.gmk Changeset: f9a1cb245484 Author: jlaskey Date: 2013-02-19 10:02 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/f9a1cb245484 8008446: Tweaks to make all NEWBUILD=false round 2 Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! make/Defs-internal.gmk Changeset: 887fde71977e Author: jlaskey Date: 2013-02-21 15:25 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/887fde71977e 8008447: Tweaks to make all NEWBUILD=false round 3 Reviewed-by: jjh, sundar Contributed-by: james.laskey at oracle.com ! make/jdk-rules.gmk ! make/sanity-rules.gmk Changeset: e877cb3eb4d6 Author: jlaskey Date: 2013-02-22 13:09 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/e877cb3eb4d6 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/bin/hgforest.sh ! common/makefiles/Main.gmk Changeset: 528a9984198f Author: jlaskey Date: 2013-02-22 22:58 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/528a9984198f 8008774: nashorn missing from dependencies after merge with tl Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! common/makefiles/Main.gmk Changeset: 13ddc5c3ebfc Author: jlaskey Date: 2013-03-02 10:28 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/13ddc5c3ebfc Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/bin/hgforest.sh ! common/makefiles/Main.gmk ! make/nashorn-rules.gmk Changeset: 1d38d30196be Author: jlaskey Date: 2013-03-08 14:44 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/1d38d30196be Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/makefiles/Main.gmk Changeset: b938d5ee29c3 Author: jlaskey Date: 2013-03-15 11:50 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/b938d5ee29c3 Merge Changeset: fe5a388bf8fe Author: jlaskey Date: 2013-03-26 09:13 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/fe5a388bf8fe Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/makefiles/Main.gmk Changeset: 1378ccca1c79 Author: jlaskey Date: 2013-04-09 08:35 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/1378ccca1c79 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/bin/hgforest.sh ! common/makefiles/Main.gmk Changeset: 8a7e97848471 Author: jlaskey Date: 2013-04-15 08:06 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/8a7e97848471 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/makefiles/Main.gmk Changeset: 6316aefcf716 Author: jlaskey Date: 2013-04-17 08:47 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/6316aefcf716 Merge Changeset: dd81e9b5fb38 Author: jlaskey Date: 2013-04-22 13:59 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/dd81e9b5fb38 Merge Changeset: 431d16ddfcd9 Author: jlaskey Date: 2013-04-29 21:37 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/431d16ddfcd9 Merge Changeset: 1fca390200c1 Author: jlaskey Date: 2013-05-14 09:04 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/1fca390200c1 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/makefiles/Main.gmk Changeset: 67b5cbe55744 Author: jlaskey Date: 2013-05-23 09:48 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/67b5cbe55744 Merge Changeset: de886178f8e6 Author: jlaskey Date: 2013-06-05 13:08 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/de886178f8e6 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in Changeset: 520fd54a7c43 Author: jlaskey Date: 2013-07-16 09:08 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/520fd54a7c43 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/makefiles/Main.gmk Changeset: 67dc3d7d5b5f Author: jlaskey Date: 2013-07-24 08:23 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/67dc3d7d5b5f Merge ! common/autoconf/generated-configure.sh Changeset: 96f207364e46 Author: jlaskey Date: 2013-08-27 16:05 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/96f207364e46 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/makefiles/Main.gmk Changeset: ddf76977d04a Author: jlaskey Date: 2013-09-13 10:14 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/ddf76977d04a Merge ! common/autoconf/generated-configure.sh ! common/bin/hgforest.sh ! common/makefiles/Main.gmk Changeset: 8b92b08993a8 Author: jlaskey Date: 2013-09-30 10:23 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/8b92b08993a8 Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in Changeset: d832f6171acd Author: jlaskey Date: 2013-10-29 11:48 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/d832f6171acd Merge ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in ! common/bin/hgforest.sh ! common/makefiles/Main.gmk Changeset: 067355edfbf8 Author: vinnie Date: 2013-10-30 17:31 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/067355edfbf8 8027567: JDK 8 build failure: the correct version of GNU make is being rejected Reviewed-by: chegar, erikj ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh Changeset: 37d2736caf46 Author: lana Date: 2013-10-30 13:41 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/37d2736caf46 Merge ! common/autoconf/basics.m4 ! common/autoconf/generated-configure.sh ! common/autoconf/spec.gmk.in Changeset: 763ada2a1d8c Author: lana Date: 2013-10-31 16:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/763ada2a1d8c Merge Changeset: 40e892e2a4f2 Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/40e892e2a4f2 Added tag jdk8-b115 for changeset 763ada2a1d8c ! .hgtags From john.coomes at oracle.com Thu Nov 7 22:09:52 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 22:09:52 +0000 Subject: hg: hsx/hotspot-gc/jdk: 212 new changesets Message-ID: <20131107225342.2CB0462447@hg.openjdk.java.net> Changeset: 180c05796c45 Author: bae Date: 2013-10-10 18:59 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/180c05796c45 7058618: PNG parser bugs found via zzuf fuzzing Reviewed-by: prr, vadim ! src/share/classes/com/sun/imageio/plugins/png/PNGImageReader.java Changeset: 0c2ba6a67b0d Author: morris Date: 2013-10-11 12:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0c2ba6a67b0d 7195597: ThreadStateTest gets different results with -Xcomp Reviewed-by: kvn ! test/java/lang/Thread/ThreadStateTest.java Changeset: 124bffc749ea Author: lana Date: 2013-10-12 14:14 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/124bffc749ea Merge - src/macosx/classes/sun/lwawt/SelectionClearListener.java - src/macosx/classes/sun/lwawt/macosx/CMouseInfoPeer.java - src/share/classes/java/lang/invoke/InvokeGeneric.java - src/share/classes/java/time/chrono/ChronoDateImpl.java - test/com/sun/jdi/Solaris32AndSolaris64Test.sh - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-i586/libLauncher.so - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparc/libLauncher.so - test/java/time/tck/java/time/chrono/TCKChronologySerialization.java - test/java/util/regex/PatternTest.java Changeset: 7ed340e7d894 Author: bae Date: 2013-10-14 15:32 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7ed340e7d894 7058602: BMP parser bugs found via zzuf fuzzing Reviewed-by: prr, vadim ! src/share/classes/com/sun/imageio/plugins/bmp/BMPImageReader.java ! src/share/classes/com/sun/imageio/plugins/common/iio-plugin.properties ! src/share/classes/java/awt/image/ComponentSampleModel.java Changeset: cb9fa40f73f7 Author: bae Date: 2013-10-14 15:49 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cb9fa40f73f7 7058607: GIF parser bugs found via zzuf fuzzing Reviewed-by: prr, vadim ! src/share/classes/com/sun/imageio/plugins/gif/GIFImageReader.java Changeset: 478f7a9b3b12 Author: bae Date: 2013-10-14 16:00 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/478f7a9b3b12 7058611: JPG parser bugs found via zzuf fuzzing Reviewed-by: prr, vadim ! src/share/classes/com/sun/imageio/plugins/jpeg/MarkerSegment.java ! src/share/classes/com/sun/imageio/plugins/jpeg/SOFMarkerSegment.java Changeset: b164c8eb1295 Author: jgodinez Date: 2013-10-14 09:15 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b164c8eb1295 8022536: closed/javax/print/TextFlavorTest.java fails Reviewed-by: prr, jchen ! src/solaris/classes/sun/print/CUPSPrinter.java ! src/solaris/classes/sun/print/IPPPrintService.java ! src/solaris/classes/sun/print/UnixPrintServiceLookup.java ! test/java/awt/print/PrinterJob/PrintLatinCJKTest.java + test/javax/print/TextFlavorTest.java Changeset: 8a59181b3c6d Author: vadim Date: 2013-10-15 08:39 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8a59181b3c6d 8023590: REGRESSION: large count of graphics artifacts with Java 8 on Windows 8 on Intel HD card. Reviewed-by: prr, bae ! src/windows/native/sun/java2d/d3d/D3DBadHardware.h Changeset: 0df5cda89a50 Author: jchen Date: 2013-10-15 14:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0df5cda89a50 8025429: [parfait] warnings from b107 for sun.java2d.cmm: JNI exception pending Reviewed-by: prr, bae ! src/share/native/sun/java2d/cmm/lcms/LCMS.c Changeset: c9c945cea665 Author: jgodinez Date: 2013-10-15 14:24 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c9c945cea665 8015586: [macosx] Test closed/java/awt/print/PrinterJob/PrintToDir.java fails on MacOSX Reviewed-by: prr, jchen ! src/macosx/classes/sun/lwawt/macosx/CPrinterJob.java ! src/share/classes/sun/print/RasterPrinterJob.java + test/java/awt/print/PrinterJob/PrintToDir.java Changeset: 070e8ec9d82c Author: bae Date: 2013-10-16 17:13 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/070e8ec9d82c 8026702: Fix for 8025429 breaks jdk build on windows Reviewed-by: serb ! src/share/native/sun/java2d/cmm/lcms/LCMS.c Changeset: 73d212a3b2eb Author: jchen Date: 2013-10-16 14:00 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/73d212a3b2eb 8024461: [macosx] Java crashed on mac10.9 for swing and 2d function manual test Reviewed-by: prr, vadim, serb ! src/share/native/sun/java2d/opengl/OGLBlitLoops.c Changeset: bcf8e9a59968 Author: jgodinez Date: 2013-10-18 15:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bcf8e9a59968 8025988: [macosx] Attribute settings don't work for JobAttributes range 8025990: [macosx] Attribute settings don't work for JobAttributes setOrientationRequested, setMedia Reviewed-by: prr, jchen ! src/macosx/native/sun/awt/CPrinterJob.m ! src/share/classes/sun/print/RasterPrinterJob.java ! src/windows/classes/sun/awt/windows/WPrinterJob.java ! test/java/awt/PrintJob/SaveDialogTitleTest.java Changeset: 2a3e21fe9d0d Author: jgodinez Date: 2013-10-21 13:18 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2a3e21fe9d0d 8026951: Fix for 8025988 breaks jdk build on windows Reviewed-by: prr, jchen ! src/share/classes/sun/print/RasterPrinterJob.java Changeset: 923f39485651 Author: bae Date: 2013-10-22 13:28 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/923f39485651 8026780: Crash on PPC and PPC v2 for Java_awt test suit Reviewed-by: prr, jchen ! src/share/native/sun/java2d/cmm/lcms/LCMS.c Changeset: 739ed3f0e796 Author: ceisserer Date: 2013-10-22 13:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/739ed3f0e796 8023483: sun/java2d/DirectX/TransformedPaintTest/TransformedPaintTest.java failed with jdk8 on linux platforms Reviewed-by: prr, bae ! src/solaris/classes/sun/java2d/xr/XRBackend.java ! src/solaris/classes/sun/java2d/xr/XRBackendNative.java ! src/solaris/classes/sun/java2d/xr/XRCompositeManager.java ! src/solaris/classes/sun/java2d/xr/XRPaints.java ! src/solaris/classes/sun/java2d/xr/XRSurfaceData.java ! src/solaris/native/sun/java2d/x11/XRBackendNative.c + test/java/awt/GradientPaint/GradientTransformTest.java + test/java/awt/GradientPaint/LinearColorSpaceGradientTest.java ! test/sun/java2d/DirectX/TransformedPaintTest/TransformedPaintTest.java Changeset: c55a8480cc27 Author: ceisserer Date: 2013-10-22 15:39 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c55a8480cc27 8023098: XRender : AlphaComposite test results are incorrect. Reviewed-by: prr, bae ! src/solaris/classes/sun/java2d/xr/MaskTileManager.java ! src/solaris/classes/sun/java2d/xr/XRColor.java ! src/solaris/classes/sun/java2d/xr/XRCompositeManager.java ! src/solaris/classes/sun/java2d/xr/XRDrawImage.java ! src/solaris/classes/sun/java2d/xr/XRMaskBlit.java + src/solaris/classes/sun/java2d/xr/XRSolidSrcPict.java ! src/solaris/classes/sun/java2d/xr/XRSurfaceData.java ! src/solaris/classes/sun/java2d/xr/XRUtils.java Changeset: aca4a67e560d Author: vadim Date: 2013-10-23 08:56 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/aca4a67e560d 8001173: [findbugs] Evaluate FindBug output for sun.font.CompositeFont, sun.font.CompositeFontDescriptor Reviewed-by: prr, bae ! src/share/classes/sun/font/StandardTextSource.java ! src/share/classes/sun/font/TextLabelFactory.java ! src/solaris/classes/sun/font/FontConfigManager.java Changeset: 92af0666c168 Author: prr Date: 2013-10-23 08:46 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/92af0666c168 8027169: Xrender: Cleaner version of the fix for 7159455 Nimbus scrollbar glitch Reviewed-by: prr, bae ! src/solaris/classes/sun/java2d/xr/XRPMBlitLoops.java Changeset: d27525c346fa Author: lana Date: 2013-10-24 21:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d27525c346fa Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m - src/share/classes/com/sun/jdi/connect/package.html - src/share/classes/com/sun/jdi/connect/spi/package.html - src/share/classes/com/sun/jdi/event/package.html - src/share/classes/com/sun/jdi/package.html - src/share/classes/com/sun/jdi/request/package.html - src/share/classes/com/sun/management/package.html - src/share/classes/com/sun/tools/attach/package.html - src/share/classes/com/sun/tools/attach/spi/package.html - src/share/classes/com/sun/tools/jconsole/package.html - src/share/classes/java/net/HttpURLPermission.java - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 - test/com/oracle/security/ucrypto/TestAES.java - test/com/oracle/security/ucrypto/TestDigest.java - test/com/oracle/security/ucrypto/TestRSA.java - test/com/oracle/security/ucrypto/UcryptoTest.java - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 Changeset: 3371047f56f3 Author: lana Date: 2013-10-31 15:45 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3371047f56f3 Merge Changeset: 2e59014ef38f Author: alexsch Date: 2013-10-09 13:40 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2e59014ef38f 8025649: need test to cover JDK-8000423 Reviewed-by: anthony, serb Contributed-by: Alexander Stepanov + test/java/awt/InputMethods/DiacriticsTest/DiacriticsTest.html + test/java/awt/InputMethods/DiacriticsTest/DiacriticsTest.java Changeset: 84c766f6796b Author: bagiras Date: 2013-10-09 14:12 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/84c766f6796b 8016356: Any swing frame resizes ugly. Reviewed-by: art, anthony ! src/windows/native/sun/windows/awt_Window.cpp Changeset: 929dc0915f8c Author: anthony Date: 2013-10-09 15:34 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/929dc0915f8c 7159266: [macosx] ApplicationDelegate should not be set in the headless mode Summary: Don't install ApplicationDelegate in headless mode Reviewed-by: art, serb ! src/macosx/native/sun/awt/awt.m Changeset: 976e5f580124 Author: leonidr Date: 2013-10-09 20:59 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/976e5f580124 8019623: Lack of synchronization in AppContext.getAppContext() Reviewed-by: anthony, art ! src/share/classes/sun/awt/AppContext.java + test/sun/awt/AppContext/MultiThread/MultiThreadTest.java Changeset: fba62451d705 Author: leonidr Date: 2013-10-09 21:15 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fba62451d705 8016551: JMenuItem in WindowsLookAndFeel can't paint default icons Reviewed-by: alexsch, serb ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsIconFactory.java + test/com/sun/java/swing/plaf/windows/8016551/bug8016551.java Changeset: cea6ca16142e Author: cl Date: 2013-10-09 14:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cea6ca16142e 8026021: more fix of javadoc errors and warnings reported by doclint, see the description Reviewed-by: anthony, serb ! src/share/classes/java/awt/GraphicsDevice.java ! src/share/classes/java/awt/GridBagLayout.java ! src/share/classes/java/awt/LinearGradientPaint.java ! src/share/classes/java/awt/RadialGradientPaint.java ! src/share/classes/java/awt/font/LineBreakMeasurer.java ! src/share/classes/java/awt/font/MultipleMaster.java ! src/share/classes/java/awt/font/NumericShaper.java ! src/share/classes/java/awt/font/OpenType.java ! src/share/classes/java/awt/geom/AffineTransform.java ! src/share/classes/java/awt/im/InputContext.java ! src/share/classes/javax/swing/Action.java ! src/share/classes/javax/swing/GroupLayout.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/StyleConstants.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java Changeset: 81ea6299230a Author: serb Date: 2013-10-10 02:35 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/81ea6299230a 7058662: AiffFileReader throws java.lang.ArithmeticException: division by zero when frame size is zero 7058666: Unexpected exception in AU parser code 7058672: Unexpected exceptions and freezes in WAV parser code Reviewed-by: prr ! src/share/classes/com/sun/media/sound/AiffFileReader.java ! src/share/classes/com/sun/media/sound/AuFileReader.java ! src/share/classes/com/sun/media/sound/WaveFileReader.java + test/javax/sound/sampled/FileReader/ReadersExceptions.java Changeset: 857d6f78f241 Author: pchelko Date: 2013-10-10 11:40 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/857d6f78f241 8025588: [macosx] Frozen AppKit thread in 7u40 Reviewed-by: anthony, art, serb ! src/macosx/classes/sun/lwawt/macosx/CInputMethod.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/classes/sun/lwawt/macosx/CViewEmbeddedFrame.java ! src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/java/awt/event/InvocationEvent.java ! src/share/classes/sun/awt/AWTAccessor.java Changeset: 31a156bae7cb Author: pchelko Date: 2013-10-10 19:27 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/31a156bae7cb 8024864: [macosx] Problems with rendering of controls Reviewed-by: serb, leonidr ! src/macosx/classes/sun/lwawt/LWWindowPeer.java + test/java/awt/Paint/bug8024864.java Changeset: de36486eadd2 Author: pchelko Date: 2013-10-11 11:48 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/de36486eadd2 8026143: [macosx] Maximized state could be inconsistent between peer and frame Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/native/sun/awt/AWTWindow.m + test/java/awt/Frame/MaximizedByPlatform/MaximizedByPlatform.java Changeset: d96f9a8cf89a Author: kshefov Date: 2013-10-11 15:39 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d96f9a8cf89a 7124338: [macosx] Selection lost if a selected item removed from a java.awt.List Reviewed-by: serb, anthony + test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.html + test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.java Changeset: 2e04843f1c1d Author: art Date: 2013-10-11 16:44 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2e04843f1c1d 8022185: Fix Raw and unchecked warnings in classes belonging to java.awt.datatransfer Reviewed-by: art, pchelko Contributed-by: Srikalyan Chandrashekar ! src/share/classes/java/awt/datatransfer/DataFlavor.java ! src/share/classes/java/awt/datatransfer/MimeTypeParameterList.java Changeset: 2f7f6995fa64 Author: pchelko Date: 2013-10-11 17:57 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2f7f6995fa64 8026262: NPE in SystemFlavorMap.getAllNativesForType - regression in jdk8 b110 by fix of #JDK-8024987 Reviewed-by: art, serb ! src/share/classes/java/awt/datatransfer/SystemFlavorMap.java Changeset: af273c9b564a Author: pchelko Date: 2013-10-11 18:04 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/af273c9b564a 8024329: [macosx] JRadioButtonMenuItem behaves like a checkbox when using the ScreenMenuBar Reviewed-by: anthony, serb ! src/macosx/classes/com/apple/laf/ScreenMenuItemCheckbox.java Changeset: f65895a2959e Author: lana Date: 2013-10-11 14:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f65895a2959e Merge - src/share/classes/java/lang/invoke/InvokeGeneric.java - src/share/classes/java/time/chrono/ChronoDateImpl.java - test/com/sun/jdi/Solaris32AndSolaris64Test.sh - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-i586/libLauncher.so - test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparc/libLauncher.so - test/java/time/tck/java/time/chrono/TCKChronologySerialization.java - test/java/util/regex/PatternTest.java Changeset: d874963706dc Author: yan Date: 2013-10-14 11:47 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d874963706dc 8025824: [cleanup] Fix tidy errors and warnings in preformatted HTML files related to 2d/awt/swing Reviewed-by: anthony, alexsch ! src/macosx/classes/com/apple/eawt/event/package.html ! src/macosx/classes/com/apple/eawt/package.html ! src/share/classes/java/awt/color/package.html ! src/share/classes/java/awt/datatransfer/package.html ! src/share/classes/java/awt/dnd/package.html ! src/share/classes/java/awt/doc-files/AWTThreadIssues.html ! src/share/classes/java/awt/doc-files/DesktopProperties.html ! src/share/classes/java/awt/doc-files/FocusSpec.html ! src/share/classes/java/awt/doc-files/Modality.html ! src/share/classes/java/awt/event/package.html ! src/share/classes/java/awt/font/package.html ! src/share/classes/java/awt/geom/package.html ! src/share/classes/java/awt/image/package.html ! src/share/classes/java/awt/image/renderable/package.html ! src/share/classes/java/awt/package.html ! src/share/classes/java/awt/print/package.html ! src/share/classes/javax/print/attribute/package.html ! src/share/classes/javax/print/attribute/standard/package.html ! src/share/classes/javax/print/event/package.html ! src/share/classes/javax/print/package.html ! src/share/classes/javax/swing/border/package.html ! src/share/classes/javax/swing/colorchooser/package.html ! src/share/classes/javax/swing/event/package.html ! src/share/classes/javax/swing/filechooser/package.html ! src/share/classes/javax/swing/plaf/basic/package.html ! src/share/classes/javax/swing/plaf/metal/package.html ! src/share/classes/javax/swing/plaf/multi/doc-files/multi_tsc.html ! src/share/classes/javax/swing/plaf/multi/package.html ! src/share/classes/javax/swing/plaf/nimbus/doc-files/properties.html ! src/share/classes/javax/swing/plaf/nimbus/package.html ! src/share/classes/javax/swing/plaf/package.html ! src/share/classes/javax/swing/plaf/synth/doc-files/synthFileFormat.html ! src/share/classes/javax/swing/plaf/synth/package.html ! src/share/classes/javax/swing/table/package.html ! src/share/classes/javax/swing/text/html/package.html ! src/share/classes/javax/swing/text/html/parser/package.html ! src/share/classes/javax/swing/text/package.html ! src/share/classes/javax/swing/text/rtf/package.html ! src/share/classes/javax/swing/tree/package.html ! src/share/classes/javax/swing/undo/package.html Changeset: 69a17384fe22 Author: malenkov Date: 2013-10-14 13:22 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/69a17384fe22 7165112: Incomprehensible garbage in doc for RootPaneContainer Reviewed-by: alexsch ! src/share/classes/javax/swing/JApplet.java ! src/share/classes/javax/swing/JDialog.java ! src/share/classes/javax/swing/JFrame.java ! src/share/classes/javax/swing/JInternalFrame.java ! src/share/classes/javax/swing/JWindow.java ! src/share/classes/javax/swing/RootPaneContainer.java Changeset: 9f49b055e983 Author: malenkov Date: 2013-10-14 13:59 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9f49b055e983 7016396: (spec) JCK test mentioned in 6735293 is still failing Reviewed-by: alexsch ! src/share/classes/javax/swing/plaf/basic/BasicTextUI.java ! src/share/classes/javax/swing/text/AsyncBoxView.java ! src/share/classes/javax/swing/text/CompositeView.java ! src/share/classes/javax/swing/text/GlyphView.java ! src/share/classes/javax/swing/text/View.java Changeset: 54a6e22b749c Author: malenkov Date: 2013-10-14 14:13 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/54a6e22b749c 7035495: javax.swing.ImageIcon spec should be clarified Reviewed-by: alexsch ! src/share/classes/javax/swing/ImageIcon.java Changeset: 5e0ed469c36a Author: alexsch Date: 2013-10-14 18:19 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5e0ed469c36a 8005391: Floating behavior of HTMLEditorKit parser Reviewed-by: malenkov, leonidr Contributed-by: Alexander Shusherov ! src/share/classes/javax/swing/text/SimpleAttributeSet.java + test/javax/swing/text/html/8005391/bug8005391.java Changeset: 24fd0716d8d6 Author: alexsch Date: 2013-10-14 18:52 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/24fd0716d8d6 8020708: NLS mnemonics missing in SwingSet2/JInternalFrame demo Reviewed-by: malenkov, leonidr ! src/share/classes/com/sun/java/swing/plaf/motif/MotifInternalFrameTitlePane.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsInternalFrameTitlePane.java ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_it.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties ! src/share/classes/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java ! src/share/classes/javax/swing/plaf/synth/SynthInternalFrameTitlePane.java + test/javax/swing/JInternalFrame/8020708/bug8020708.java Changeset: 9546631f14ca Author: serb Date: 2013-10-14 20:11 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9546631f14ca 8019591: JCK: testICSEthrowing_fullScreen fails: no ICSE thrown Reviewed-by: art, anthony ! src/share/classes/java/awt/GraphicsDevice.java + test/java/awt/Window/WindowGCInFullScreen/WindowGCInFullScreen.java Changeset: f9548641d699 Author: serb Date: 2013-10-15 20:37 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f9548641d699 7059886: 6 JCK manual awt/Desktop tests fail with GTKLookAndFeel - GTK intialization issue Reviewed-by: anthony, art Contributed-by: alexander.zvegintsev at oracle.com + src/solaris/classes/sun/misc/GThreadHelper.java ! src/solaris/native/sun/awt/awt_UNIXToolkit.c ! src/solaris/native/sun/awt/gtk2_interface.c ! src/solaris/native/sun/awt/gtk2_interface.h ! src/solaris/native/sun/xawt/awt_Desktop.c Changeset: 89546b9be510 Author: serb Date: 2013-10-15 20:40 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/89546b9be510 8025225: Window.setAlwaysOnTop documentation should be updated Reviewed-by: anthony, art Contributed-by: alexander.zvegintsev at oracle.com ! src/share/classes/java/awt/Window.java Changeset: 229b10e97bd2 Author: bagiras Date: 2013-10-16 19:02 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/229b10e97bd2 2228674: Fix failed for CR 7162144 Reviewed-by: art, anthony ! src/share/classes/java/awt/EventDispatchThread.java ! src/share/classes/java/awt/EventQueue.java Changeset: 70242d821c66 Author: serb Date: 2013-10-17 20:54 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/70242d821c66 8022657: Add FunctionalInterface annotation to awt interfaces Reviewed-by: anthony, art ! src/share/classes/java/awt/KeyEventDispatcher.java ! src/share/classes/java/awt/KeyEventPostProcessor.java Changeset: 3c2d4569a6a3 Author: serb Date: 2013-10-17 21:22 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3c2d4569a6a3 8026356: [macosx] Found one Java-level deadlock:"AWT-EventQueue-0" && main Reviewed-by: anthony, art ! src/share/classes/java/awt/Component.java Changeset: 5334c651c7ba Author: yan Date: 2013-10-18 15:15 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5334c651c7ba 7002846: Fix for 6989505 may be incomplete Reviewed-by: anthony, art Contributed-by: Andrei Eremeev ! src/windows/classes/sun/awt/windows/WRobotPeer.java ! src/windows/native/sun/windows/awt_Robot.cpp ! src/windows/native/sun/windows/awt_Robot.h Changeset: 84ae644933b6 Author: serb Date: 2013-10-18 20:35 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/84ae644933b6 8026476: Choice does not get mouse events if it does not have enough place for popup menu Reviewed-by: anthony, serb Contributed-by: alexander.zvegintsev at oracle.com ! src/solaris/classes/sun/awt/X11/XChoicePeer.java Changeset: d72ca6dac444 Author: leonidr Date: 2013-10-22 16:45 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d72ca6dac444 8020209: [macosx] Mac OS X key event confusion for "COMMAND PLUS" Reviewed-by: anthony, serb ! src/macosx/native/sun/awt/AWTView.m ! src/macosx/native/sun/osxapp/NSApplicationAWT.m + test/java/awt/event/KeyEvent/8020209/bug8020209.java ! test/javax/swing/JMenuItem/ActionListenerCalledTwice/ActionListenerCalledTwiceTest.java Changeset: 4ad826a08e6f Author: serb Date: 2013-10-23 16:24 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4ad826a08e6f 8020851: java.awt.event.WindowEvent spec should state that WINDOW_CLOSED event may not be delivered under certain circumstances Reviewed-by: anthony, art ! src/share/classes/java/awt/event/WindowEvent.java Changeset: cd2e3c63ee42 Author: serb Date: 2013-10-24 14:32 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cd2e3c63ee42 7090424: TestGlyphVectorLayout failed automately with java.lang.StackOverflowError Reviewed-by: anthony, art ! src/solaris/classes/sun/awt/X11/XButtonPeer.java ! src/solaris/classes/sun/awt/X11/XCanvasPeer.java ! src/solaris/classes/sun/awt/X11/XCheckboxPeer.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XContentWindow.java ! src/solaris/classes/sun/awt/X11/XLabelPeer.java ! src/solaris/classes/sun/awt/X11/XListPeer.java ! src/solaris/classes/sun/awt/X11/XWindow.java + test/java/awt/Paint/ButtonRepaint.java + test/java/awt/Paint/CheckboxRepaint.java + test/java/awt/Paint/ExposeOnEDT.java + test/java/awt/Paint/LabelRepaint.java + test/java/awt/Paint/ListRepaint.java Changeset: 7c84aff91033 Author: pchelko Date: 2013-10-24 19:23 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7c84aff91033 8027030: AWT Multiple JVM DnD Test Failing on Linux (OEL and Ubuntu) and Solaris (Sparc and x64) Reviewed-by: anthony, serb ! src/share/classes/sun/awt/datatransfer/DataTransferer.java Changeset: c561db53a24c Author: pchelko Date: 2013-10-24 19:50 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c561db53a24c 8027025: [macosx] getLocationOnScreen returns 0 if parent invisible Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java + test/java/awt/Window/8027025/Test8027025.java Changeset: 6fe5443c3dde Author: alitvinov Date: 2013-10-25 13:41 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6fe5443c3dde 8027066: XMLDecoder in java 7 cannot properly deserialize object arrays Reviewed-by: alexsch, malenkov Contributed-by: anton.nashatyrev at oracle.com ! src/share/classes/com/sun/beans/decoder/ArrayElementHandler.java + test/java/beans/XMLEncoder/Test8027066.java Changeset: 75ae2a980db5 Author: malenkov Date: 2013-10-25 16:42 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/75ae2a980db5 8026705: [TEST_BUG] java/beans/Introspector/TestTypeResolver.java failed Reviewed-by: art, jfranck ! test/java/beans/Introspector/TestTypeResolver.java Changeset: dab1d3798016 Author: serb Date: 2013-10-25 19:51 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/dab1d3798016 7172770: Default Toolkit implementation return null value for property "awt.dynamicLayoutSupported" Reviewed-by: anthony, art ! src/share/classes/java/awt/Toolkit.java Changeset: 162c57b874d4 Author: lana Date: 2013-10-25 10:39 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/162c57b874d4 Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m - src/share/classes/com/sun/jdi/connect/package.html - src/share/classes/com/sun/jdi/connect/spi/package.html - src/share/classes/com/sun/jdi/event/package.html - src/share/classes/com/sun/jdi/package.html - src/share/classes/com/sun/jdi/request/package.html - src/share/classes/com/sun/management/package.html - src/share/classes/com/sun/tools/attach/package.html - src/share/classes/com/sun/tools/attach/spi/package.html - src/share/classes/com/sun/tools/jconsole/package.html ! src/share/classes/java/awt/datatransfer/DataFlavor.java - src/share/classes/java/net/HttpURLPermission.java ! src/share/classes/sun/awt/AppContext.java - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 - test/com/oracle/security/ucrypto/TestAES.java - test/com/oracle/security/ucrypto/TestDigest.java - test/com/oracle/security/ucrypto/TestRSA.java - test/com/oracle/security/ucrypto/UcryptoTest.java - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 Changeset: 55cab2211ae9 Author: ant Date: 2013-10-29 16:35 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/55cab2211ae9 8027157: [SwingNode] needs explicit expose for JWindow Reviewed-by: art, anthony ! src/windows/classes/sun/awt/windows/WComponentPeer.java ! src/windows/classes/sun/awt/windows/WLightweightFramePeer.java ! src/windows/classes/sun/awt/windows/WWindowPeer.java Changeset: bedc29a6d074 Author: malenkov Date: 2013-10-29 17:01 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bedc29a6d074 8022746: List of spelling errors in API doc Reviewed-by: alexsch, smarks ! src/macosx/bundle/JavaAppLauncher/src/JVMArgs.m ! src/macosx/classes/com/apple/laf/AquaLookAndFeel.java ! src/macosx/classes/com/apple/laf/AquaMenuPainter.java ! src/macosx/classes/com/apple/laf/AquaTabbedPaneCopyFromBasicUI.java ! src/macosx/classes/com/apple/laf/AquaTreeUI.java ! src/macosx/classes/java/net/DefaultInterface.java ! src/macosx/classes/java/util/prefs/MacOSXPreferencesFile.java ! src/macosx/classes/sun/font/CFontManager.java ! src/macosx/native/sun/awt/AWTView.m ! src/macosx/native/sun/awt/CTextPipe.m ! src/share/back/commonRef.c ! src/share/back/eventFilter.c ! src/share/back/util.c ! src/share/classes/com/sun/beans/decoder/AccessorElementHandler.java ! src/share/classes/com/sun/beans/decoder/ArrayElementHandler.java ! src/share/classes/com/sun/beans/decoder/BooleanElementHandler.java ! src/share/classes/com/sun/beans/decoder/ByteElementHandler.java ! src/share/classes/com/sun/beans/decoder/CharElementHandler.java ! src/share/classes/com/sun/beans/decoder/ClassElementHandler.java ! src/share/classes/com/sun/beans/decoder/DoubleElementHandler.java ! src/share/classes/com/sun/beans/decoder/ElementHandler.java ! src/share/classes/com/sun/beans/decoder/FalseElementHandler.java ! src/share/classes/com/sun/beans/decoder/FieldElementHandler.java ! src/share/classes/com/sun/beans/decoder/FloatElementHandler.java ! src/share/classes/com/sun/beans/decoder/IntElementHandler.java ! src/share/classes/com/sun/beans/decoder/JavaElementHandler.java ! src/share/classes/com/sun/beans/decoder/LongElementHandler.java ! src/share/classes/com/sun/beans/decoder/MethodElementHandler.java ! src/share/classes/com/sun/beans/decoder/NewElementHandler.java ! src/share/classes/com/sun/beans/decoder/NullElementHandler.java ! src/share/classes/com/sun/beans/decoder/ObjectElementHandler.java ! src/share/classes/com/sun/beans/decoder/PropertyElementHandler.java ! src/share/classes/com/sun/beans/decoder/ShortElementHandler.java ! src/share/classes/com/sun/beans/decoder/StringElementHandler.java ! src/share/classes/com/sun/beans/decoder/TrueElementHandler.java ! src/share/classes/com/sun/beans/decoder/VarElementHandler.java ! src/share/classes/com/sun/beans/decoder/VoidElementHandler.java ! src/share/classes/com/sun/crypto/provider/PBECipherCore.java ! src/share/classes/com/sun/crypto/provider/PBES1Core.java ! src/share/classes/com/sun/crypto/provider/PBEWithMD5AndDESCipher.java ! src/share/classes/com/sun/crypto/provider/PBEWithMD5AndTripleDESCipher.java ! src/share/classes/com/sun/imageio/plugins/common/StandardMetadataFormat.java ! src/share/classes/com/sun/imageio/plugins/jpeg/JFIFMarkerSegment.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKColorChooserPanel.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsGraphicsUtils.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsTextFieldUI.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsTextUI.java ! src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java ! src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java ! src/share/classes/com/sun/jdi/connect/ListeningConnector.java ! src/share/classes/com/sun/jdi/connect/spi/TransportService.java ! src/share/classes/com/sun/jmx/mbeanserver/DefaultMXBeanMappingFactory.java ! src/share/classes/com/sun/jmx/mbeanserver/Introspector.java ! src/share/classes/com/sun/jmx/snmp/IPAcl/TokenMgrError.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpErrorHandlerAgent.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpMibAgent.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpMibAgentMBean.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpMibGroup.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpMibTable.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpRequestTree.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpTableSupport.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpAdaptorServerMBean.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpRequestHandler.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpSubBulkRequestHandler.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpSubNextRequestHandler.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpSubRequestHandler.java ! src/share/classes/com/sun/jndi/ldap/Connection.java ! src/share/classes/com/sun/jndi/ldap/Filter.java ! src/share/classes/com/sun/jndi/ldap/LdapCtx.java ! src/share/classes/com/sun/jndi/ldap/LdapName.java ! src/share/classes/com/sun/jndi/toolkit/ctx/PartialCompositeContext.java ! src/share/classes/com/sun/jndi/toolkit/dir/ContextEnumerator.java ! src/share/classes/com/sun/media/sound/AbstractMidiDevice.java ! src/share/classes/com/sun/media/sound/AudioSynthesizerPropertyInfo.java ! src/share/classes/com/sun/media/sound/DirectAudioDevice.java ! src/share/classes/com/sun/media/sound/SoftMixingSourceDataLine.java ! src/share/classes/com/sun/net/httpserver/Headers.java ! src/share/classes/com/sun/net/httpserver/HttpExchange.java ! src/share/classes/com/sun/net/ssl/internal/ssl/Provider.java ! src/share/classes/com/sun/org/apache/xml/internal/security/encryption/EncryptionMethod.java ! src/share/classes/com/sun/org/apache/xml/internal/security/signature/Reference.java ! src/share/classes/com/sun/org/apache/xml/internal/security/signature/XMLSignature.java ! src/share/classes/com/sun/rowset/CachedRowSetImpl.java ! src/share/classes/com/sun/rowset/FilteredRowSetImpl.java ! src/share/classes/com/sun/rowset/JdbcRowSetImpl.java ! src/share/classes/com/sun/rowset/WebRowSetImpl.java ! src/share/classes/com/sun/rowset/internal/SyncResolverImpl.java ! src/share/classes/com/sun/rowset/package.html ! src/share/classes/com/sun/security/auth/module/LdapLoginModule.java ! src/share/classes/com/sun/security/sasl/ntlm/NTLMServer.java ! src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java ! src/share/classes/com/sun/tools/hat/resources/hat.js ! src/share/classes/com/sun/tools/jdi/SocketAttachingConnector.java ! src/share/classes/com/sun/tools/jdi/SocketListeningConnector.java ! src/share/classes/com/sun/tools/jdi/ThreadListener.java ! src/share/classes/com/sun/tools/jdi/ThreadReferenceImpl.java ! src/share/classes/java/awt/AWTEventMulticaster.java ! src/share/classes/java/awt/AlphaComposite.java ! src/share/classes/java/awt/BasicStroke.java ! src/share/classes/java/awt/BorderLayout.java ! src/share/classes/java/awt/CheckboxMenuItem.java ! src/share/classes/java/awt/Choice.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Container.java ! src/share/classes/java/awt/Dialog.java ! src/share/classes/java/awt/Event.java ! src/share/classes/java/awt/Font.java ! src/share/classes/java/awt/Graphics.java ! src/share/classes/java/awt/Graphics2D.java ! src/share/classes/java/awt/GraphicsEnvironment.java ! src/share/classes/java/awt/GridBagLayout.java ! src/share/classes/java/awt/KeyboardFocusManager.java ! src/share/classes/java/awt/List.java ! src/share/classes/java/awt/MediaTracker.java ! src/share/classes/java/awt/MenuComponent.java ! src/share/classes/java/awt/MultipleGradientPaintContext.java ! src/share/classes/java/awt/Polygon.java ! src/share/classes/java/awt/PopupMenu.java ! src/share/classes/java/awt/RenderingHints.java ! src/share/classes/java/awt/ScrollPane.java ! src/share/classes/java/awt/ScrollPaneAdjustable.java ! src/share/classes/java/awt/Shape.java ! src/share/classes/java/awt/TextComponent.java ! src/share/classes/java/awt/TextField.java ! src/share/classes/java/awt/Toolkit.java ! src/share/classes/java/awt/Window.java ! src/share/classes/java/awt/datatransfer/FlavorMap.java ! src/share/classes/java/awt/datatransfer/MimeTypeParameterList.java ! src/share/classes/java/awt/dnd/DragGestureListener.java ! src/share/classes/java/awt/dnd/DragGestureRecognizer.java ! src/share/classes/java/awt/dnd/DragSourceContext.java ! src/share/classes/java/awt/dnd/DragSourceEvent.java ! src/share/classes/java/awt/dnd/DropTarget.java ! src/share/classes/java/awt/dnd/InvalidDnDOperationException.java ! src/share/classes/java/awt/event/ActionEvent.java ! src/share/classes/java/awt/event/KeyEvent.java ! src/share/classes/java/awt/font/FontRenderContext.java ! src/share/classes/java/awt/font/GlyphMetrics.java ! src/share/classes/java/awt/font/GlyphVector.java ! src/share/classes/java/awt/font/OpenType.java ! src/share/classes/java/awt/font/TextLayout.java ! src/share/classes/java/awt/font/TransformAttribute.java ! src/share/classes/java/awt/geom/AffineTransform.java ! src/share/classes/java/awt/geom/Line2D.java ! src/share/classes/java/awt/geom/Path2D.java ! src/share/classes/java/awt/geom/QuadCurve2D.java ! src/share/classes/java/awt/im/InputMethodRequests.java ! src/share/classes/java/awt/image/BandedSampleModel.java ! src/share/classes/java/awt/image/BufferStrategy.java ! src/share/classes/java/awt/image/BufferedImage.java ! src/share/classes/java/awt/image/ComponentColorModel.java ! src/share/classes/java/awt/image/ComponentSampleModel.java ! src/share/classes/java/awt/image/ImageConsumer.java ! src/share/classes/java/awt/image/IndexColorModel.java ! src/share/classes/java/awt/image/PixelInterleavedSampleModel.java ! src/share/classes/java/awt/image/renderable/RenderableImage.java ! src/share/classes/java/awt/image/renderable/RenderableImageOp.java ! src/share/classes/java/beans/AppletInitializer.java ! src/share/classes/java/beans/DefaultPersistenceDelegate.java ! src/share/classes/java/beans/EventHandler.java ! src/share/classes/java/beans/MethodDescriptor.java ! src/share/classes/java/beans/PropertyDescriptor.java ! src/share/classes/java/beans/PropertyEditorSupport.java ! src/share/classes/java/beans/beancontext/BeanContextChildSupport.java ! src/share/classes/java/beans/beancontext/BeanContextServiceRevokedListener.java ! src/share/classes/java/beans/beancontext/BeanContextServicesSupport.java ! src/share/classes/java/beans/beancontext/BeanContextSupport.java ! src/share/classes/java/io/File.java ! src/share/classes/java/io/ObjectStreamConstants.java ! src/share/classes/java/io/PrintStream.java ! src/share/classes/java/lang/invoke/MethodType.java ! src/share/classes/java/lang/management/CompilationMXBean.java ! src/share/classes/java/lang/management/MemoryPoolMXBean.java ! src/share/classes/java/lang/management/ThreadInfo.java ! src/share/classes/java/lang/management/ThreadMXBean.java ! src/share/classes/java/net/Authenticator.java ! src/share/classes/java/net/CookieManager.java ! src/share/classes/java/net/CookieStore.java ! src/share/classes/java/net/DatagramSocket.java ! src/share/classes/java/net/InetSocketAddress.java ! src/share/classes/java/net/InterfaceAddress.java ! src/share/classes/java/net/JarURLConnection.java ! src/share/classes/java/net/ServerSocket.java ! src/share/classes/java/net/SocksSocketImpl.java ! src/share/classes/java/net/StandardSocketOptions.java ! src/share/classes/java/net/URL.java ! src/share/classes/java/net/URLConnection.java ! src/share/classes/java/net/URLDecoder.java ! src/share/classes/java/net/URLEncoder.java ! src/share/classes/java/nio/channels/AsynchronousChannelGroup.java ! src/share/classes/java/nio/channels/DatagramChannel.java ! src/share/classes/java/nio/channels/MembershipKey.java ! src/share/classes/java/nio/channels/package-info.java ! src/share/classes/java/nio/charset/Charset.java ! src/share/classes/java/nio/file/attribute/UserDefinedFileAttributeView.java ! src/share/classes/java/rmi/MarshalledObject.java ! src/share/classes/java/security/AccessControlException.java ! src/share/classes/java/security/DigestOutputStream.java ! src/share/classes/java/security/KeyStore.java ! src/share/classes/java/security/ProtectionDomain.java ! src/share/classes/java/security/Security.java ! src/share/classes/java/security/UnresolvedPermission.java ! src/share/classes/java/security/cert/CertificateRevokedException.java ! src/share/classes/java/security/spec/ECFieldF2m.java ! src/share/classes/java/sql/Array.java ! src/share/classes/java/sql/BatchUpdateException.java ! src/share/classes/java/sql/Blob.java ! src/share/classes/java/sql/CallableStatement.java ! src/share/classes/java/sql/Clob.java ! src/share/classes/java/sql/Connection.java ! src/share/classes/java/sql/DataTruncation.java ! src/share/classes/java/sql/DatabaseMetaData.java ! src/share/classes/java/sql/DriverManager.java ! src/share/classes/java/sql/DriverPropertyInfo.java ! src/share/classes/java/sql/PreparedStatement.java ! src/share/classes/java/sql/ResultSet.java ! src/share/classes/java/sql/SQLException.java ! src/share/classes/java/sql/SQLFeatureNotSupportedException.java ! src/share/classes/java/sql/SQLIntegrityConstraintViolationException.java ! src/share/classes/java/sql/SQLInvalidAuthorizationSpecException.java ! src/share/classes/java/sql/SQLNonTransientConnectionException.java ! src/share/classes/java/sql/SQLNonTransientException.java ! src/share/classes/java/sql/SQLRecoverableException.java ! src/share/classes/java/sql/SQLSyntaxErrorException.java ! src/share/classes/java/sql/SQLTimeoutException.java ! src/share/classes/java/sql/SQLTransactionRollbackException.java ! src/share/classes/java/sql/SQLTransientConnectionException.java ! src/share/classes/java/sql/SQLTransientException.java ! src/share/classes/java/sql/SQLWarning.java ! src/share/classes/java/sql/SQLXML.java ! src/share/classes/java/sql/Statement.java ! src/share/classes/java/sql/Struct.java ! src/share/classes/java/sql/package.html ! src/share/classes/java/text/BreakIterator.java ! src/share/classes/java/text/ChoiceFormat.java ! src/share/classes/java/text/DigitList.java ! src/share/classes/java/text/FieldPosition.java ! src/share/classes/java/text/Format.java ! src/share/classes/java/text/RuleBasedCollator.java ! src/share/classes/java/time/chrono/ChronoZonedDateTime.java ! src/share/classes/java/time/zone/ZoneRules.java ! src/share/classes/java/util/Arrays.java ! src/share/classes/java/util/Locale.java ! src/share/classes/java/util/MissingFormatWidthException.java ! src/share/classes/java/util/PriorityQueue.java ! src/share/classes/java/util/ResourceBundle.java ! src/share/classes/java/util/concurrent/ArrayBlockingQueue.java ! src/share/classes/java/util/concurrent/ConcurrentSkipListMap.java ! src/share/classes/java/util/concurrent/ExecutorCompletionService.java ! src/share/classes/java/util/jar/Manifest.java ! src/share/classes/java/util/regex/Pattern.java ! src/share/classes/javax/accessibility/AccessibleContext.java ! src/share/classes/javax/accessibility/AccessibleText.java ! src/share/classes/javax/crypto/NullCipher.java ! src/share/classes/javax/crypto/NullCipherSpi.java ! src/share/classes/javax/imageio/IIOParam.java ! src/share/classes/javax/imageio/ImageIO.java ! src/share/classes/javax/imageio/ImageReader.java ! src/share/classes/javax/imageio/ImageWriteParam.java ! src/share/classes/javax/imageio/ImageWriter.java ! src/share/classes/javax/imageio/event/IIOReadProgressListener.java ! src/share/classes/javax/imageio/event/IIOReadUpdateListener.java ! src/share/classes/javax/imageio/event/IIOReadWarningListener.java ! src/share/classes/javax/imageio/event/IIOWriteWarningListener.java ! src/share/classes/javax/imageio/metadata/IIOMetadata.java ! src/share/classes/javax/imageio/metadata/IIOMetadataFormat.java ! src/share/classes/javax/imageio/metadata/IIOMetadataFormatImpl.java ! src/share/classes/javax/imageio/metadata/doc-files/standard_metadata.html ! src/share/classes/javax/imageio/spi/ImageReaderSpi.java ! src/share/classes/javax/imageio/spi/ImageReaderWriterSpi.java ! src/share/classes/javax/imageio/stream/ImageInputStream.java ! src/share/classes/javax/management/relation/RelationService.java ! src/share/classes/javax/management/relation/RelationServiceMBean.java ! src/share/classes/javax/management/remote/rmi/package.html ! src/share/classes/javax/naming/Binding.java ! src/share/classes/javax/naming/InsufficientResourcesException.java ! src/share/classes/javax/naming/ldap/LdapName.java ! src/share/classes/javax/naming/ldap/Rdn.java ! src/share/classes/javax/net/ssl/SSLPeerUnverifiedException.java ! src/share/classes/javax/net/ssl/SSLSocket.java ! src/share/classes/javax/print/CancelablePrintJob.java ! src/share/classes/javax/print/DocFlavor.java ! src/share/classes/javax/print/DocPrintJob.java ! src/share/classes/javax/print/MultiDoc.java ! src/share/classes/javax/print/PrintService.java ! src/share/classes/javax/print/attribute/standard/MediaTray.java ! src/share/classes/javax/print/attribute/standard/PresentationDirection.java ! src/share/classes/javax/print/attribute/standard/PrinterIsAcceptingJobs.java ! src/share/classes/javax/print/attribute/standard/PrinterStateReason.java ! src/share/classes/javax/print/package.html ! src/share/classes/javax/script/AbstractScriptEngine.java ! src/share/classes/javax/script/CompiledScript.java ! src/share/classes/javax/script/Invocable.java ! src/share/classes/javax/script/ScriptEngine.java ! src/share/classes/javax/script/ScriptEngineFactory.java ! src/share/classes/javax/security/sasl/RealmChoiceCallback.java ! src/share/classes/javax/security/sasl/Sasl.java ! src/share/classes/javax/security/sasl/SaslClient.java ! src/share/classes/javax/security/sasl/SaslException.java ! src/share/classes/javax/smartcardio/CardChannel.java ! src/share/classes/javax/smartcardio/CardTerminal.java ! src/share/classes/javax/sound/midi/MidiDevice.java ! src/share/classes/javax/sound/midi/MidiMessage.java ! src/share/classes/javax/sound/midi/MidiSystem.java ! src/share/classes/javax/sound/midi/ShortMessage.java ! src/share/classes/javax/sound/midi/Soundbank.java ! src/share/classes/javax/sound/midi/Synthesizer.java ! src/share/classes/javax/sound/sampled/AudioFormat.java ! src/share/classes/javax/sound/sampled/AudioSystem.java ! src/share/classes/javax/sound/sampled/ReverbType.java ! src/share/classes/javax/sql/PooledConnection.java ! src/share/classes/javax/sql/RowSet.java ! src/share/classes/javax/sql/StatementEvent.java ! src/share/classes/javax/sql/rowset/BaseRowSet.java ! src/share/classes/javax/sql/rowset/CachedRowSet.java ! src/share/classes/javax/sql/rowset/JoinRowSet.java ! src/share/classes/javax/sql/rowset/Joinable.java ! src/share/classes/javax/sql/rowset/Predicate.java ! src/share/classes/javax/sql/rowset/package.html ! src/share/classes/javax/sql/rowset/spi/SyncFactory.java ! src/share/classes/javax/sql/rowset/spi/SyncResolver.java ! src/share/classes/javax/sql/rowset/spi/TransactionalWriter.java ! src/share/classes/javax/sql/rowset/spi/XmlReader.java ! src/share/classes/javax/sql/rowset/spi/XmlWriter.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/BoxLayout.java ! src/share/classes/javax/swing/DefaultListSelectionModel.java ! src/share/classes/javax/swing/DefaultRowSorter.java ! src/share/classes/javax/swing/GroupLayout.java ! src/share/classes/javax/swing/JApplet.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JDialog.java ! src/share/classes/javax/swing/JFileChooser.java ! src/share/classes/javax/swing/JFormattedTextField.java ! src/share/classes/javax/swing/JFrame.java ! src/share/classes/javax/swing/JInternalFrame.java ! src/share/classes/javax/swing/JLabel.java ! src/share/classes/javax/swing/JLayeredPane.java ! src/share/classes/javax/swing/JMenu.java ! src/share/classes/javax/swing/JPasswordField.java ! src/share/classes/javax/swing/JPopupMenu.java ! src/share/classes/javax/swing/JRootPane.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JSpinner.java ! src/share/classes/javax/swing/JSplitPane.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/JViewport.java ! src/share/classes/javax/swing/JWindow.java ! src/share/classes/javax/swing/LookAndFeel.java ! src/share/classes/javax/swing/ProgressMonitor.java ! src/share/classes/javax/swing/RepaintManager.java ! src/share/classes/javax/swing/ScrollPaneConstants.java ! src/share/classes/javax/swing/SpinnerDateModel.java ! src/share/classes/javax/swing/SpinnerModel.java ! src/share/classes/javax/swing/SpinnerNumberModel.java ! src/share/classes/javax/swing/SpringLayout.java ! src/share/classes/javax/swing/SwingUtilities.java ! src/share/classes/javax/swing/ToolTipManager.java ! src/share/classes/javax/swing/TransferHandler.java ! src/share/classes/javax/swing/UIManager.java ! src/share/classes/javax/swing/border/TitledBorder.java ! src/share/classes/javax/swing/event/DocumentEvent.java ! src/share/classes/javax/swing/event/HyperlinkEvent.java ! src/share/classes/javax/swing/event/TableModelEvent.java ! src/share/classes/javax/swing/event/TreeModelEvent.java ! src/share/classes/javax/swing/filechooser/FileSystemView.java ! src/share/classes/javax/swing/plaf/ComboBoxUI.java ! src/share/classes/javax/swing/plaf/basic/BasicBorders.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java ! src/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java ! src/share/classes/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java ! src/share/classes/javax/swing/plaf/basic/BasicInternalFrameUI.java ! src/share/classes/javax/swing/plaf/basic/BasicLookAndFeel.java ! src/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java ! src/share/classes/javax/swing/plaf/basic/BasicMenuUI.java ! src/share/classes/javax/swing/plaf/basic/BasicOptionPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicProgressBarUI.java ! src/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java ! src/share/classes/javax/swing/plaf/basic/BasicScrollPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSliderUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSplitPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTableUI.java ! src/share/classes/javax/swing/plaf/basic/BasicToolBarUI.java ! src/share/classes/javax/swing/plaf/basic/BasicToolTipUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTreeUI.java ! src/share/classes/javax/swing/plaf/metal/DefaultMetalTheme.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/share/classes/javax/swing/plaf/metal/MetalRootPaneUI.java ! src/share/classes/javax/swing/plaf/metal/MetalSliderUI.java ! src/share/classes/javax/swing/plaf/metal/MetalToolBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalTreeUI.java ! src/share/classes/javax/swing/plaf/nimbus/AbstractRegionPainter.java ! src/share/classes/javax/swing/plaf/nimbus/LoweredBorder.java ! src/share/classes/javax/swing/plaf/nimbus/NimbusStyle.java ! src/share/classes/javax/swing/plaf/synth/SynthLookAndFeel.java ! src/share/classes/javax/swing/plaf/synth/doc-files/componentProperties.html ! src/share/classes/javax/swing/table/DefaultTableColumnModel.java ! src/share/classes/javax/swing/table/JTableHeader.java ! src/share/classes/javax/swing/table/TableColumn.java ! src/share/classes/javax/swing/table/TableColumnModel.java ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/javax/swing/text/AbstractWriter.java ! src/share/classes/javax/swing/text/AsyncBoxView.java ! src/share/classes/javax/swing/text/BoxView.java ! src/share/classes/javax/swing/text/DefaultFormatter.java ! src/share/classes/javax/swing/text/DefaultHighlighter.java ! src/share/classes/javax/swing/text/DefaultStyledDocument.java ! src/share/classes/javax/swing/text/Document.java ! src/share/classes/javax/swing/text/DocumentFilter.java ! src/share/classes/javax/swing/text/ElementIterator.java ! src/share/classes/javax/swing/text/FlowView.java ! src/share/classes/javax/swing/text/GapContent.java ! src/share/classes/javax/swing/text/GapVector.java ! src/share/classes/javax/swing/text/InternationalFormatter.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/NumberFormatter.java ! src/share/classes/javax/swing/text/ParagraphView.java ! src/share/classes/javax/swing/text/StyleConstants.java ! src/share/classes/javax/swing/text/StyleContext.java ! src/share/classes/javax/swing/text/TableView.java ! src/share/classes/javax/swing/text/View.java ! src/share/classes/javax/swing/text/WrappedPlainView.java ! src/share/classes/javax/swing/text/ZoneView.java ! src/share/classes/javax/swing/text/html/AccessibleHTML.java ! src/share/classes/javax/swing/text/html/BlockView.java ! src/share/classes/javax/swing/text/html/CSS.java ! src/share/classes/javax/swing/text/html/CSSParser.java ! src/share/classes/javax/swing/text/html/FormSubmitEvent.java ! src/share/classes/javax/swing/text/html/FormView.java ! src/share/classes/javax/swing/text/html/FrameSetView.java ! src/share/classes/javax/swing/text/html/HTML.java ! src/share/classes/javax/swing/text/html/HTMLDocument.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/HTMLFrameHyperlinkEvent.java ! src/share/classes/javax/swing/text/html/HTMLWriter.java ! src/share/classes/javax/swing/text/html/OptionListModel.java ! src/share/classes/javax/swing/text/html/ParagraphView.java ! src/share/classes/javax/swing/text/html/StyleSheet.java ! src/share/classes/javax/swing/text/html/TableView.java ! src/share/classes/javax/swing/text/html/parser/ContentModel.java ! src/share/classes/javax/swing/text/html/parser/DocumentParser.java ! src/share/classes/javax/swing/text/html/parser/Element.java ! src/share/classes/javax/swing/text/html/parser/Parser.java ! src/share/classes/javax/swing/tree/AbstractLayoutCache.java ! src/share/classes/javax/swing/tree/DefaultTreeCellEditor.java ! src/share/classes/javax/swing/tree/DefaultTreeModel.java ! src/share/classes/javax/swing/tree/DefaultTreeSelectionModel.java ! src/share/classes/javax/swing/tree/FixedHeightLayoutCache.java ! src/share/classes/javax/swing/tree/TreeModel.java ! src/share/classes/javax/swing/tree/TreeSelectionModel.java ! src/share/classes/javax/swing/tree/VariableHeightLayoutCache.java ! src/share/classes/javax/xml/crypto/KeySelector.java ! src/share/classes/javax/xml/crypto/MarshalException.java ! src/share/classes/javax/xml/crypto/dsig/TransformException.java ! src/share/classes/javax/xml/crypto/dsig/XMLSignatureException.java ! src/share/classes/jdi-overview.html ! src/share/classes/jdk/internal/org/objectweb/asm/Frame.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Analyzer.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Interpreter.java ! src/share/classes/jdk/internal/org/xml/sax/EntityResolver.java ! src/share/classes/jdk/internal/util/xml/XMLStreamException.java ! src/share/classes/jdk/internal/util/xml/impl/Parser.java ! src/share/classes/org/ietf/jgss/GSSContext.java ! src/share/classes/org/ietf/jgss/GSSCredential.java ! src/share/classes/org/ietf/jgss/GSSException.java ! src/share/classes/org/ietf/jgss/GSSManager.java ! src/share/classes/org/ietf/jgss/GSSName.java ! src/share/classes/org/ietf/jgss/package.html ! src/share/classes/sun/applet/AppletSecurity.java ! src/share/classes/sun/awt/FontConfiguration.java ! src/share/classes/sun/awt/GlobalCursorManager.java ! src/share/classes/sun/awt/shell/ShellFolderManager.java ! src/share/classes/sun/dc/DuctusRenderingEngine.java ! src/share/classes/sun/font/ExtendedTextSourceLabel.java ! src/share/classes/sun/font/FileFontStrike.java ! src/share/classes/sun/font/FontManager.java ! src/share/classes/sun/font/FontRunIterator.java ! src/share/classes/sun/font/LayoutPathImpl.java ! src/share/classes/sun/font/ScriptRun.java ! src/share/classes/sun/font/StrikeCache.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/font/TrueTypeFont.java ! src/share/classes/sun/font/Type1Font.java ! src/share/classes/sun/java2d/SurfaceDataProxy.java ! src/share/classes/sun/java2d/loops/ProcessPath.java ! src/share/classes/sun/java2d/opengl/OGLBlitLoops.java ! src/share/classes/sun/java2d/pipe/BufferedMaskFill.java ! src/share/classes/sun/java2d/pipe/BufferedRenderPipe.java ! src/share/classes/sun/java2d/pipe/BufferedTextPipe.java ! src/share/classes/sun/java2d/pipe/DrawImage.java ! src/share/classes/sun/java2d/pipe/RenderingEngine.java ! src/share/classes/sun/java2d/pipe/hw/AccelDeviceEventNotifier.java ! src/share/classes/sun/java2d/pisces/PiscesRenderingEngine.java ! src/share/classes/sun/jvmstat/perfdata/monitor/PerfDataBufferImpl.java ! src/share/classes/sun/jvmstat/perfdata/monitor/protocol/file/FileMonitoredVm.java ! src/share/classes/sun/management/counter/perf/InstrumentationException.java ! src/share/classes/sun/management/counter/perf/PerfDataType.java ! src/share/classes/sun/misc/CRC16.java ! src/share/classes/sun/misc/CharacterDecoder.java ! src/share/classes/sun/misc/PerformanceLogger.java ! src/share/classes/sun/net/NetworkClient.java ! src/share/classes/sun/net/TelnetOutputStream.java ! src/share/classes/sun/net/ftp/FtpClient.java ! src/share/classes/sun/net/ftp/impl/FtpClient.java ! src/share/classes/sun/net/httpserver/Request.java ! src/share/classes/sun/net/idn/StringPrep.java ! src/share/classes/sun/net/smtp/SmtpProtocolException.java ! src/share/classes/sun/net/www/http/ChunkedInputStream.java ! src/share/classes/sun/net/www/http/HttpClient.java ! src/share/classes/sun/net/www/http/PosterOutputStream.java ! src/share/classes/sun/net/www/protocol/http/AuthCacheValue.java ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java ! src/share/classes/sun/print/PSPathGraphics.java ! src/share/classes/sun/print/PSPrinterJob.java ! src/share/classes/sun/print/PathGraphics.java ! src/share/classes/sun/print/PrintJob2D.java ! src/share/classes/sun/print/RasterPrinterJob.java ! src/share/classes/sun/rmi/rmic/RemoteClass.java ! src/share/classes/sun/rmi/rmic/Util.java ! src/share/classes/sun/rmi/rmic/newrmic/jrmp/StubSkeletonWriter.java ! src/share/classes/sun/rmi/runtime/Log.java ! src/share/classes/sun/rmi/server/Activation.java ! src/share/classes/sun/rmi/transport/ObjectTable.java ! src/share/classes/sun/rmi/transport/tcp/ConnectionMultiplexer.java ! src/share/classes/sun/rmi/transport/tcp/MultiplexOutputStream.java ! src/share/classes/sun/rmi/transport/tcp/TCPChannel.java ! src/share/classes/sun/security/jca/GetInstance.java ! src/share/classes/sun/security/jgss/krb5/Krb5Context.java ! src/share/classes/sun/security/jgss/krb5/Krb5NameElement.java ! src/share/classes/sun/security/jgss/krb5/MessageToken.java ! src/share/classes/sun/security/jgss/spi/GSSContextSpi.java ! src/share/classes/sun/security/jgss/spnego/SpNegoContext.java ! src/share/classes/sun/security/krb5/Config.java ! src/share/classes/sun/security/krb5/KdcComm.java ! src/share/classes/sun/security/krb5/Realm.java ! src/share/classes/sun/security/krb5/internal/CredentialsUtil.java ! src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java ! src/share/classes/sun/security/krb5/internal/crypto/DesCbcEType.java ! src/share/classes/sun/security/pkcs11/P11DHKeyFactory.java ! src/share/classes/sun/security/pkcs11/P11DSAKeyFactory.java ! src/share/classes/sun/security/pkcs11/P11ECKeyFactory.java ! src/share/classes/sun/security/pkcs11/P11RSAKeyFactory.java ! src/share/classes/sun/security/pkcs11/wrapper/PKCS11.java ! src/share/classes/sun/security/provider/DSA.java ! src/share/classes/sun/security/provider/certpath/AdjacencyList.java ! src/share/classes/sun/security/provider/certpath/ForwardBuilder.java ! src/share/classes/sun/security/provider/certpath/ReverseBuilder.java ! src/share/classes/sun/security/rsa/RSAKeyPairGenerator.java ! src/share/classes/sun/security/ssl/HandshakeOutStream.java ! src/share/classes/sun/security/ssl/Handshaker.java ! src/share/classes/sun/security/ssl/RSASignature.java ! src/share/classes/sun/security/ssl/Record.java ! src/share/classes/sun/security/ssl/SSLContextImpl.java ! src/share/classes/sun/security/ssl/SSLEngineImpl.java ! src/share/classes/sun/security/ssl/SSLSocketImpl.java ! src/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java ! src/share/classes/sun/security/ssl/SunJSSE.java ! src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java ! src/share/classes/sun/security/ssl/X509KeyManagerImpl.java ! src/share/classes/sun/security/tools/jarsigner/Main.java ! src/share/classes/sun/security/util/HostnameChecker.java ! src/share/classes/sun/security/x509/AlgIdDSA.java ! src/share/classes/sun/swing/plaf/synth/DefaultSynthStyle.java ! src/share/classes/sun/swing/plaf/synth/Paint9Painter.java ! src/share/classes/sun/text/normalizer/ReplaceableUCharacterIterator.java ! src/share/classes/sun/text/resources/th/CollationData_th.java ! src/share/classes/sun/tools/jar/Main.java ! src/share/classes/sun/tools/jconsole/BorderedComponent.java ! src/share/classes/sun/tools/jconsole/inspector/XTextField.java ! src/share/classes/sun/tools/jinfo/JInfo.java ! src/share/classes/sun/tools/jmap/JMap.java ! src/share/classes/sun/tools/jstat/ColumnFormat.java ! src/share/classes/sun/tools/jstat/resources/jstat_options ! src/share/classes/sun/tools/tree/ExprExpression.java ! src/share/classes/sun/tools/tree/FieldExpression.java ! src/share/classes/sun/util/locale/provider/RuleBasedBreakIterator.java ! src/share/classes/sun/util/logging/PlatformLogger.java ! src/share/demo/jfc/Font2DTest/FontPanel.java ! src/share/demo/jfc/TableExample/TableExample4.java ! src/share/demo/jvmti/hprof/debug_malloc.c ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java ! src/share/javavm/export/jvm.h ! src/share/native/com/sun/java/util/jar/pack/zip.cpp ! src/share/native/com/sun/media/sound/PlatformMidi.h ! src/share/native/common/jni_util.h ! src/share/native/java/lang/fdlibm/src/k_rem_pio2.c ! src/share/native/java/util/zip/zip_util.c ! src/share/native/sun/awt/image/cvutils/img_dcm.h ! src/share/native/sun/awt/image/cvutils/img_replscale.h ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c ! src/share/native/sun/awt/image/jpeg/jpegdecoder.c ! src/share/native/sun/awt/libpng/CHANGES ! src/share/native/sun/awt/libpng/png.h ! src/share/native/sun/awt/libpng/pngconf.h ! src/share/native/sun/awt/libpng/pngpriv.h ! src/share/native/sun/awt/libpng/pngrutil.c ! src/share/native/sun/font/layout/ArabicLayoutEngine.h ! src/share/native/sun/font/layout/IndicReordering.h ! src/share/native/sun/font/layout/KhmerReordering.cpp ! src/share/native/sun/font/layout/OpenTypeLayoutEngine.h ! src/share/native/sun/font/layout/TibetanReordering.cpp ! src/share/native/sun/java2d/cmm/lcms/cmsio0.c ! src/share/native/sun/java2d/cmm/lcms/cmslut.c ! src/share/native/sun/java2d/loops/ProcessPath.c ! src/share/native/sun/java2d/opengl/OGLTextRenderer.c ! src/share/native/sun/security/pkcs11/wrapper/p11_sessmgmt.c ! src/share/sample/jmx/jmx-scandir/index.html ! src/share/sample/nio/chatserver/ClientReader.java ! src/share/sample/scripting/scriptpad/src/resources/gui.js ! src/solaris/classes/java/net/DefaultInterface.java ! src/solaris/classes/sun/awt/X11/XBaseMenuWindow.java ! src/solaris/classes/sun/awt/X11/XChoicePeer.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/XDropTargetRegistry.java ! src/solaris/classes/sun/awt/X11/XMenuItemPeer.java ! src/solaris/classes/sun/awt/X11/XScrollbar.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11/XWindow.java ! src/solaris/classes/sun/awt/X11GraphicsConfig.java ! src/solaris/classes/sun/font/XMap.java ! src/solaris/classes/sun/java2d/jules/JulesAATileGenerator.java ! src/solaris/classes/sun/nio/fs/SolarisWatchService.java ! src/solaris/classes/sun/nio/fs/UnixPath.java ! src/solaris/classes/sun/nio/fs/UnixUriUtils.java ! src/solaris/classes/sun/print/UnixPrintServiceLookup.java ! src/solaris/demo/jni/Poller/Poller.c ! src/solaris/native/com/sun/media/sound/PLATFORM_API_BsdOS_ALSA_Ports.c ! src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_Ports.c ! src/solaris/native/com/sun/media/sound/PLATFORM_API_SolarisOS_PCM.c ! src/solaris/native/com/sun/media/sound/PLATFORM_API_SolarisOS_Utils.h ! src/solaris/native/sun/awt/gtk2_interface.c ! src/solaris/native/sun/awt/multiVis.c ! src/solaris/native/sun/security/smartcardio/MUSCLE/pcsclite.h ! src/windows/classes/com/sun/tools/jdi/SharedMemoryAttachingConnector.java ! src/windows/classes/com/sun/tools/jdi/SharedMemoryListeningConnector.java ! src/windows/classes/java/net/DefaultInterface.java ! src/windows/classes/sun/awt/windows/WPathGraphics.java ! src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java ! src/windows/classes/sun/nio/ch/WindowsSelectorImpl.java ! src/windows/classes/sun/nio/fs/WindowsPath.java ! src/windows/classes/sun/security/krb5/internal/tools/Klist.java ! src/windows/native/java/io/canonicalize_md.c ! src/windows/native/java/net/DualStackPlainSocketImpl.c ! src/windows/native/java/net/icmp.h ! src/windows/native/sun/font/fontpath.c ! src/windows/native/sun/java2d/d3d/D3DTextRenderer.cpp ! src/windows/native/sun/java2d/windows/GDIBlitLoops.cpp ! src/windows/native/sun/java2d/windows/GDIRenderer.cpp ! src/windows/native/sun/nio/ch/SocketChannelImpl.c ! src/windows/native/sun/security/krb5/NativeCreds.c ! src/windows/native/sun/windows/ThemeReader.cpp ! src/windows/native/sun/windows/awt_BitmapUtil.cpp ! src/windows/native/sun/windows/awt_Choice.cpp ! src/windows/native/sun/windows/awt_Component.cpp ! src/windows/native/sun/windows/awt_Dialog.h ! src/windows/native/sun/windows/awt_DnDDS.cpp ! src/windows/native/sun/windows/awt_Font.h ! src/windows/native/sun/windows/awt_InputTextInfor.cpp ! src/windows/native/sun/windows/awt_PrintJob.cpp ! src/windows/native/sun/windows/awt_TextComponent.cpp Changeset: d4eb25382baf Author: malenkov Date: 2013-10-29 19:01 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d4eb25382baf 8027442: JDK compilation fails on MacOS Reviewed-by: alexsch, pchelko ! src/share/classes/java/awt/Component.java Changeset: a2b42e558211 Author: bagiras Date: 2013-10-29 21:46 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a2b42e558211 8027151: AWT_DnD/Basic_DnD/Automated/DnDMerlinQL/MultipleJVM failing on windows machine Reviewed-by: anthony, pchelko ! src/share/classes/sun/awt/datatransfer/DataTransferer.java ! src/share/classes/sun/awt/dnd/SunDropTargetContextPeer.java Changeset: db2838f25a85 Author: pchelko Date: 2013-10-30 12:00 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/db2838f25a85 8027152: Regression: test closed/java/awt/Serialize/NullSerializationTest/NullSerializationTest.html fails since JDK 8 b112 Reviewed-by: art, serb ! src/share/classes/java/awt/Window.java + test/java/awt/Window/OwnedWindowsSerialization/OwnedWindowsSerialization.java Changeset: 05f04b1c5bd0 Author: leonidr Date: 2013-10-30 20:54 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/05f04b1c5bd0 8013581: [macosx] Key Bindings break with awt GraphicsEnvironment setFullScreenWindow Reviewed-by: anthony, serb ! src/macosx/classes/sun/lwawt/macosx/CPlatformLWView.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformView.java ! src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java ! src/macosx/classes/sun/lwawt/macosx/CWrapper.java ! src/macosx/native/sun/awt/AWTWindow.h ! src/macosx/native/sun/awt/AWTWindow.m ! src/macosx/native/sun/awt/CWrapper.m + test/java/awt/FullScreen/8013581/bug8013581.java Changeset: 6f436140049d Author: lana Date: 2013-10-31 16:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6f436140049d Merge ! src/share/classes/java/awt/image/ComponentSampleModel.java ! src/share/classes/sun/print/RasterPrinterJob.java ! src/solaris/classes/sun/print/UnixPrintServiceLookup.java Changeset: 042a473535aa Author: mchung Date: 2013-10-17 19:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/042a473535aa 8025799: Restore sun.reflect.Reflection.getCallerClass(int) until a replacement API is provided Reviewed-by: alanb, forax, dholmes, twisti ! makefiles/mapfiles/libjava/mapfile-vers ! makefiles/mapfiles/libjava/reorder-sparc ! makefiles/mapfiles/libjava/reorder-sparcv9 ! makefiles/mapfiles/libjava/reorder-x86 ! src/share/classes/sun/reflect/Reflection.java ! src/share/javavm/export/jvm.h ! src/share/native/sun/reflect/Reflection.c + test/sun/reflect/Reflection/GetCallerClassWithDepth.java Changeset: 8a7b1b615100 Author: darcy Date: 2013-10-17 22:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8a7b1b615100 8026840: Fix new doclint issues in javax.naming Reviewed-by: mchung ! src/share/classes/javax/naming/CompositeName.java ! src/share/classes/javax/naming/CompoundName.java ! src/share/classes/javax/naming/Context.java ! src/share/classes/javax/naming/InitialContext.java ! src/share/classes/javax/naming/ReferralException.java ! src/share/classes/javax/naming/directory/DirContext.java ! src/share/classes/javax/naming/event/EventContext.java ! src/share/classes/javax/naming/ldap/LdapContext.java ! src/share/classes/javax/naming/ldap/Rdn.java Changeset: 658e121bda42 Author: sherman Date: 2013-10-17 23:43 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/658e121bda42 8025971: Remove ZoneId.OLD_SHORT_IDS 8026197: Slow reading tzdb.dat if the JRE is on a high-latency, remote file system Summary: removed the compatiblity old short-ids mapping Reviewed-by: okutsu ! src/share/classes/java/time/ZoneId.java ! src/share/classes/java/time/zone/TzdbZoneRulesProvider.java ! src/share/classes/java/util/TimeZone.java ! src/share/classes/sun/util/calendar/ZoneInfoFile.java ! test/java/time/tck/java/time/TCKZoneId.java ! test/java/util/Calendar/JavatimeTest.java Changeset: 8479a48d9fd4 Author: sla Date: 2013-10-18 11:52 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8479a48d9fd4 8021897: EXCEPTION_ACCESS_VIOLATION on debugging String.contentEquals() Reviewed-by: alanb, sspitsyn ! src/share/back/outStream.c + test/com/sun/jdi/GetUninitializedStringValue.java Changeset: da695008417f Author: alanb Date: 2013-10-18 13:45 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/da695008417f 8026859: (fs) test/java/nio/file/Files/StreamTest.java fails to compile intermittently Reviewed-by: psandoz ! test/java/nio/file/Files/StreamTest.java Changeset: 4e065f5b4a16 Author: igerasim Date: 2013-10-18 16:06 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4e065f5b4a16 8026756: Test java/util/zip/GZIP/GZIPInZip.java failed Reviewed-by: alanb ! test/java/util/zip/GZIP/GZIPInZip.java Changeset: 329cf77821e8 Author: alanb Date: 2013-10-18 13:51 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/329cf77821e8 7050570: (fs) FileSysteProvider fails to initializes if run with file.encoding set to Cp037 Reviewed-by: sherman, ulfzibis ! src/share/classes/sun/nio/fs/Util.java ! src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java ! src/solaris/classes/sun/nio/fs/LinuxDosFileAttributeView.java ! src/solaris/classes/sun/nio/fs/LinuxFileStore.java ! src/solaris/classes/sun/nio/fs/LinuxFileSystem.java ! src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java ! src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java ! src/solaris/classes/sun/nio/fs/UnixException.java ! src/solaris/classes/sun/nio/fs/UnixFileStore.java ! src/solaris/classes/sun/nio/fs/UnixFileSystem.java ! src/solaris/classes/sun/nio/fs/UnixMountEntry.java ! src/solaris/classes/sun/nio/fs/UnixNativeDispatcher.java ! src/solaris/classes/sun/nio/fs/UnixPath.java ! src/solaris/classes/sun/nio/fs/UnixUserPrincipals.java Changeset: 4161f17dfe2b Author: sjiang Date: 2013-10-18 16:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4161f17dfe2b 8026028: [findbugs] findbugs report some issue in com.sun.jmx.snmp package Reviewed-by: psandoz, dfuchs ! src/share/classes/com/sun/jmx/snmp/SnmpString.java ! src/share/classes/com/sun/jmx/snmp/agent/SnmpMib.java ! src/share/classes/com/sun/jmx/snmp/daemon/CommunicatorServer.java + test/com/sun/jmx/snmp/NoInfoLeakTest.java Changeset: 602aa6fa46c6 Author: alanb Date: 2013-10-18 15:51 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/602aa6fa46c6 8026876: (fs) Build issue with src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java Reviewed-by: psandoz ! src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java Changeset: 93f4f012deaf Author: alanb Date: 2013-10-18 16:01 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/93f4f012deaf Merge Changeset: 8d1d5a5aeb41 Author: robm Date: 2013-10-18 16:28 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8d1d5a5aeb41 8024660: TEST_BUG: java/lang/ProcessBuilder/*IOHandle.java leaving hotspot.log open in fastdebug builds Reviewed-by: alanb Contributed-by: pavel.punegov at oracle.com ! test/java/lang/ProcessBuilder/InheritIOEHandle.java ! test/java/lang/ProcessBuilder/SiblingIOEHandle.java Changeset: 88436832cfd0 Author: dsamersoff Date: 2013-10-19 00:05 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/88436832cfd0 8004213: JDP packet needs pid, broadcast interval and rmi server hostname fields Summary: Add some extra fileds to jdp packet Reviewed-by: allwin, sla, hirt ! src/share/classes/sun/management/jdp/JdpController.java ! src/share/classes/sun/management/jdp/JdpJmxPacket.java ! test/sun/management/jdp/JdpClient.java ! test/sun/management/jdp/JdpDoSomething.java ! test/sun/management/jdp/JdpTest.sh Changeset: 7a947daa8f51 Author: rriggs Date: 2013-10-18 16:37 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7a947daa8f51 8025828: Late binding of Chronology to appendValueReduced Summary: Add a listener to the parseContext called when the Chronology changes Reviewed-by: sherman ! src/share/classes/java/time/format/DateTimeFormatterBuilder.java ! src/share/classes/java/time/format/DateTimeParseContext.java ! test/java/time/test/java/time/format/TestReducedParser.java Changeset: fbb7510f788d Author: vromero Date: 2013-10-19 17:53 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fbb7510f788d 8026854: java.time.temporal.TemporalQueries doesn't compile after javac modification to lambda flow analysis Reviewed-by: psandoz ! src/share/classes/java/time/temporal/TemporalQueries.java Changeset: 392acefef659 Author: dsamersoff Date: 2013-10-19 20:59 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/392acefef659 8024071: In ManagementAgent.start it should be possible to set the jdp.name parameter. Summary: Pass one more property from Agent to JdpController Reviewed-by: jbachorik, sla ! src/share/classes/sun/management/Agent.java ! test/sun/management/jdp/JdpTest.sh ! test/sun/management/jmxremote/startstop/JMXStartStopTest.sh Changeset: ede89a97e80a Author: ksrini Date: 2013-10-19 15:19 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ede89a97e80a 8026794: Test tools/pack200/TimeStamp.java fails while opening golden.jar.native.IST on linux-ppc(v2) Reviewed-by: dholmes ! src/share/native/com/sun/java/util/jar/pack/zip.cpp Changeset: 71ecbde5e5e4 Author: rfield Date: 2013-10-20 18:07 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/71ecbde5e5e4 8025631: Enhance Lambda construction Reviewed-by: ksrini, ahgross ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java - src/share/classes/java/lang/invoke/MagicLambdaImpl.java Changeset: 30c46debdf0f Author: jbachorik Date: 2013-10-21 10:40 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/30c46debdf0f 7197919: java/lang/management/ThreadMXBean/ThreadBlockedCount.java has concurency issues Reviewed-by: sla, mchung ! test/java/lang/management/ThreadMXBean/ThreadBlockedCount.java Changeset: d8694ad1ed2d Author: jbachorik Date: 2013-10-21 10:54 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d8694ad1ed2d 8024613: javax/management/remote/mandatory/connection/RMIConnector_NPETest.java failing intermittently Summary: RMID needs a varying amount of time to start its socket server. We need to cater for it. Reviewed-by: sjiang, dfuchs, sla ! test/javax/management/remote/mandatory/connection/RMIConnector_NPETest.java Changeset: 567d47fd3fe2 Author: dfuchs Date: 2013-10-21 11:15 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/567d47fd3fe2 8016344: (props) Properties.storeToXML behaviour has changed from JDK 6 to 7 Summary: When storing Properties to XML only locally defined properties must be saved. Reviewed-by: psandoz, mchung, alanb ! src/share/classes/jdk/internal/util/xml/PropertiesDefaultHandler.java ! src/share/classes/sun/util/xml/PlatformXmlPropertiesProvider.java + test/java/util/Properties/LoadAndStoreXMLWithDefaults.java Changeset: c81125493ca6 Author: dfuchs Date: 2013-10-21 12:00 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c81125493ca6 8026499: Root Logger level can be reset unexpectedly Summary: This fix prevents the logger's level to be re-initialized if it has already been initialized. Reviewed-by: mchung ! src/share/classes/java/util/logging/LogManager.java ! src/share/classes/java/util/logging/Logger.java + test/java/util/logging/LogManager/RootLogger/setLevel/TestRootLoggerLevel.java Changeset: 698baf22e081 Author: jbachorik Date: 2013-10-21 13:57 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/698baf22e081 7140929: NotSerializableNotifTest.java fails intermittently Reviewed-by: sjiang, alanb ! test/javax/management/remote/mandatory/notif/NotSerializableNotifTest.java Changeset: f0c18a5e3ae5 Author: sherman Date: 2013-10-21 11:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f0c18a5e3ae5 8026842: Remove Time-Zone IDs HST/EST/MST Summary: removed these ids from ZoneId's zid list, supported via short_ids list Reviewed-by: okutsu ! make/tools/src/build/tools/tzdb/TzdbZoneRulesCompiler.java ! src/share/classes/sun/util/calendar/ZoneInfoFile.java ! test/java/time/test/java/time/format/TestZoneTextPrinterParser.java Changeset: c1700125d041 Author: darcy Date: 2013-10-21 12:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c1700125d041 8022658: Revisit FunctionalInterface on some core libs types Reviewed-by: briangoetz, mduigou, mr ! src/share/classes/java/io/Closeable.java ! src/share/classes/java/io/Flushable.java ! src/share/classes/java/lang/AutoCloseable.java ! src/share/classes/java/lang/Comparable.java ! src/share/classes/java/lang/Iterable.java ! src/share/classes/java/lang/Readable.java Changeset: e8683d5b2b0a Author: peytoia Date: 2013-10-22 06:13 +0900 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e8683d5b2b0a 8020037: String.toLowerCase incorrectly increases length, if string contains \u0130 char Reviewed-by: naoto ! src/share/classes/java/lang/ConditionalSpecialCasing.java ! src/share/classes/java/lang/String.java ! test/java/lang/String/ToLowerCase.java Changeset: 3b00bf85a6f5 Author: sherman Date: 2013-10-21 18:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3b00bf85a6f5 8008386: (cs) Unmappable leading should be decoded to replacement. Summary: updated the unmappable/malformed detecting handling for db charsets Reviewed-by: naoto ! src/share/classes/sun/nio/cs/ext/DoubleByte.java ! test/sun/nio/cs/TestIBMBugs.java + test/sun/nio/cs/TestUnmappable.java Changeset: f581b72e3715 Author: sla Date: 2013-10-21 23:32 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f581b72e3715 8025238: nsk/jvmti/scenarios/bcinstr/BI04/bi04t002 crashed with SIGSEGV Summary: Redefined class in stack trace may not be found by method_idnum so handle null. Reviewed-by: coleenp, dcubed, sspitsyn ! test/java/lang/instrument/RedefineMethodInBacktrace.sh ! test/java/lang/instrument/RedefineMethodInBacktraceApp.java + test/java/lang/instrument/RedefineMethodInBacktraceTargetB.java + test/java/lang/instrument/RedefineMethodInBacktraceTargetB_2.java Changeset: 975e3a89814e Author: darcy Date: 2013-10-21 13:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/975e3a89814e 8024603: Turn on javac lint checking for auxiliaryclass, empty, and try in jdk build Reviewed-by: erikj, ihse, chegar ! makefiles/Setup.gmk Changeset: f443d9b863cf Author: juh Date: 2013-10-21 22:05 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f443d9b863cf Merge Changeset: d0882a1deeb5 Author: juh Date: 2013-10-22 03:49 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d0882a1deeb5 Merge Changeset: 04ba97b7c2f9 Author: jfranck Date: 2013-10-22 10:34 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/04ba97b7c2f9 8009411: (reflect) Class.getMethods should not include static methods from interfaces Summary: Update getMethods() and getMethod() to filter out interface statics Reviewed-by: darcy Contributed-by: joel.franck at oracle.com, andreas.lundblad at oracle.com, amy.lu at oracle.com, peter.levart at gmail.com ! src/share/classes/java/lang/Class.java ! test/java/lang/reflect/DefaultStaticTest/DefaultStaticInvokeTest.java ! test/java/lang/reflect/DefaultStaticTest/DefaultStaticTestData.java + test/java/lang/reflect/Method/InterfaceStatic/StaticInterfaceMethodInWayOfDefault.java Changeset: bb2fb6be8b2a Author: ykantser Date: 2013-10-22 10:57 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bb2fb6be8b2a 8026962: Put java/lang/management/ClassLoadingMXBean/LoadCounts.java into ProblemList.txt Reviewed-by: sla, jbachorik ! test/ProblemList.txt Changeset: b07856d0de34 Author: alundblad Date: 2013-10-22 12:35 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b07856d0de34 8004912: Repeating annotations - getAnnotationsByType(Class) is not working as expected for few inheritance scenarios 8019420: Repeatable non-inheritable annotation types are mishandled by Core Reflection Reviewed-by: jfranck ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/reflect/Executable.java ! src/share/classes/java/lang/reflect/Field.java ! src/share/classes/java/lang/reflect/Parameter.java ! src/share/classes/sun/reflect/annotation/AnnotatedTypeFactory.java ! src/share/classes/sun/reflect/annotation/AnnotationSupport.java ! src/share/classes/sun/reflect/generics/reflectiveObjects/TypeVariableImpl.java + test/java/lang/annotation/repeatingAnnotations/NonInheritableContainee.java + test/java/lang/annotation/repeatingAnnotations/OrderUnitTest.java ! test/java/lang/annotation/repeatingAnnotations/RepeatedUnitTest.java Changeset: 6f9515a9519f Author: alanb Date: 2013-10-22 11:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6f9515a9519f 8021257: com.sun.corba.se.** should be on restricted package list Reviewed-by: chegar, coffeys, smarks, mullan Contributed-by: alan.bateman at oralce.com, mark.sheppard at oracle.com ! src/share/lib/security/java.security-linux ! src/share/lib/security/java.security-macosx ! src/share/lib/security/java.security-solaris ! src/share/lib/security/java.security-windows ! test/java/lang/SecurityManager/CheckPackageAccess.java Changeset: f15ad52cffed Author: alanb Date: 2013-10-22 12:04 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f15ad52cffed 8024833: (fc) FileChannel.map does not handle async close/interrupt correctly Reviewed-by: alanb Contributed-by: chris.w.dennis at gmail.com ! src/share/classes/sun/nio/ch/FileChannelImpl.java + test/java/nio/channels/FileChannel/InterruptMapDeadlock.java Changeset: 6a1989dc302d Author: igerasim Date: 2013-10-15 18:41 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6a1989dc302d 8023390: Test java/net/NetworkInterface/MemLeakTest.java failed with the latest jdk8 build Summary: Removing the test as it is unreliable and fails intermittently Reviewed-by: chegar - test/java/net/NetworkInterface/MemLeakTest.java Changeset: 7cafbb397683 Author: chegar Date: 2013-10-22 14:00 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7cafbb397683 8017779: java/net/Authenticator/B4769350.java fails Reviewed-by: chegar Contributed-by: Tristan Yan , Kurchi Subhra Hazra ! test/java/net/Authenticator/B4769350.java Changeset: 5f4aecd73caa Author: mullan Date: 2013-10-22 08:03 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5f4aecd73caa 8021191: Add isAuthorized check to limited doPrivileged methods Reviewed-by: weijun, xuelei ! src/share/classes/java/security/AccessControlContext.java ! src/share/classes/java/security/AccessController.java Changeset: 948b390b6952 Author: mullan Date: 2013-10-22 08:17 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/948b390b6952 Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m - src/share/classes/java/lang/invoke/MagicLambdaImpl.java - src/share/classes/java/net/HttpURLPermission.java - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 - test/java/net/HttpURLPermission/HttpURLPermissionTest.java - test/java/net/HttpURLPermission/URLTest.java - test/java/net/HttpURLPermission/policy.1 - test/java/net/HttpURLPermission/policy.2 - test/java/net/HttpURLPermission/policy.3 Changeset: 3ea9af449b36 Author: mullan Date: 2013-10-22 09:06 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3ea9af449b36 Merge - test/java/net/NetworkInterface/MemLeakTest.java Changeset: 54869853c06c Author: alanb Date: 2013-10-22 14:13 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/54869853c06c 7074436: (sc) SocketChannel can do short gathering writes when channel configured blocking (win) Reviewed-by: chegar ! src/windows/native/sun/nio/ch/SocketDispatcher.c ! test/java/nio/channels/SocketChannel/ShortWrite.java Changeset: 9758edb6976f Author: bpb Date: 2013-10-22 10:44 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9758edb6976f 8026806: Incomplete test of getaddrinfo() return value could lead to incorrect exception for Windows Inet 6 Summary: Check getaddrinfo return value before calling WSAGetLastError. Reviewed-by: alanb, dsamersoff ! src/windows/native/java/net/Inet6AddressImpl.c Changeset: 23b124cbf242 Author: drchase Date: 2013-10-22 12:57 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/23b124cbf242 8026818: Defmeth failures with -mode invoke Summary: Added test for IllegalAccessException -> IllegalAccessError path to check if root cause was AbstractMethodError Reviewed-by: jrose ! src/share/classes/java/lang/invoke/MethodHandleNatives.java Changeset: 72c0f289a8cb Author: kizune Date: 2013-10-22 22:18 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/72c0f289a8cb 8026873: tools/launcher/VersionCheck.java fails in jprt because of jmc.ini Reviewed-by: ksrini ! test/tools/launcher/VersionCheck.java Changeset: 2be08cdd1ced Author: bpb Date: 2013-10-22 11:25 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2be08cdd1ced 7179567: JCK8 tests: api/java_net/URLClassLoader/index.html#Ctor3 failed with NPE 6445180: URLClassLoader does not describe the behavior of several methods with respect to null arguments Summary: Document when a NPE will be thrown by URLClassLoader constructors, newInstance(), findClass(), and getPermissions(). Reviewed-by: alanb, mduigou, chegar, dholmes, jrose ! src/share/classes/java/net/URLClassLoader.java ! src/share/classes/javax/management/remote/rmi/NoCallStackClassLoader.java ! src/share/classes/sun/applet/AppletClassLoader.java + test/java/net/URLClassLoader/NullURLTest.java Changeset: c956a5d0618f Author: juh Date: 2013-10-22 11:57 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c956a5d0618f 8025287: NPE in api/java_security/cert/PKIXRevocationChecker/GeneralTests_GeneralTests Reviewed-by: mullan ! src/share/classes/sun/security/provider/certpath/RevocationChecker.java ! test/java/security/cert/PKIXRevocationChecker/UnitTest.java Changeset: 9a32af82bd1e Author: darcy Date: 2013-10-22 12:04 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9a32af82bd1e 8027062: Fix lint and doclint issues in java.lang.{ClassLoader, ClassValue, SecurityManager} Reviewed-by: chegar, forax, alanb, mduigou ! src/share/classes/java/lang/ClassLoader.java ! src/share/classes/java/lang/ClassValue.java ! src/share/classes/java/lang/SecurityManager.java Changeset: e2b814e68956 Author: rriggs Date: 2013-10-22 15:03 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e2b814e68956 8024686: Cleanup of java.time serialization source Summary: optimize serialized form of OffsetTime, OffsetDateTime; correct order of modifiers Reviewed-by: sherman ! src/share/classes/java/time/Duration.java ! src/share/classes/java/time/OffsetDateTime.java ! src/share/classes/java/time/OffsetTime.java ! src/share/classes/java/time/Period.java ! src/share/classes/java/time/chrono/ChronoPeriodImpl.java ! src/share/classes/java/time/chrono/JapaneseDate.java ! src/share/classes/java/time/temporal/WeekFields.java ! src/share/classes/java/time/zone/Ser.java ! src/share/classes/java/time/zone/ZoneOffsetTransition.java ! test/java/time/tck/java/time/serial/TCKOffsetDateTimeSerialization.java ! test/java/time/tck/java/time/serial/TCKOffsetTimeSerialization.java Changeset: d5c2b125ed0f Author: rriggs Date: 2013-10-22 15:06 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d5c2b125ed0f Merge Changeset: cd60848c87b2 Author: rriggs Date: 2013-10-22 15:11 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/cd60848c87b2 Merge Changeset: 4bb758a77fd7 Author: rriggs Date: 2013-10-22 17:02 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4bb758a77fd7 8026982: javadoc errors in core libs Summary: Cleanup of javadoc -Xlint errors Reviewed-by: lancea, mduigou, darcy, mullan, mchung ! src/share/classes/java/io/ByteArrayInputStream.java ! src/share/classes/java/io/ByteArrayOutputStream.java ! src/share/classes/java/io/DataInput.java ! src/share/classes/java/io/DataOutput.java ! src/share/classes/java/io/FilePermission.java ! src/share/classes/java/io/InputStream.java ! src/share/classes/java/io/ObjectInputStream.java ! src/share/classes/java/io/PipedInputStream.java ! src/share/classes/java/io/PipedReader.java ! src/share/classes/java/io/RandomAccessFile.java ! src/share/classes/java/io/Serializable.java ! src/share/classes/java/io/SerializablePermission.java ! src/share/classes/java/lang/AbstractStringBuilder.java ! src/share/classes/java/lang/ArrayStoreException.java ! src/share/classes/java/lang/Byte.java ! src/share/classes/java/lang/Character.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/ClassCastException.java ! src/share/classes/java/lang/Double.java ! src/share/classes/java/lang/Float.java ! src/share/classes/java/lang/Integer.java ! src/share/classes/java/lang/Iterable.java ! src/share/classes/java/lang/Long.java ! src/share/classes/java/lang/RuntimePermission.java ! src/share/classes/java/lang/Short.java ! src/share/classes/java/lang/String.java ! src/share/classes/java/lang/Thread.java ! src/share/classes/java/lang/management/ManagementFactory.java ! src/share/classes/java/lang/management/ManagementPermission.java ! src/share/classes/java/lang/management/MemoryUsage.java ! src/share/classes/java/lang/management/package.html ! src/share/classes/java/lang/reflect/ReflectPermission.java ! src/share/classes/java/net/DatagramSocket.java ! src/share/classes/java/net/Inet6Address.java ! src/share/classes/java/net/MulticastSocket.java ! src/share/classes/java/net/NetPermission.java ! src/share/classes/java/net/Proxy.java ! src/share/classes/java/net/Socket.java ! src/share/classes/java/net/SocketOptions.java ! src/share/classes/java/net/SocketPermission.java ! src/share/classes/java/net/URI.java ! src/share/classes/java/net/URLConnection.java ! src/share/classes/java/net/URLDecoder.java ! src/share/classes/java/net/URLEncoder.java ! src/share/classes/java/net/URLPermission.java ! src/share/classes/java/net/package-info.java ! src/share/classes/java/nio/X-Buffer.java.template ! src/share/classes/java/nio/file/FileSystem.java ! src/share/classes/java/rmi/activation/ActivationGroup.java ! src/share/classes/java/rmi/dgc/VMID.java ! src/share/classes/java/rmi/server/UnicastRemoteObject.java ! src/share/classes/java/security/AccessController.java ! src/share/classes/java/security/AlgorithmParameterGenerator.java ! src/share/classes/java/security/BasicPermission.java ! src/share/classes/java/security/CodeSource.java ! src/share/classes/java/security/Key.java ! src/share/classes/java/security/KeyPairGenerator.java ! src/share/classes/java/security/KeyStore.java ! src/share/classes/java/security/MessageDigest.java ! src/share/classes/java/security/Permission.java ! src/share/classes/java/security/PermissionCollection.java ! src/share/classes/java/security/SecurityPermission.java ! src/share/classes/java/security/Signature.java ! src/share/classes/java/security/SignedObject.java ! src/share/classes/java/security/acl/Acl.java ! src/share/classes/java/security/cert/CertificateFactory.java ! src/share/classes/java/security/cert/PKIXRevocationChecker.java ! src/share/classes/java/security/cert/PolicyQualifierInfo.java ! src/share/classes/java/security/cert/TrustAnchor.java ! src/share/classes/java/security/cert/X509CertSelector.java ! src/share/classes/java/security/interfaces/DSAKeyPairGenerator.java ! src/share/classes/java/text/MessageFormat.java ! src/share/classes/java/text/Normalizer.java ! src/share/classes/java/text/SimpleDateFormat.java ! src/share/classes/java/util/Base64.java ! src/share/classes/java/util/BitSet.java ! src/share/classes/java/util/Deque.java ! src/share/classes/java/util/Locale.java ! src/share/classes/java/util/Properties.java ! src/share/classes/java/util/PropertyPermission.java ! src/share/classes/java/util/Queue.java ! src/share/classes/java/util/ResourceBundle.java ! src/share/classes/java/util/Scanner.java ! src/share/classes/java/util/TimeZone.java ! src/share/classes/java/util/UUID.java ! src/share/classes/java/util/concurrent/BlockingDeque.java ! src/share/classes/java/util/concurrent/BlockingQueue.java ! src/share/classes/java/util/concurrent/Future.java ! src/share/classes/java/util/concurrent/locks/ReentrantReadWriteLock.java ! src/share/classes/java/util/jar/Pack200.java ! src/share/classes/java/util/logging/Logger.java ! src/share/classes/java/util/regex/Pattern.java ! src/share/classes/java/util/spi/LocaleServiceProvider.java Changeset: e84413f066e0 Author: mfang Date: 2013-10-22 14:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e84413f066e0 8026109: [ja] overtranslation of jarsigner in command line output Reviewed-by: naoto ! src/share/classes/sun/security/tools/jarsigner/Resources_ja.java Changeset: 25ebb8b61371 Author: mfang Date: 2013-10-22 14:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/25ebb8b61371 6607048: clear extra l10n resource files in demo Reviewed-by: naoto, yhuang - src/share/demo/jfc/Notepad/resources/Notepad_fr.properties - src/share/demo/jfc/Notepad/resources/Notepad_sv.properties Changeset: f2ddffb4b165 Author: mfang Date: 2013-10-22 14:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f2ddffb4b165 Merge Changeset: 9fbf35589211 Author: smarks Date: 2013-10-22 14:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9fbf35589211 8026427: deprecate obsolete APIs from java.rmi Reviewed-by: alanb, dfuchs ! src/share/classes/java/rmi/RMISecurityManager.java ! src/share/classes/java/rmi/activation/ActivationGroup.java ! src/share/classes/java/rmi/server/ServerRef.java ! src/share/classes/java/rmi/server/SocketSecurityException.java Changeset: 0913c3bab168 Author: henryjen Date: 2013-10-22 15:12 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0913c3bab168 8025909: Lambda Library Spec Updates 8024179: Document limitations and performance characteristics of stream sources and operations 8024138: (Spec clarification) Lambda Metafacory spec should state DMH constraint on implMethod Reviewed-by: mduigou Contributed-by: brian.goetz at oracle.com, paul.sandoz at oracle.com ! src/share/classes/java/lang/Iterable.java ! src/share/classes/java/lang/invoke/LambdaMetafactory.java ! src/share/classes/java/lang/invoke/SerializedLambda.java ! src/share/classes/java/util/DoubleSummaryStatistics.java ! src/share/classes/java/util/Iterator.java ! src/share/classes/java/util/List.java ! src/share/classes/java/util/Map.java ! src/share/classes/java/util/PrimitiveIterator.java ! src/share/classes/java/util/Spliterator.java ! src/share/classes/java/util/function/package-info.java ! src/share/classes/java/util/stream/BaseStream.java ! src/share/classes/java/util/stream/Collectors.java ! src/share/classes/java/util/stream/DoubleStream.java ! src/share/classes/java/util/stream/IntStream.java ! src/share/classes/java/util/stream/LongStream.java ! src/share/classes/java/util/stream/Node.java ! src/share/classes/java/util/stream/SpinedBuffer.java ! src/share/classes/java/util/stream/Stream.java ! src/share/classes/java/util/stream/StreamSupport.java ! src/share/classes/java/util/stream/package-info.java Changeset: fc7a6fa3589a Author: ascarpino Date: 2013-10-22 19:37 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fc7a6fa3589a 8025763: Provider does not override new Hashtable methods Reviewed-by: mullan ! src/share/classes/java/security/Provider.java Changeset: b065de1700d3 Author: mullan Date: 2013-10-22 19:43 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b065de1700d3 Merge - src/share/demo/jfc/Notepad/resources/Notepad_fr.properties - src/share/demo/jfc/Notepad/resources/Notepad_sv.properties Changeset: d545d67e2f68 Author: weijun Date: 2013-10-23 08:32 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d545d67e2f68 8027026: Change keytool -genkeypair to use -keyalg RSA Reviewed-by: alanb, chegar, mullan ! test/ProblemList.txt ! test/java/util/TimeZone/TimeZoneDatePermissionCheck.sh ! test/java/util/jar/JarInputStream/ExtraFileInMetaInf.java ! test/sun/security/pkcs12/PKCS12SameKeyId.java ! test/sun/security/tools/jarsigner/TimestampCheck.java ! test/sun/security/tools/jarsigner/checkusage.sh ! test/sun/security/tools/jarsigner/collator.sh ! test/sun/security/tools/jarsigner/crl.sh ! test/sun/security/tools/jarsigner/jvindex.sh ! test/sun/security/tools/jarsigner/newsize7.sh ! test/sun/security/tools/jarsigner/onlymanifest.sh ! test/sun/security/tools/jarsigner/passtype.sh ! test/sun/security/tools/jarsigner/samename.sh ! test/sun/security/tools/jarsigner/ts.sh ! test/sun/security/tools/keytool/CloseFile.java ! test/sun/security/tools/keytool/ListKeychainStore.sh ! test/sun/security/tools/keytool/StartDateTest.java ! test/sun/security/tools/keytool/UnknownAndUnparseable.java ! test/sun/security/tools/keytool/emptysubject.sh ! test/sun/security/tools/keytool/importreadall.sh ! test/sun/security/tools/keytool/p12importks.sh ! test/sun/security/tools/keytool/readjar.sh ! test/sun/security/tools/keytool/selfissued.sh ! test/sun/security/tools/keytool/trystore.sh ! test/sun/security/validator/certreplace.sh ! test/sun/security/validator/samedn.sh Changeset: c077a2810782 Author: egahlin Date: 2013-10-23 10:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c077a2810782 7105883: JDWP: agent crash if there exists a ThreadGroup with null name Reviewed-by: sla, jbachorik ! src/share/back/ThreadGroupReferenceImpl.c + test/com/sun/jdi/NullThreadGroupNameTest.java Changeset: 1b0dfa631b6f Author: michaelm Date: 2013-10-23 11:00 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1b0dfa631b6f 8025734: Use literal IP address where possible in SocketPermission generated by HttpURLPermission Reviewed-by: chegar ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java + test/java/net/URLPermission/nstest/LookupTest.java + test/java/net/URLPermission/nstest/META-INF/services/sun.net.spi.nameservice.NameServiceDescriptor + test/java/net/URLPermission/nstest/SimpleNameService.java + test/java/net/URLPermission/nstest/SimpleNameServiceDescriptor.java + test/java/net/URLPermission/nstest/policy Changeset: f4970c7abe93 Author: jbachorik Date: 2013-10-23 15:03 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f4970c7abe93 7112404: 2 tests in java/lang/management/ManagementFactory fails with G1 because expect non-zero pools Reviewed-by: mchung, sjiang ! test/java/lang/management/ManagementFactory/ProxyTypeMapping.java ! test/java/lang/management/ManagementFactory/ValidateOpenTypes.java Changeset: f120672b91ef Author: chegar Date: 2013-10-23 14:38 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f120672b91ef 8020758: HttpCookie constructor does not throw IAE when name contains a space Reviewed-by: michaelm, msheppar ! src/share/classes/java/net/HttpCookie.java ! test/java/net/CookieHandler/TestHttpCookie.java Changeset: 8c20e9ef8709 Author: sla Date: 2013-10-23 15:55 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8c20e9ef8709 8026789: Update test/java/lang/instrument/Re(transform|define)BigClass.sh test to use NMT for memory leak detection Reviewed-by: dcubed ! test/ProblemList.txt + test/java/lang/instrument/NMTHelper.java ! test/java/lang/instrument/RedefineBigClass.sh ! test/java/lang/instrument/RedefineBigClassApp.java ! test/java/lang/instrument/RetransformBigClass.sh ! test/java/lang/instrument/RetransformBigClassApp.java Changeset: 3cdf6ca3ef47 Author: kizune Date: 2013-10-23 18:35 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3cdf6ca3ef47 8020802: Need an ability to create jar files that are invariant to the pack200 packing/unpacking Reviewed-by: alanb, ksrini ! src/share/classes/sun/tools/jar/Main.java ! src/share/classes/sun/tools/jar/resources/jar.properties + test/tools/jar/normalize/TestNormal.java Changeset: 2af3f5a61322 Author: coffeys Date: 2013-10-23 16:53 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2af3f5a61322 5036554: unmarshal error on CORBA alias type in CORBA any Reviewed-by: chegar, smarks + test/com/sun/corba/5036554/JavaBug.java + test/com/sun/corba/5036554/README + test/com/sun/corba/5036554/TestCorbaBug.sh + test/com/sun/corba/5036554/bug.idl Changeset: 88acc99132e2 Author: rfield Date: 2013-10-23 11:36 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/88acc99132e2 8027176: Remove redundant jdk/lambda/vm/DefaultMethodsTest.java Reviewed-by: ksrini - test/jdk/lambda/vm/DefaultMethodsTest.java Changeset: ee7f1c78bec7 Author: coffeys Date: 2013-10-23 20:51 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ee7f1c78bec7 8026405: javax/xml/ws/clientjar/TestWsImport.java failing on JDK 8 nightly aurora test runs Reviewed-by: chegar ! test/javax/xml/ws/clientjar/TestWsImport.java Changeset: f4129fcfacdc Author: mduigou Date: 2013-10-23 14:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f4129fcfacdc 8024688: further split Map and ConcurrentMap defaults eliminating looping from Map defaults, Map.merge fixes and doc fixes. Reviewed-by: psandoz, dholmes ! src/share/classes/java/util/HashMap.java ! src/share/classes/java/util/Map.java ! src/share/classes/java/util/concurrent/ConcurrentMap.java ! test/java/util/Map/Defaults.java Changeset: d9d3705a992f Author: rfield Date: 2013-10-23 15:16 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d9d3705a992f 8025868: Several lang/LMBD JCK tests fail with java.lang.BootstrapMethodError Summary: Wildcard marker interfaces can cause duplicate implemented interfaces in generated lambda class Reviewed-by: briangoetz ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java + test/java/lang/invoke/lambda/DupIntf.java Changeset: c9562ac9b812 Author: dxu Date: 2013-10-23 22:30 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c9562ac9b812 7122887: JDK ignores Gnome3 proxy settings Summary: Fix GConf and add to use GProxyResolver to handle network proxy resolution Reviewed-by: chegar ! src/solaris/native/sun/net/spi/DefaultProxySelector.c ! test/java/net/ProxySelector/SystemProxies.java Changeset: e6bc0dca294b Author: sla Date: 2013-10-15 12:53 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e6bc0dca294b 8009681: TEST_BUG: MethodExitReturnValuesTest.java may fail when there are unexpected background threads Reviewed-by: sla, allwin Contributed-by: mikael.auno at oracle.com ! test/com/sun/jdi/MethodEntryExitEvents.java ! test/com/sun/jdi/MethodExitReturnValuesTest.java Changeset: 700d62b8d9cc Author: alanb Date: 2013-10-24 13:24 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/700d62b8d9cc 8026344: j.u.c.a *Adder and *Accumulator extend a package private class that is Serializable Reviewed-by: rriggs, psandoz, chegar Contributed-by: dl at cs.oswego.edu, alan.bateman at oracle.com ! src/share/classes/java/util/concurrent/atomic/DoubleAccumulator.java ! src/share/classes/java/util/concurrent/atomic/DoubleAdder.java ! src/share/classes/java/util/concurrent/atomic/LongAccumulator.java ! src/share/classes/java/util/concurrent/atomic/LongAdder.java + test/java/util/concurrent/atomic/Serial.java Changeset: e2ec05b2ed94 Author: igerasim Date: 2013-10-23 15:37 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e2ec05b2ed94 8024521: (process) Async close issues with Process InputStream Reviewed-by: psandoz, martin, alanb, robm ! src/solaris/classes/java/lang/UNIXProcess.java.bsd ! src/solaris/classes/java/lang/UNIXProcess.java.linux + test/java/lang/Runtime/exec/CloseRace.java Changeset: b8927cbfb893 Author: alundblad Date: 2013-10-24 18:52 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b8927cbfb893 8027170: Annotations declared on super-super-class should be overridden by super-class. Reviewed-by: jfranck Contributed-by: andreas.lundblad at oracle.com, peter.levart at gmail.com ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/System.java ! src/share/classes/sun/misc/JavaLangAccess.java ! src/share/classes/sun/reflect/annotation/AnnotationSupport.java + test/java/lang/annotation/repeatingAnnotations/InheritedAssociatedAnnotations.java Changeset: 808b9ef4f667 Author: smarks Date: 2013-10-24 10:13 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/808b9ef4f667 8023862: deprecate HTTP proxying from RMI Reviewed-by: mchung ! src/share/classes/java/rmi/server/RMISocketFactory.java ! src/share/classes/java/rmi/server/package.html ! src/share/classes/sun/rmi/transport/proxy/RMIMasterSocketFactory.java + test/sun/rmi/transport/proxy/DisableHttpDefaultValue.java Changeset: 5fa2fd782993 Author: briangoetz Date: 2013-10-24 13:06 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5fa2fd782993 8019646: Clarify javadoc contract of LambdaMetafactory Reviewed-by: briangoetz, rfield Contributed-by: dan.smith at oracle.com ! src/share/classes/java/lang/invoke/AbstractValidatingLambdaMetafactory.java ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/share/classes/java/lang/invoke/LambdaMetafactory.java Changeset: 93e696ba5923 Author: jfranck Date: 2013-10-24 19:04 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/93e696ba5923 8023651: j.l.r.Constructor.getAnnotatedReceiverType() and j.l.r.Constructor.getAnnotatedReturnType() for inner classes return incorrect result Reviewed-by: darcy ! src/share/classes/java/lang/reflect/Constructor.java ! src/share/classes/java/lang/reflect/Executable.java ! src/share/classes/sun/reflect/annotation/AnnotatedTypeFactory.java ! src/share/classes/sun/reflect/annotation/TypeAnnotationParser.java + test/java/lang/annotation/typeAnnotations/ConstructorReceiverTest.java Changeset: 66884b270b44 Author: twisti Date: 2013-10-24 10:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/66884b270b44 8026502: java/lang/invoke/MethodHandleConstants.java fails on all platforms Reviewed-by: iveresov, jrose ! src/share/classes/java/lang/invoke/MethodHandles.java Changeset: e7bdb2fcc7bc Author: sherman Date: 2013-10-24 11:12 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e7bdb2fcc7bc 8025003: Base64 should be less strict with padding Summary: updated spec and implementation of mime decoder to be lenient for padding Reviewed-by: alanb ! src/share/classes/java/util/Base64.java ! test/java/util/Base64/Base64GetEncoderTest.java ! test/java/util/Base64/TestBase64.java ! test/java/util/Base64/TestBase64Golden.java Changeset: 05dbf105e70f Author: joehw Date: 2013-10-24 14:13 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/05dbf105e70f 8004476: XSLT Extension Functions Don't Work in WebStart Reviewed-by: dfuchs, lancea, alanb + test/javax/xml/jaxp/transform/jdk8004476/SecureProcessingTest.xml + test/javax/xml/jaxp/transform/jdk8004476/TestBase.java + test/javax/xml/jaxp/transform/jdk8004476/XPathExFuncTest.java + test/javax/xml/jaxp/transform/jdk8004476/XSLTExFuncTest.java + test/javax/xml/jaxp/transform/jdk8004476/tokenize.xml + test/javax/xml/jaxp/transform/jdk8004476/tokenize.xsl Changeset: e9ec0ca5bab1 Author: weijun Date: 2013-10-25 08:38 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e9ec0ca5bab1 8026929: remove accelerators from policytool resources Reviewed-by: alexp, weijun Contributed-by: Leif Samuelsson ! src/share/classes/sun/security/tools/policytool/PolicyTool.java ! src/share/classes/sun/security/tools/policytool/Resources.java Changeset: d126301ad372 Author: ewang Date: 2013-10-25 11:01 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d126301ad372 7079145: Remove java/net/ipv6tests/UdpTest.java from the ProblemList.txt Reviewed-by: alanb, chegar ! test/ProblemList.txt Changeset: 1153022c0a45 Author: jbachorik Date: 2013-10-25 13:01 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1153022c0a45 8004926: sun/management/jmxremote/bootstrap/CustomLauncherTest.sh oftenly times out Summary: Improve reliability by converting the test to Java Reviewed-by: dsamersoff, dholmes ! test/TEST.groups ! test/lib/testlibrary/jdk/testlibrary/ProcessTools.java ! test/lib/testlibrary/jdk/testlibrary/StreamPumper.java + test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java - test/sun/management/jmxremote/bootstrap/CustomLauncherTest.sh + test/sun/management/jmxremote/bootstrap/LocalManagementTest.java - test/sun/management/jmxremote/bootstrap/LocalManagementTest.sh ! test/sun/management/jmxremote/bootstrap/TestApplication.java ! test/sun/management/jmxremote/bootstrap/TestManager.java + test/sun/management/jmxremote/bootstrap/linux-amd64/launcher Changeset: 8ea272253285 Author: smarks Date: 2013-10-25 14:53 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8ea272253285 5063500: Formatter spec says "char" is not an integral type 7126305: Wrong Unicode value specified for format conversion character 'd' 8027287: incorrect example in Formatter javadoc Reviewed-by: rriggs, darcy, lancea ! src/share/classes/java/util/Formatter.java Changeset: af4dd45bc7f7 Author: dfuchs Date: 2013-10-28 10:52 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/af4dd45bc7f7 8026863: regression in anonymous Logger.setParent method Summary: restore behaviour of setParent in anonymous logger and clarifies the spec with respect to security permissions. Reviewed-by: mchung, prr ! src/share/classes/java/util/logging/Logger.java + test/java/util/logging/AnonymousLogger/TestAnonymousLogger.java Changeset: e7639b856256 Author: lana Date: 2013-10-28 12:28 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e7639b856256 Merge Changeset: ecba02f6be31 Author: sla Date: 2013-10-29 08:10 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ecba02f6be31 8027371: Add JDI tests for breakpointing and stepping in lambda code Reviewed-by: mchung, sspitsyn + test/com/sun/jdi/LambdaBreakpointTest.java + test/com/sun/jdi/LambdaStepTest.java Changeset: d34c5e860d5f Author: aefimov Date: 2013-10-24 17:23 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d34c5e860d5f 8026772: test/sun/util/resources/TimeZone/Bug6317929.java failing Reviewed-by: okutsu, mfang, alanb ! test/ProblemList.txt ! test/sun/util/resources/TimeZone/Bug6317929.java Changeset: a8bbd962f34a Author: jlaskey Date: 2013-01-28 16:29 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a8bbd962f34a 8006676: Integrate Nashorn into new build system Reviewed-by: jlaskey Contributed-by: james.laskey at oracle.com ! THIRD_PARTY_README ! make/launchers/Makefile ! makefiles/CompileLaunchers.gmk ! makefiles/CreateJars.gmk ! test/tools/launcher/VersionCheck.java Changeset: 41654275896d Author: jlaskey Date: 2013-02-04 17:29 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/41654275896d Merge ! makefiles/CompileLaunchers.gmk ! makefiles/CreateJars.gmk - src/share/classes/java/lang/annotation/ContainedBy.java - src/share/classes/java/lang/annotation/ContainerFor.java - test/java/net/URL/abnormal_http_urls - test/java/net/URL/ftp_urls - test/java/net/URL/jar_urls - test/java/net/URL/normal_http_urls - test/java/net/URL/runconstructor.sh - test/java/net/URL/share_file_urls - test/java/net/URL/win32_file_urls - test/sun/net/www/EncDec.doc - test/sun/net/www/MarkResetTest.java - test/sun/net/www/MarkResetTest.sh - test/sun/security/util/Oid/S11N.sh - test/sun/security/util/Oid/SerialTest.java ! test/tools/launcher/VersionCheck.java Changeset: a174944b0c00 Author: jlaskey Date: 2013-02-21 15:25 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a174944b0c00 8008447: Tweaks to make all NEWBUILD=false round 3 Reviewed-by: jjh, sundar Contributed-by: james.laskey at oracle.com ! make/launchers/Makefile Changeset: 25db7658a063 Author: jlaskey Date: 2013-02-22 10:23 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/25db7658a063 8008721: Tweaks to make all NEWBUILD=false round 4 Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! make/launchers/Makefile Changeset: ea22045ce09b Author: jlaskey Date: 2013-02-22 14:05 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ea22045ce09b Merge ! makefiles/CreateJars.gmk Changeset: ff68fafd6302 Author: jlaskey Date: 2013-02-22 17:45 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ff68fafd6302 8008756: THIRD_PARTY_README contains Unicode Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! THIRD_PARTY_README Changeset: ce82a0ee7735 Author: jlaskey Date: 2013-02-22 18:03 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ce82a0ee7735 8008757: NEWBUILD=true has separate launcher code for jjs Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! makefiles/CompileLaunchers.gmk Changeset: 20a827b22a2e Author: jlaskey Date: 2013-02-22 23:36 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/20a827b22a2e 8008775: Remove non-ascii from jdk/THIRD_PARTY_README Reviewed-by: jjh Contributed-by: james.laskey at oracle.com ! THIRD_PARTY_README Changeset: 364e0871f7a3 Author: jlaskey Date: 2013-03-02 11:06 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/364e0871f7a3 Merge ! make/launchers/Makefile ! makefiles/CompileLaunchers.gmk ! makefiles/CreateJars.gmk - src/share/classes/java/lang/annotation/InvalidContainerAnnotationError.java - test/javax/script/RhinoExceptionTest.java ! test/tools/launcher/VersionCheck.java Changeset: 3565c755c49f Author: jlaskey Date: 2013-03-15 11:51 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3565c755c49f Merge ! makefiles/CreateJars.gmk Changeset: 8c223a4f906a Author: jlaskey Date: 2013-03-26 09:12 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8c223a4f906a Merge ! makefiles/CreateJars.gmk Changeset: efbbcd5848cf Author: jlaskey Date: 2013-04-01 10:09 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/efbbcd5848cf Merge Changeset: 39ce82dad57d Author: jlaskey Date: 2013-04-09 08:36 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/39ce82dad57d Merge Changeset: ff9683b6854c Author: jlaskey Date: 2013-04-15 08:27 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ff9683b6854c Merge ! makefiles/CompileLaunchers.gmk ! makefiles/CreateJars.gmk Changeset: 1cdf20da340b Author: jlaskey Date: 2013-04-17 08:47 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1cdf20da340b Merge Changeset: 72fa581a83a4 Author: jlaskey Date: 2013-04-22 14:00 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/72fa581a83a4 Merge Changeset: ead9944bbb3b Author: jlaskey Date: 2013-04-29 21:37 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ead9944bbb3b Merge Changeset: 5bde43b1e463 Author: jlaskey Date: 2013-05-14 09:04 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5bde43b1e463 Merge Changeset: efd620f8963f Author: jlaskey Date: 2013-05-23 09:48 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/efd620f8963f Merge ! makefiles/CreateJars.gmk Changeset: 193652dff077 Author: jlaskey Date: 2013-05-29 13:22 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/193652dff077 Merge Changeset: 733713d7517c Author: jlaskey Date: 2013-06-05 13:10 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/733713d7517c Merge ! makefiles/CompileLaunchers.gmk Changeset: 3b464e13a776 Author: jlaskey Date: 2013-07-16 09:09 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3b464e13a776 Merge ! makefiles/CompileLaunchers.gmk ! makefiles/CreateJars.gmk ! test/tools/launcher/VersionCheck.java Changeset: c0a2094aaafd Author: jlaskey Date: 2013-07-24 08:22 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c0a2094aaafd Merge - src/share/classes/javax/security/auth/callback/package.html - src/share/classes/javax/security/auth/kerberos/package.html - src/share/classes/javax/security/auth/login/package.html - src/share/classes/javax/security/auth/package.html - src/share/classes/javax/security/auth/spi/package.html - src/share/classes/javax/security/auth/x500/package.html - src/share/classes/javax/security/cert/package.html - src/share/classes/javax/security/sasl/package.html Changeset: 528fc8f4281b Author: jlaskey Date: 2013-08-27 16:06 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/528fc8f4281b Merge ! makefiles/CompileLaunchers.gmk Changeset: be6ca7197e0e Author: jlaskey Date: 2013-09-13 10:15 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/be6ca7197e0e Merge ! makefiles/CreateJars.gmk - src/share/classes/java/util/stream/CloseableStream.java - src/share/classes/java/util/stream/DelegatingStream.java - test/java/util/Map/CheckRandomHashSeed.java - test/java/util/Map/TreeBinSplitBackToEntries.java - test/sun/tools/jconsole/ImmutableResourceTest.java - test/sun/tools/jconsole/ImmutableResourceTest.sh Changeset: 74b1eb493407 Author: jlaskey Date: 2013-09-30 10:24 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/74b1eb493407 Merge ! makefiles/CreateJars.gmk Changeset: f5c9333b6129 Author: jlaskey Date: 2013-10-29 10:40 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f5c9333b6129 Merge ! makefiles/CompileLaunchers.gmk ! makefiles/CreateJars.gmk ! test/tools/launcher/VersionCheck.java Changeset: 121c34517841 Author: chegar Date: 2013-10-29 17:21 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/121c34517841 8027466: Revert jdk/THIRD_PARTY_README to known good version Reviewed-by: alanb ! THIRD_PARTY_README Changeset: 6fc2889fe7d0 Author: mfang Date: 2013-10-29 11:27 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6fc2889fe7d0 8026108: [it, ja, zh_CN] wrong translation in jar example. Reviewed-by: okutsu, yhuang ! src/share/classes/sun/tools/jar/resources/jar_it.properties ! src/share/classes/sun/tools/jar/resources/jar_ja.properties ! src/share/classes/sun/tools/jar/resources/jar_zh_CN.properties Changeset: 0cc9bdb22911 Author: mfang Date: 2013-10-29 11:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0cc9bdb22911 8008437: [sv] over-translation in java command line outputs Reviewed-by: okutsu, yhuang ! src/share/classes/sun/tools/jar/resources/jar_sv.properties Changeset: 331d8ced56dc Author: mfang Date: 2013-10-29 11:34 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/331d8ced56dc 8025646: [pt_BR] overtranslation of option in java command line output Reviewed-by: naoto, yhuang ! src/share/classes/sun/launcher/resources/launcher_pt_BR.properties Changeset: a3ac9c0b19a9 Author: jbachorik Date: 2013-10-29 21:49 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a3ac9c0b19a9 8027358: sun/management/jmxremote/bootstrap/LocalManagementTest.java failing since JDK-8004926 Reviewed-by: alanb, egahlin ! test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java ! test/sun/management/jmxremote/bootstrap/LocalManagementTest.java Changeset: 8cfc73ad9f31 Author: mfang Date: 2013-10-29 15:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8cfc73ad9f31 8008647: [es] minor cosmetic issues in translated java command line outputs Reviewed-by: naoto ! src/share/classes/sun/tools/jar/resources/jar_es.properties Changeset: 4071c853edff Author: mfang Date: 2013-10-29 15:32 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4071c853edff Merge Changeset: bede752d1e3c Author: mfang Date: 2013-10-29 16:59 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bede752d1e3c 8025521: [de] mnemonic conflict in FileChooser for GTK Style feel&look Reviewed-by: naoto ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties Changeset: 5d1bda6c1fe3 Author: jbachorik Date: 2013-10-30 14:50 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/5d1bda6c1fe3 8027058: sun/management/jmxremote/bootstrap/RmiBootstrapTest.sh Failed to initialize connector Summary: Dynamically discover the first available port instead of hard-coding one Reviewed-by: sla, chegar, dfuchs ! test/sun/management/jmxremote/bootstrap/RmiBootstrapTest.java Changeset: 9a5048dc7c0d Author: chegar Date: 2013-10-30 14:41 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9a5048dc7c0d 8026880: NetworkInterface native initializing code should check fieldID values Reviewed-by: alanb ! src/solaris/native/java/net/NetworkInterface.c ! src/windows/native/java/net/NetworkInterface.c Changeset: b04b124418d8 Author: ykantser Date: 2013-10-30 13:44 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b04b124418d8 8022229: Intermittent test failures in sun/tools/jstatd Reviewed-by: sla, egahlin, jbachorik, allwin + test/lib/testlibrary/jdk/testlibrary/Asserts.java + test/lib/testlibrary/jdk/testlibrary/JDKToolFinder.java + test/lib/testlibrary/jdk/testlibrary/JDKToolLauncher.java + test/lib/testlibrary/jdk/testlibrary/Platform.java + test/lib/testlibrary/jdk/testlibrary/ProcessThread.java + test/lib/testlibrary/jdk/testlibrary/TestThread.java + test/lib/testlibrary/jdk/testlibrary/Utils.java + test/lib/testlibrary/jdk/testlibrary/XRun.java + test/sun/tools/jstatd/JstatGCUtilParser.java + test/sun/tools/jstatd/JstatdTest.java + test/sun/tools/jstatd/TestJstatdDefaults.java + test/sun/tools/jstatd/TestJstatdExternalRegistry.java + test/sun/tools/jstatd/TestJstatdPort.java + test/sun/tools/jstatd/TestJstatdPortAndServer.java + test/sun/tools/jstatd/TestJstatdServer.java + test/sun/tools/jstatd/TestJstatdUsage.java - test/sun/tools/jstatd/jpsOutput1.awk - test/sun/tools/jstatd/jstatGcutilOutput1.awk - test/sun/tools/jstatd/jstatdDefaults.sh - test/sun/tools/jstatd/jstatdExternalRegistry.sh - test/sun/tools/jstatd/jstatdPort.sh - test/sun/tools/jstatd/jstatdServerName.sh - test/sun/tools/jstatd/jstatdUsage1.sh - test/sun/tools/jstatd/usage.out Changeset: 550244957351 Author: mfang Date: 2013-10-30 09:33 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/550244957351 6192407: s10_70, ko, s1/dvd, minor misspelling under "Select Software Localizations" Reviewed-by: yhuang ! src/share/classes/sun/util/resources/ko/LocaleNames_ko.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: e45b48874ba9 Author: mfang Date: 2013-10-30 09:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e45b48874ba9 6931564: Incorrect display name of Locale for south africa Reviewed-by: yhuang ! src/share/classes/sun/util/resources/sv/LocaleNames_sv.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 2a714dabb624 Author: jbachorik Date: 2013-10-30 17:54 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2a714dabb624 8020467: Inconsistency between usage.getUsed() and isUsageThresholdExceeded() with CMS Old Gen pool Reviewed-by: mchung, brutisso ! test/java/lang/management/MemoryPoolMXBean/ThresholdTest.java Changeset: 7bc67bed3c14 Author: michaelm Date: 2013-10-30 18:37 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7bc67bed3c14 8027570: NullPointerException in URLPermission.hashCode() Reviewed-by: chegar ! src/share/classes/java/net/URLPermission.java ! test/java/net/URLPermission/URLPermissionTest.java Changeset: 281e26d7f325 Author: michaelm Date: 2013-10-30 18:38 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/281e26d7f325 Merge - make/sun/awt/FILES_c_macosx.gmk - make/sun/awt/FILES_export_macosx.gmk - makefiles/GendataBreakIterator.gmk - makefiles/GendataFontConfig.gmk - makefiles/GendataHtml32dtd.gmk - makefiles/GendataTZDB.gmk - makefiles/GendataTimeZone.gmk - makefiles/GenerateJavaSources.gmk - makefiles/GensrcBuffer.gmk - makefiles/GensrcCLDR.gmk - makefiles/GensrcCharacterData.gmk - makefiles/GensrcCharsetCoder.gmk - makefiles/GensrcCharsetMapping.gmk - makefiles/GensrcExceptions.gmk - makefiles/GensrcIcons.gmk - makefiles/GensrcJDWP.gmk - makefiles/GensrcJObjC.gmk - makefiles/GensrcLocaleDataMetaInfo.gmk - makefiles/GensrcMisc.gmk - makefiles/GensrcProperties.gmk - makefiles/GensrcSwing.gmk - makefiles/GensrcX11Wrappers.gmk - src/macosx/classes/com/apple/resources/MacOSXResourceBundle.java - src/macosx/native/com/apple/resources/MacOSXResourceBundle.m - src/share/classes/java/lang/invoke/MagicLambdaImpl.java ! src/share/classes/java/net/URLPermission.java - src/share/demo/jfc/Notepad/resources/Notepad_fr.properties - src/share/demo/jfc/Notepad/resources/Notepad_sv.properties - src/solaris/doc/sun/man/man1/ja/javaws.1 - src/solaris/doc/sun/man/man1/javaws.1 - test/java/net/NetworkInterface/MemLeakTest.java - test/jdk/lambda/vm/DefaultMethodsTest.java - test/sun/management/jmxremote/bootstrap/CustomLauncherTest.sh - test/sun/management/jmxremote/bootstrap/LocalManagementTest.sh - test/sun/tools/jstatd/jpsOutput1.awk - test/sun/tools/jstatd/jstatGcutilOutput1.awk - test/sun/tools/jstatd/jstatdDefaults.sh - test/sun/tools/jstatd/jstatdExternalRegistry.sh - test/sun/tools/jstatd/jstatdPort.sh - test/sun/tools/jstatd/jstatdServerName.sh - test/sun/tools/jstatd/jstatdUsage1.sh - test/sun/tools/jstatd/usage.out Changeset: 348ffbd19feb Author: lana Date: 2013-10-30 13:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/348ffbd19feb Merge ! makefiles/CreateJars.gmk + makefiles/CreateSecurityJars.gmk Changeset: ddb0b681654a Author: briangoetz Date: 2013-10-29 12:31 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ddb0b681654a 8027318: Lambda Metafactory: generate serialization-hostile read/writeObject methods for non-serializable lambdas Reviewed-by: rfield, psandoz ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! test/java/util/stream/test/org/openjdk/tests/java/lang/invoke/SerializedLambdaTest.java Changeset: f731d096530f Author: wetmore Date: 2013-10-30 16:49 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f731d096530f 8027526: CheckTipsAndVersions.java failing occasionally Reviewed-by: mullan, mchung ! test/java/security/Signature/SignatureGetAlgorithm.java Changeset: e8894e3224d9 Author: darcy Date: 2013-10-30 17:27 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e8894e3224d9 8005294: Consider default methods for additions to AnnotatedElement Reviewed-by: jfranck, plevart, mchung, abuckley, sogoel ! src/share/classes/java/lang/reflect/AnnotatedElement.java + test/java/lang/reflect/AnnotatedElement/TestAnnotatedElementDefaults.java Changeset: 0734e1584d9d Author: bpb Date: 2013-10-30 17:45 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0734e1584d9d 6910473: java.math.BigInteger.bitLength() may return negative "int" on large numbers 8021203: BigInteger.doubleValue/floatValue returns 0.0 instead of Infinity 8021204: Constructor BigInteger(String val, int radix) doesn't detect overflow 8022780: Incorrect BigInteger division because of MutableBigInteger.bitLength() overflow Summary: Prevent construction of overflowed BigIntegers. Reviewed-by: bpb, darcy, psandoz Contributed-by: Dmitry Nadezhin ! src/share/classes/java/math/BigInteger.java ! src/share/classes/java/math/MutableBigInteger.java + test/java/math/BigInteger/BitLengthOverflow.java + test/java/math/BigInteger/DivisionOverflow.java + test/java/math/BigInteger/DoubleValueOverflow.java ! test/java/math/BigInteger/ExtremeShiftingTests.java + test/java/math/BigInteger/StringConstructorOverflow.java + test/java/math/BigInteger/SymmetricRangeTests.java Changeset: 1ea1b24c1a04 Author: smarks Date: 2013-10-30 18:39 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1ea1b24c1a04 8023863: deprecate support for statically-generated stubs from RMI (JRMP) 4449028: exportObject() javadoc should specify behavior for null socket factories Reviewed-by: dfuchs, darcy ! src/share/classes/java/rmi/server/RemoteStub.java ! src/share/classes/java/rmi/server/UnicastRemoteObject.java ! src/share/classes/java/rmi/server/package.html Changeset: 18c111c17231 Author: psandoz Date: 2013-10-31 11:59 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/18c111c17231 8027316: Distinct operation on an unordered stream should not be a barrier Reviewed-by: henryjen, mduigou, briangoetz ! src/share/classes/java/util/stream/DistinctOps.java ! src/share/classes/java/util/stream/StreamSpliterators.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/DistinctOpTest.java Changeset: bb4b1e1e390d Author: jbachorik Date: 2013-10-31 11:59 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bb4b1e1e390d 7144200: java/lang/management/ClassLoadingMXBean/LoadCounts.java failed with JFR enabled Summary: Make the test less stringent by not requiring the number of loaded classes to increase by a specific number Reviewed-by: sla ! test/ProblemList.txt ! test/java/lang/management/ClassLoadingMXBean/LoadCounts.java Changeset: 82ee370c3d7e Author: briangoetz Date: 2013-10-31 10:37 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/82ee370c3d7e 8024637: Lambda linkage performance - use reflection instead of ASM to manipulate parameter types 8023984: Lambda linkage performance - use a method ref to a static factory instead of a ctor ref Reviewed-by: briangoetz, rfield Contributed-by: sergey.kuksenko at oracle.com ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/share/classes/java/lang/invoke/TypeConvertingMethodAdapter.java Changeset: 9732816c9d17 Author: briangoetz Date: 2013-10-29 12:45 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9732816c9d17 8024633: Lambda linkage performance - initialize generated class earlier Reviewed-by: briangoetz, rfield Contributed-by: sergey.kuksenko at oracle.com ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java Changeset: e93de88661ab Author: dxu Date: 2013-10-31 11:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e93de88661ab 8027155: test/java/io/File/NulFile.java failing when test run in othervm mode Reviewed-by: mchung, alanb ! test/java/io/File/NulFile.java Changeset: c4bbd5963f9c Author: joehw Date: 2013-10-31 13:51 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c4bbd5963f9c 8024876: [TEST_BUG] javax/xml/jaxp/parsers/8022548/XOMParserTest.java failed when testbase dir has read only permissions Reviewed-by: chegar ! test/javax/xml/jaxp/parsers/8022548/XOMParserTest.java Changeset: f82b730c798b Author: lana Date: 2013-10-31 16:44 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f82b730c798b Merge - src/share/classes/java/lang/invoke/MagicLambdaImpl.java ! src/share/classes/java/net/DatagramSocket.java ! src/share/classes/java/net/URLConnection.java ! src/share/classes/java/net/URLDecoder.java ! src/share/classes/java/net/URLEncoder.java ! src/share/classes/java/security/KeyStore.java ! src/share/classes/java/util/Locale.java ! src/share/classes/java/util/ResourceBundle.java ! src/share/classes/java/util/regex/Pattern.java ! src/share/classes/javax/naming/ldap/Rdn.java ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/share/classes/sun/tools/jar/Main.java - src/share/demo/jfc/Notepad/resources/Notepad_fr.properties - src/share/demo/jfc/Notepad/resources/Notepad_sv.properties ! src/share/javavm/export/jvm.h ! src/share/native/com/sun/java/util/jar/pack/zip.cpp ! src/solaris/classes/sun/nio/fs/UnixPath.java - test/java/net/NetworkInterface/MemLeakTest.java - test/jdk/lambda/vm/DefaultMethodsTest.java - test/sun/management/jmxremote/bootstrap/CustomLauncherTest.sh - test/sun/management/jmxremote/bootstrap/LocalManagementTest.sh - test/sun/tools/jstatd/jpsOutput1.awk - test/sun/tools/jstatd/jstatGcutilOutput1.awk - test/sun/tools/jstatd/jstatdDefaults.sh - test/sun/tools/jstatd/jstatdExternalRegistry.sh - test/sun/tools/jstatd/jstatdPort.sh - test/sun/tools/jstatd/jstatdServerName.sh - test/sun/tools/jstatd/jstatdUsage1.sh - test/sun/tools/jstatd/usage.out Changeset: a389b4f5723f Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a389b4f5723f Added tag jdk8-b115 for changeset f82b730c798b ! .hgtags From john.coomes at oracle.com Thu Nov 7 22:59:15 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 22:59:15 +0000 Subject: hg: hsx/hotspot-gc/langtools: 32 new changesets Message-ID: <20131107230108.873E362448@hg.openjdk.java.net> Changeset: 7af634b1fc5b Author: darcy Date: 2013-10-17 19:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/7af634b1fc5b 8026838: Fix new doclint issues in javax.annotation.processing Reviewed-by: jjg ! src/share/classes/javax/annotation/processing/Processor.java Changeset: 7de97abc4a5c Author: jjg Date: 2013-10-18 15:03 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/7de97abc4a5c 8026749: Missing LV table in lambda bodies Reviewed-by: vromero, jlahoda ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java + test/tools/javac/lambda/LocalVariableTable.java Changeset: 130b8c0e570e Author: bpatel Date: 2013-10-18 16:34 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/130b8c0e570e 8026567: Use meaningful style names for strong and italic styles. Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractExecutableMemberWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractIndexWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/HelpWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageFrameWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfileWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/PropertyWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/TagletWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/TreeWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlStyle.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css ! test/com/sun/javadoc/AuthorDD/AuthorDD.java ! test/com/sun/javadoc/testAnnotationTypes/TestAnnotationTypes.java ! test/com/sun/javadoc/testClassCrossReferences/TestClassCrossReferences.java ! test/com/sun/javadoc/testClassTree/TestClassTree.java ! test/com/sun/javadoc/testConstructorIndent/TestConstructorIndent.java ! test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java ! test/com/sun/javadoc/testExternalOverridenMethod/TestExternalOverridenMethod.java ! test/com/sun/javadoc/testHref/TestHref.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java ! test/com/sun/javadoc/testIndex/TestIndex.java ! test/com/sun/javadoc/testInterface/TestInterface.java ! test/com/sun/javadoc/testJavaFX/TestJavaFX.java ! test/com/sun/javadoc/testLegacyTaglet/Check.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testMemberInheritence/TestMemberInheritence.java ! test/com/sun/javadoc/testMemberSummary/TestMemberSummary.java ! test/com/sun/javadoc/testNavigation/TestNavigation.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenMethodDocCopy.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethods.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPackageFlag.java ! test/com/sun/javadoc/testOverridenMethods/TestOverridenPrivateMethodsWithPrivateFlag.java ! test/com/sun/javadoc/testPackageDeprecation/TestPackageDeprecation.java ! test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java ! test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java ! test/com/sun/javadoc/testProfiles/TestProfiles.java ! test/com/sun/javadoc/testProfiles/TestProfilesConfiguration.java ! test/com/sun/javadoc/testSerializedFormDeprecationInfo/TestSerializedFormDeprecationInfo.java ! test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java ! test/com/sun/javadoc/testSimpleTagInherit/TestSimpleTagInherit.java ! test/com/sun/javadoc/testSinceTag/TestSinceTag.java ! test/com/sun/javadoc/testTagOutput/TestTagOutput.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testTaglets/taglets/Foo.java ! test/com/sun/javadoc/testThrowsHead/TestThrowsHead.java ! test/com/sun/javadoc/testTypeAnnotations/TestTypeAnnotations.java ! test/com/sun/javadoc/testValueTag/TestValueTag.java Changeset: c4292590fc70 Author: vromero Date: 2013-10-19 17:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/c4292590fc70 8024809: javac, some lambda programs are rejected by flow analysis Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! test/tools/javac/lambda/8016081/T8016081.java ! test/tools/javac/lambda/LambdaExpr13.java + test/tools/javac/lambda/T8024809/SelfInitializerInLambdaTesta.java + test/tools/javac/lambda/T8024809/SelfInitializerInLambdaTesta.out + test/tools/javac/lambda/T8024809/SelfInitializerInLambdaTestb.java + test/tools/javac/lambda/T8024809/SelfInitializerInLambdaTestb.out ! test/tools/javac/lambda/TestSelfRef.java Changeset: e5d3cd43c85e Author: jjg Date: 2013-10-20 12:01 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/e5d3cd43c85e 8025109: Better encapsulation for AnnotatedType Reviewed-by: jjg Contributed-by: wdietl at gmail.com ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java Changeset: ae4f5cb78ebd Author: jjg Date: 2013-10-20 12:46 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/ae4f5cb78ebd 8026791: wrong type_path encoded for method_return on an inner class constructor Reviewed-by: jjg Contributed-by: wdietl at gmail.com ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/Constructors.java Changeset: 399c738e5103 Author: ksrini Date: 2013-10-20 12:54 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/399c738e5103 8026931: MethodParameters tests failing on Windows Reviewed-by: jjg, vromero ! test/tools/javac/MethodParameters/Tester.java Changeset: 9f876bd43f55 Author: vromero Date: 2013-10-21 15:55 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/9f876bd43f55 8026956: test tools/javac/lambda/TargetType58.java is failing after a libs change Reviewed-by: jfranck ! test/tools/javac/lambda/TargetType58.java Changeset: b82982ac3ca2 Author: darcy Date: 2013-10-21 15:37 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b82982ac3ca2 8026984: Clarity intended use of jdk.Exported Reviewed-by: psandoz, mr, alanb ! src/share/classes/jdk/Exported.java Changeset: ac839d6f4953 Author: jfranck Date: 2013-10-22 03:36 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/ac839d6f4953 8026855: AnnoConstruct.getAnnotationsByType includes inherited indirectly present annotations even when containee type is not inheritable Summary: In AnnoConstruct.getAnnotationByType() check that the annotation sought after is inherited before looking on supertypes. Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/AnnoConstruct.java + test/tools/javac/processing/model/element/TestNonInherited.java Changeset: 87c950ea88be Author: ksrini Date: 2013-10-21 20:10 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/87c950ea88be 8026758: Inefficient code in LambdaToMethod Reviewed-by: jjg, jlahoda, rfield ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java Changeset: f003f09144ff Author: jfranck Date: 2013-10-22 10:08 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/f003f09144ff 8026857: AnnoConstruct.getAnnotationsByType does not search supertype for inherited annotations if @SomeContainer({}) is present Summary: An empty container should not stop javac from looking at supertypes for inherited repeating annotations Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/AnnoConstruct.java + test/tools/javac/processing/model/element/TestEmptyContainer.java Changeset: 963c57175e40 Author: vromero Date: 2013-10-22 13:54 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/963c57175e40 8025290: javac implicit versus explicit lambda compilation error Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Infer.java ! src/share/classes/com/sun/tools/javac/util/JavacMessages.java + test/tools/javac/lambda/T8025290/ExplicitVSImplicitLambdaTest.java Changeset: 6cd16d8ed2b9 Author: rfield Date: 2013-10-22 16:53 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/6cd16d8ed2b9 8023668: Desugar serializable lambda bodies using more robust naming scheme Summary: lambda / bridged method-reference naming overhaul Reviewed-by: ksrini, briangoetz ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java ! test/tools/javac/MethodParameters/LambdaTest.out ! test/tools/javac/T8019486/WrongLVTForLambdaTest.java + test/tools/javac/lambda/lambdaNaming/TestSerializedLambdaNameStability.java + test/tools/javac/lambda/lambdaNaming/after/TESTNameOfCapturedArgs.java + test/tools/javac/lambda/lambdaNaming/after/TESTOrderOfCapturedArgs.java + test/tools/javac/lambda/lambdaNaming/after/TESTTargetName.java + test/tools/javac/lambda/lambdaNaming/after/TESTTargetType.java + test/tools/javac/lambda/lambdaNaming/after/TESTTypesOfCapturedArgs.java + test/tools/javac/lambda/lambdaNaming/after/TESTVariableAssignmentTarget.java + test/tools/javac/lambda/lambdaNaming/before/TESTNameOfCapturedArgs.java + test/tools/javac/lambda/lambdaNaming/before/TESTOrderOfCapturedArgs.java + test/tools/javac/lambda/lambdaNaming/before/TESTTargetName.java + test/tools/javac/lambda/lambdaNaming/before/TESTTargetType.java + test/tools/javac/lambda/lambdaNaming/before/TESTTypesOfCapturedArgs.java + test/tools/javac/lambda/lambdaNaming/before/TESTVariableAssignmentTarget.java Changeset: 351d6808c1a5 Author: jjg Date: 2013-10-22 17:42 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/351d6808c1a5 8027119: Cleanup javadoc comments for taglet API Reviewed-by: mduigou ! src/share/classes/com/sun/javadoc/Tag.java Changeset: 41d3ffca22ff Author: jjg Date: 2013-10-22 17:44 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/41d3ffca22ff Merge Changeset: b05db8c815e8 Author: jlahoda Date: 2013-10-23 07:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/b05db8c815e8 8026508: Invokedynamic instructions don't get line number table entries Summary: Setting or correcting positions for many trees produced by LambdaToMethod. Reviewed-by: vromero, rfield ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/T8019486/WrongLNTForLambdaTest.java - test/tools/javac/T8019486/WrongLVTForLambdaTest.java Changeset: 32ea6ccb7607 Author: rfield Date: 2013-10-23 10:28 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/32ea6ccb7607 8022720: Method refeerences - private method should be accessible (nested classes) Reviewed-by: jjg, ksrini ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/lambda/privateMethodReferences/MethodInvoker.java + test/tools/javac/lambda/privateMethodReferences/MethodSupplier.java + test/tools/javac/lambda/privateMethodReferences/ThirdClass.java Changeset: 8746caa5cf80 Author: bpatel Date: 2013-10-23 13:54 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/8746caa5cf80 8026770: javadoc creates invalid HTML in profile summary pages Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageWriterImpl.java ! test/com/sun/javadoc/testProfiles/TestProfiles.java Changeset: abc3eaccba73 Author: jlahoda Date: 2013-10-23 23:02 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/abc3eaccba73 8027191: Fix for JDK-8026861 refers to an incorrect bug number Summary: Reverting changeset b05db8c815e8, so that it can be applied again with a correct bug number Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java - test/tools/javac/T8019486/WrongLNTForLambdaTest.java + test/tools/javac/T8019486/WrongLVTForLambdaTest.java Changeset: 864dafc5ab7a Author: jlahoda Date: 2013-10-23 07:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/864dafc5ab7a 8026861: Wrong LineNumberTable for variable declarations in lambdas Summary: Setting or correcting positions for many trees produced by LambdaToMethod. Reviewed-by: vromero, rfield ! src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java + test/tools/javac/T8019486/WrongLNTForLambdaTest.java - test/tools/javac/T8019486/WrongLVTForLambdaTest.java Changeset: 31fe30e2deac Author: ksrini Date: 2013-10-23 15:45 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/31fe30e2deac 8026936: Initialize LamdbaToMethod lazily and as required Reviewed-by: jjg, rfield Contributed-by: jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Changeset: d2fa3f7e964e Author: emc Date: 2013-10-23 23:20 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/d2fa3f7e964e 8006732: support correct bytecode storage of type annotations in multicatch Summary: Fix issue with annotations being added before attribution, which causes multicatch not to work right and several tests to fail. Reviewed-by: jfranck, jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass2.java ! test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass2.out ! test/tools/javac/annotations/typeAnnotations/newlocations/MultiCatch.java ! test/tools/javac/annotations/typeAnnotations/referenceinfos/MultiCatch.java Changeset: 119747cd9f25 Author: emc Date: 2013-10-24 01:27 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/119747cd9f25 8023682: Incorrect attributes emitted for anonymous class declaration Summary: Cause javac to emit type annotations on new instruction as well as anonymous class supertype for annotated anonymous classes. Reviewed-by: jjg, jfranck ! src/share/classes/com/sun/tools/javac/code/TypeAnnotations.java ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/annotations/typeAnnotations/failures/TypeOnAnonClass.java + test/tools/javac/annotations/typeAnnotations/failures/TypeOnAnonClass.out ! test/tools/javac/annotations/typeAnnotations/failures/common/arrays/DeclarationAnnotation.out ! test/tools/javac/annotations/typeAnnotations/newlocations/AnonymousClass.java Changeset: 667843bd2193 Author: bpatel Date: 2013-10-24 11:22 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/667843bd2193 8006248: Since addition of -Xdoclint, javadoc ignores unknown tags Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/ConfigurationImpl.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletManager.java ! src/share/classes/com/sun/tools/doclint/Checker.java ! src/share/classes/com/sun/tools/doclint/DocLint.java ! src/share/classes/com/sun/tools/doclint/Env.java ! src/share/classes/com/sun/tools/javadoc/DocEnv.java ! src/share/classes/com/sun/tools/javadoc/RootDocImpl.java + test/com/sun/javadoc/testCustomTag/TagTestClass.java + test/com/sun/javadoc/testCustomTag/TestCustomTag.java + test/com/sun/javadoc/testCustomTag/taglets/CustomTag.java + test/tools/doclint/CustomTagTest.java + test/tools/doclint/CustomTagTest.out + test/tools/doclint/CustomTagTestWithOption.out ! test/tools/doclint/DocLintTester.java Changeset: 860f1d21763a Author: rfield Date: 2013-10-24 16:52 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/860f1d21763a 8027220: DefaultMethodsTest: Change test to match spec Reviewed-by: ksrini ! test/tools/javac/lambdaShapes/org/openjdk/tests/separate/TestHarness.java ! test/tools/javac/lambdaShapes/org/openjdk/tests/vm/DefaultMethodsTest.java Changeset: 44e3ba40e00c Author: lana Date: 2013-10-28 12:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/44e3ba40e00c Merge Changeset: aa91bc6e8480 Author: mchung Date: 2013-10-30 08:35 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/aa91bc6e8480 8027481: jdeps to handle classes with the same package name and correct profile for javax.crypto.* Reviewed-by: alanb, dfuchs ! src/share/classes/com/sun/tools/jdeps/Analyzer.java ! src/share/classes/com/sun/tools/jdeps/Archive.java ! src/share/classes/com/sun/tools/jdeps/JdepsTask.java ! src/share/classes/com/sun/tools/jdeps/Profile.java ! test/tools/jdeps/Basic.java ! test/tools/jdeps/Test.java + test/tools/jdeps/javax/activity/NotCompactProfile.java + test/tools/jdeps/p/Bar.java Changeset: 537fa895fd74 Author: vromero Date: 2013-10-30 18:09 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/537fa895fd74 8027327: jar files related to test test/tools/javac/ExtDirs/ExtDirTest.java should be removed from the repo Reviewed-by: ksrini ! test/tools/javac/ExtDirs/ExtDirTest.java - test/tools/javac/ExtDirs/ext1/pkg1.jar - test/tools/javac/ExtDirs/ext2/pkg2.jar - test/tools/javac/ExtDirs/ext3/pkg1.jar - test/tools/javac/ExtDirs/ext3/pkg2.jar Changeset: 62a67e0875ff Author: briangoetz Date: 2013-10-30 14:12 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/62a67e0875ff 8024930: Re-enable disabled bridging tests Reviewed-by: psandoz, rfield ! test/tools/javac/lambdaShapes/org/openjdk/tests/separate/Compiler.java ! test/tools/javac/lambdaShapes/org/openjdk/tests/separate/SourceModel.java ! test/tools/javac/lambdaShapes/org/openjdk/tests/separate/TestHarness.java ! test/tools/javac/lambdaShapes/org/openjdk/tests/vm/DefaultMethodsTest.java Changeset: 6b4d6205366c Author: lana Date: 2013-10-31 16:46 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/6b4d6205366c Merge - test/tools/javac/ExtDirs/ext1/pkg1.jar - test/tools/javac/ExtDirs/ext2/pkg2.jar - test/tools/javac/ExtDirs/ext3/pkg1.jar - test/tools/javac/ExtDirs/ext3/pkg2.jar - test/tools/javac/T8019486/WrongLVTForLambdaTest.java Changeset: 3c040b04af05 Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/3c040b04af05 Added tag jdk8-b115 for changeset 6b4d6205366c ! .hgtags From john.coomes at oracle.com Thu Nov 7 23:01:17 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 07 Nov 2013 23:01:17 +0000 Subject: hg: hsx/hotspot-gc/nashorn: 29 new changesets Message-ID: <20131107230153.46D9D62449@hg.openjdk.java.net> Changeset: b01a10c7c7c2 Author: attila Date: 2013-10-17 12:38 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b01a10c7c7c2 8026161: Don't narrow floating-point literals in the lexer Reviewed-by: hannesw, jlaskey ! src/jdk/nashorn/internal/parser/Lexer.java ! src/jdk/nashorn/internal/runtime/JSType.java + test/script/basic/JDK-8026161.js + test/script/basic/JDK-8026161.js.EXPECTED ! test/src/jdk/nashorn/api/javaaccess/MethodAccessTest.java Changeset: a2065f67857c Author: hannesw Date: 2013-10-17 17:33 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/a2065f67857c 8026701: Array.prototype.splice is slow on dense arrays Reviewed-by: lagergren, sundar, jlaskey ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! src/jdk/nashorn/internal/runtime/arrays/ArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/IntArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/LongArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/NumberArrayData.java ! src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java ! test/examples/array-micro.js + test/script/basic/JDK-8026701.js + test/script/basic/JDK-8026701.js.EXPECTED Changeset: 66d27c77b455 Author: hannesw Date: 2013-10-18 12:50 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/66d27c77b455 8026805: Array.prototype.length doesn't work as expected Reviewed-by: sundar, lagergren ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeArray.java ! src/jdk/nashorn/internal/objects/NativeJSAdapter.java + test/script/basic/JDK-8026805.js Changeset: b5b4c98b072b Author: sundar Date: 2013-10-18 18:26 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b5b4c98b072b Merge Changeset: d8aa87d292eb Author: hannesw Date: 2013-10-18 22:42 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/d8aa87d292eb 8026858: Array length does not handle defined properties correctly Reviewed-by: jlaskey ! src/jdk/nashorn/internal/codegen/Lower.java ! src/jdk/nashorn/internal/runtime/PropertyMap.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java + test/script/basic/JDK-8026858.js Changeset: 612886fe324d Author: sundar Date: 2013-10-21 10:09 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/612886fe324d Merge Changeset: f22742d5daa3 Author: kshefov Date: 2013-10-21 13:31 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/f22742d5daa3 8026871: NASHORN TEST: Enable possibility to test Nashorn use of JavaFX canvas. Reviewed-by: jlaskey, sundar ! make/build.xml ! make/project.properties + test/script/jfx.js + test/script/jfx/flyingimage.js + test/script/jfx/flyingimage/flyingimage.png + test/script/jfx/flyingimage/golden/linux.png + test/script/jfx/flyingimage/golden/macosx.png + test/script/jfx/flyingimage/golden/windows.png + test/script/jfx/kaleidoscope.js + test/script/jfx/kaleidoscope/golden/linux.png + test/script/jfx/kaleidoscope/golden/macosx.png + test/script/jfx/kaleidoscope/golden/windows.png Changeset: d8d5b7919c57 Author: sundar Date: 2013-10-22 14:27 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/d8d5b7919c57 8027016: Array.prototype.indexOf should return -1 when array is of length zero Reviewed-by: lagergren, attila ! src/jdk/nashorn/internal/objects/NativeArray.java + test/script/basic/JDK-8027016.js Changeset: 6d339d98074e Author: hannesw Date: 2013-10-22 11:12 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/6d339d98074e 8027015: AutoCloseable no longer implements @FunctionalInterface Reviewed-by: lagergren, sundar ! test/script/basic/NASHORN-397.js Changeset: d24a4fabdce1 Author: hannesw Date: 2013-10-22 11:31 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/d24a4fabdce1 8026955: for-in should convert primitive values to object Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/runtime/ScriptRuntime.java + test/script/basic/JDK-8026955.js + test/script/basic/JDK-8026955.js.EXPECTED Changeset: 360761288b38 Author: sundar Date: 2013-10-22 17:38 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/360761288b38 8027024: String.prototype.charAt and charCodeAt do not evaluate 'self' and 'pos' arguments in right order Reviewed-by: jlaskey, attila, lagergren ! src/jdk/nashorn/internal/objects/NativeString.java ! src/overview.html + test/script/basic/JDK-8027024.js + test/script/basic/JDK-8027024.js.EXPECTED Changeset: d04028e6b624 Author: sundar Date: 2013-10-22 17:47 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/d04028e6b624 Merge Changeset: 0ecbc0188b64 Author: attila Date: 2013-10-22 16:43 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/0ecbc0188b64 8027031: complete merging of loads and converts Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/codegen/BranchOptimizer.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/SpillObjectCreator.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java Changeset: 6f19eb443a47 Author: attila Date: 2013-10-22 17:52 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/6f19eb443a47 8027037: Make ScriptObjectMirror conversions work for any JSObject Reviewed-by: jlaskey, lagergren, sundar ! src/jdk/nashorn/api/scripting/JSObject.java ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java Changeset: eae4e4c1f613 Author: sundar Date: 2013-10-22 22:04 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/eae4e4c1f613 8027020: [regression] java.lang.VerifyError: Bad type on operand stack Reviewed-by: jlaskey, attila ! src/jdk/nashorn/internal/runtime/ScriptLoader.java Changeset: 734f71f8a2c3 Author: sundar Date: 2013-10-22 22:12 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/734f71f8a2c3 Merge Changeset: 5df55690fd5b Author: sundar Date: 2013-10-23 17:30 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/5df55690fd5b 8027128: jdk.nashorn.api.scripting.JSObject should be an interface Reviewed-by: hannesw, attila, jlaskey + src/jdk/nashorn/api/scripting/AbstractJSObject.java ! src/jdk/nashorn/api/scripting/JSObject.java ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/linker/JSObjectLinker.java ! test/script/basic/JDK-8024847.js ! test/script/basic/JDK-8024847.js.EXPECTED ! test/src/jdk/nashorn/api/scripting/PluggableJSObjectTest.java ! test/src/jdk/nashorn/api/scripting/ScriptObjectMirrorTest.java Changeset: f31ee3a2847d Author: sundar Date: 2013-10-23 20:15 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/f31ee3a2847d 8027150: ScriptObjectListAdapter won't work as expected Reviewed-by: jlaskey, attila ! src/jdk/nashorn/internal/runtime/ListAdapter.java - src/jdk/nashorn/internal/runtime/ScriptObjectListAdapter.java Changeset: 640c1854f742 Author: sundar Date: 2013-10-23 20:21 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/640c1854f742 Merge - src/jdk/nashorn/internal/runtime/ScriptObjectListAdapter.java Changeset: 767e85d2a1b3 Author: lana Date: 2013-10-28 12:29 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/767e85d2a1b3 Merge Changeset: 7985ec3782b5 Author: hannesw Date: 2013-10-25 10:20 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/7985ec3782b5 8027042: Evaluation order for binary operators can be improved Reviewed-by: lagergren, jlaskey, attila ! src/jdk/nashorn/internal/codegen/CodeGenerator.java ! src/jdk/nashorn/internal/codegen/types/Type.java ! src/jdk/nashorn/internal/ir/BinaryNode.java ! src/jdk/nashorn/internal/ir/Expression.java ! src/jdk/nashorn/internal/ir/IdentNode.java ! src/jdk/nashorn/internal/ir/LiteralNode.java ! src/jdk/nashorn/internal/ir/TernaryNode.java ! src/jdk/nashorn/internal/ir/UnaryNode.java + test/script/basic/JDK-8027042.js + test/script/basic/JDK-8027042.js.EXPECTED Changeset: 71cfb21c68dc Author: hannesw Date: 2013-10-25 15:21 +0200 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/71cfb21c68dc 8027301: Optimizations for Function.prototype.apply Reviewed-by: jlaskey ! src/jdk/nashorn/internal/runtime/CompiledFunctions.java ! src/jdk/nashorn/internal/runtime/FinalScriptFunctionData.java ! src/jdk/nashorn/internal/runtime/ScriptFunctionData.java Changeset: 406f2b672937 Author: jlaskey Date: 2013-10-29 10:40 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/406f2b672937 Merge Changeset: adab2c628923 Author: jlaskey Date: 2013-10-29 14:22 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/adab2c628923 8027447: The wrong string buffer is specified for stderr in $EXEC Reviewed-by: lagergren, sundar Contributed-by: james.laskey at oracle.com ! src/jdk/nashorn/internal/runtime/ScriptingFunctions.java Changeset: 645197151cc3 Author: jlaskey Date: 2013-10-30 11:28 -0300 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/645197151cc3 8027532: nashorn should only use jdk8 apis in the compact1 profile Reviewed-by: sundar, lagergren, hannesw Contributed-by: james.laskey at oracle.com ! src/jdk/nashorn/internal/ir/debug/ObjectSizeCalculator.java Changeset: a002c1bb88f9 Author: sundar Date: 2013-10-30 20:09 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/a002c1bb88f9 8027562: eval should load second and subsequent arguments for side effect Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8027562.js + test/script/basic/JDK-8027562.js.EXPECTED Changeset: 5ce78473d6c3 Author: sundar Date: 2013-10-31 12:50 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/5ce78473d6c3 Merge Changeset: f0d3ac2474ee Author: lana Date: 2013-10-31 16:47 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/f0d3ac2474ee Merge - src/jdk/nashorn/internal/runtime/ScriptObjectListAdapter.java Changeset: 0fb1a427fbf6 Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/0fb1a427fbf6 Added tag jdk8-b115 for changeset f0d3ac2474ee ! .hgtags From bengt.rutisson at oracle.com Fri Nov 8 06:48:10 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Fri, 08 Nov 2013 07:48:10 +0100 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly In-Reply-To: <52793769.3050403@oracle.com> References: <52744109.5030302@oracle.com> <52793769.3050403@oracle.com> Message-ID: <527C892A.7020307@oracle.com> Hi Jon, On 11/5/13 7:22 PM, Jon Masamitsu wrote: > I've updated the webrev for 8024954 for review > comments (thanks, Bengt) > > http://cr.openjdk.java.net/~jmasa/8024954/webrev.02/ Looks good. Sorry for not replying earlier. The cr.openjdk.java.net server was down my whole workday after you sent this out. And yesterday I had forgotten about it. Bengt > > On 11/1/2013 5:02 PM, Jon Masamitsu wrote: >> 8024483 - assertion failure: (!mirror_alive || loader_alive) failed >> >> The default value of _should_unload_classes in CMSCollector is false. >> The default value of CMSClassUnloadingEnabled is true (changed in jdk8) >> and is used to set the root scanning options. This inconsistency >> leads to >> dead class loaders without unloading classes. >> >> The fix for 8024954 fixes (or works around) this inconsistency by >> resetting >> the root scanning options based on _should_unload_classes. >> >> Additionally there is a missing call to >> update_should_unload_classes() in >> the CMS foreground collector. Adding the call allows the test for >> CMSClassUnloadingEnabled to pass but may not be a complete fix. >> >> http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ >> >> >> 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly >> >> For 8024954 the classes used as roots was being set at initialization >> based on >> the value of CMSClassUnloadingEnabled. For a value of >> CMSClassUnloadingMaxInterval >> greater than 1, the roots need to be set dynamically >> (done in CMSCollector::setup_cms_unloading_and_verification_state >> with this fix). >> >> http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ > > From mikael.gerdin at oracle.com Fri Nov 8 08:40:55 2013 From: mikael.gerdin at oracle.com (Mikael Gerdin) Date: Fri, 08 Nov 2013 09:40:55 +0100 Subject: Request for Review 8024483 - assertion failure: (!mirror_alive || loader_alive) failed AND 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly In-Reply-To: <52793769.3050403@oracle.com> References: <52744109.5030302@oracle.com> <52793769.3050403@oracle.com> Message-ID: <8242235.BaU1qN8NkQ@mgerdin03> Jon, Sorry for not replying earlier. Both changes below look good. /Mikael On Tuesday 05 November 2013 10.22.33 Jon Masamitsu wrote: > I've updated the webrev for 8024954 for review > comments (thanks, Bengt) > > http://cr.openjdk.java.net/~jmasa/8024954/webrev.02/ > > On 11/1/2013 5:02 PM, Jon Masamitsu wrote: > > 8024483 - assertion failure: (!mirror_alive || loader_alive) failed > > > > The default value of _should_unload_classes in CMSCollector is false. > > The default value of CMSClassUnloadingEnabled is true (changed in jdk8) > > and is used to set the root scanning options. This inconsistency leads to > > dead class loaders without unloading classes. > > > > The fix for 8024954 fixes (or works around) this inconsistency by > > resetting > > the root scanning options based on _should_unload_classes. > > > > Additionally there is a missing call to update_should_unload_classes() in > > the CMS foreground collector. Adding the call allows the test for > > CMSClassUnloadingEnabled to pass but may not be a complete fix. > > > > http://cr.openjdk.java.net/~jmasa/8024483/webrev.00/ > > > > > > 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly > > > > For 8024954 the classes used as roots was being set at initialization > > based on > > the value of CMSClassUnloadingEnabled. For a value of > > CMSClassUnloadingMaxInterval > > greater than 1, the roots need to be set dynamically > > (done in CMSCollector::setup_cms_unloading_and_verification_state with > > this fix). > > > > http://cr.openjdk.java.net/~jmasa/8024954/webrev.01/ From yasu at ysfactory.dip.jp Fri Nov 8 12:47:18 2013 From: yasu at ysfactory.dip.jp (Yasumasa Suenaga) Date: Fri, 08 Nov 2013 21:47:18 +0900 Subject: PING: JDK-7090324: gclog rotation via external tool In-Reply-To: <52496A21.8080608@ysfactory.dip.jp> References: <52483BDB.8040206@ysfactory.dip.jp> <52496A21.8080608@ysfactory.dip.jp> Message-ID: <527CDD56.7080106@ysfactory.dip.jp> Hi all, Did someone read my mail? I think that this RFE helps us to watch Java heap on production system. Also I think this RFE is able to be part of the JEP 158 (Unified JVM Logging) . I want to update this RFE in JDK Bug System, but I don't have account. So I've posted email at first. Thanks, Yasumasa On 2013/09/30 21:10, Yasumasa Suenaga wrote: > In previous email, I've attached new patch for this RFE. > It works fine with current hsx. > > > Yasumasa > > On 2013/09/29 23:40, Yasu wrote: >> Hi all, >> >> We are using "logrotate" tool on RHEL for various log rotation. >> Current HotSpot has gclog rotation function for log size base, >> however I need to rotate gc log synchronizing with logrotate tool. >> >> So I've created RFE as "JDK-7090324: gclog rotation via external tool" . >> And Sr. Engineering Manager in Oracle said he use the essence of my patch in one >> of the jcmd subcommands. >> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2011-September/003274.html >> >> 2 years ago, I posted a patch for this RFE. >> But this patch is too old to apply for current HotSpot. >> >> In last month, a similar discussion was appeared in ML. >> So I think it's time to discuss this RFE. >> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2013-August/008029.html >> >> >> Please cooperate. >> >> Best regards, >> Yasumasa > From stefan.johansson at oracle.com Fri Nov 8 17:19:21 2013 From: stefan.johansson at oracle.com (Stefan Johansson) Date: Fri, 08 Nov 2013 18:19:21 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris Message-ID: <527D1D19.8030609@oracle.com> Hi, Please review this small fix for: https://bugs.openjdk.java.net/browse/JDK-8027960 Webrev: http://cr.openjdk.java.net/~sjohanss/8027960/webrev.00/ Summary: The generation sizer needed to have its space-alignment updated when large pages are enabled. Right now only the gen-alignment was updated and then the spaces can grow to large to fit in the generation. Testing: JPRT standard testing JTRG on JPRT Thanks, StefanJ From thomas.schatzl at oracle.com Fri Nov 8 18:03:27 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Fri, 08 Nov 2013 19:03:27 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <527D1D19.8030609@oracle.com> References: <527D1D19.8030609@oracle.com> Message-ID: <1383933807.2632.2.camel@cirrus> Hi, On Fri, 2013-11-08 at 18:19 +0100, Stefan Johansson wrote: > Hi, > > Please review this small fix for: > https://bugs.openjdk.java.net/browse/JDK-8027960 > > Webrev: > http://cr.openjdk.java.net/~sjohanss/8027960/webrev.00/ > > Summary: > The generation sizer needed to have its space-alignment updated when > large pages are enabled. Right now only the gen-alignment was updated > and then the spaces can grow to large to fit in the generation. Looks good, thanks for catching this. Thomas From jon.masamitsu at oracle.com Fri Nov 8 18:52:15 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 08 Nov 2013 10:52:15 -0800 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <527D1D19.8030609@oracle.com> References: <527D1D19.8030609@oracle.com> Message-ID: <527D32DF.1020504@oracle.com> Stefan, Change looks good. There are _gen_alignments and _space_alignments in CollectorPolicy. Where those are initialized there is no calculation of a new_alignment based on page size. For example, void MarkSweepPolicy::initialize_alignments() { _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; _heap_alignment = compute_heap_alignment(); } Should those places be calculating and using a new_alignment? Jon On 11/8/2013 9:19 AM, Stefan Johansson wrote: > Hi, > > Please review this small fix for: > https://bugs.openjdk.java.net/browse/JDK-8027960 > > Webrev: > http://cr.openjdk.java.net/~sjohanss/8027960/webrev.00/ > > Summary: > The generation sizer needed to have its space-alignment updated when > large pages are enabled. Right now only the gen-alignment was updated > and then the spaces can grow to large to fit in the generation. > > Testing: > JPRT standard testing > JTRG on JPRT > > Thanks, > StefanJ From jon.masamitsu at oracle.com Fri Nov 8 19:51:00 2013 From: jon.masamitsu at oracle.com (jon.masamitsu at oracle.com) Date: Fri, 08 Nov 2013 19:51:00 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly. This change is also part of the fix for 8024483. Message-ID: <20131108195102.792316247F@hg.openjdk.java.net> Changeset: 40b8c6bad703 Author: jmasa Date: 2013-10-16 15:14 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/40b8c6bad703 8024954: CMS: CMSClassUnloadingMaxInterval is not implemented correctly. This change is also part of the fix for 8024483. Reviewed-by: mgerdin, brutisso, tschatzl Contributed-by: jwha at google.com ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp From jon.masamitsu at oracle.com Sat Nov 9 01:11:20 2013 From: jon.masamitsu at oracle.com (jon.masamitsu at oracle.com) Date: Sat, 09 Nov 2013 01:11:20 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8024483: assertion failure: (!mirror_alive || loader_alive) failed: Message-ID: <20131109011129.4B0E16249A@hg.openjdk.java.net> Changeset: 592d8b01fedd Author: jmasa Date: 2013-11-08 06:14 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/592d8b01fedd 8024483: assertion failure: (!mirror_alive || loader_alive) failed: Reviewed-by: brutisso, tschatzl, mgerdin ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp From jesper.wilhelmsson at oracle.com Sat Nov 9 22:46:06 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Sat, 09 Nov 2013 23:46:06 +0100 Subject: RFR(XS): JDK-8027911 Assertion in the collector policy when running gc/arguments/TestMaxNewSize.java Message-ID: <527EBB2E.2010801@oracle.com> Hi, Can I have a couple of reviews for this tiny bugfix? Bug JDK-8027911: https://bugs.openjdk.java.net/browse/JDK-8027911 The variable _initial_gen0_size should contain the same value as the flag NewSize. In the collector policy classes the flag and the variable may be updated to match other flags and ergonomics. After these changes the following code is supposed to update NewSize with the new value of _initial_gen0_size, but copy-n-paste made the code use the _max_gen0_size value instead. I didn't make a webrev for this oneline change, I hope that is OK. diff --git a/src/share/vm/memory/collectorPolicy.cpp b/src/share/vm/memory/collectorPolicy.cpp --- a/src/share/vm/memory/collectorPolicy.cpp +++ b/src/share/vm/memory/collectorPolicy.cpp @@ -621,7 +621,7 @@ // Write back to flags if necessary if (NewSize != _initial_gen0_size) { - FLAG_SET_ERGO(uintx, NewSize, _max_gen0_size); + FLAG_SET_ERGO(uintx, NewSize, _initial_gen0_size); } if (MaxNewSize != _max_gen0_size) { Thanks! /Jesper From jesper.wilhelmsson at oracle.com Sat Nov 9 23:17:00 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Sun, 10 Nov 2013 00:17:00 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size Message-ID: <527EC26C.4040008@oracle.com> Hi, Can I have a couple of reviews of this small bugfix. Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() is called with the wrong argument in one place. The last argument should always be the value of _min_gen1_size, but in one call it is the _initial_gen1_size. Since these variables are class local I see no reason to take _min_gen1_size as an argument at all. Apparently it is error prone. The proposed fix is therefore to remove the argument and use _min_gen1_size directly in adjust_gen0_sizes(). Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ Thanks! /Jesper From jesper.wilhelmsson at oracle.com Sat Nov 9 23:35:18 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Sun, 10 Nov 2013 00:35:18 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <527D32DF.1020504@oracle.com> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> Message-ID: <527EC6B6.1080007@oracle.com> Jon Masamitsu skrev 8/11/13 7:52 PM: > Stefan, > > Change looks good. > > There are _gen_alignments and _space_alignments in CollectorPolicy. > Where those are initialized there is no calculation of a new_alignment > based on page size. For example, > > void MarkSweepPolicy::initialize_alignments() { > _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; > _heap_alignment = compute_heap_alignment(); > } > > Should those places be calculating and using a new_alignment? initialize_alignments() have already been executed when new_alignment is calculated. After the new_alignment calculation, only initialize_flags() is re-run, not initialize_alignments(). /Jesper > > Jon > > > On 11/8/2013 9:19 AM, Stefan Johansson wrote: >> Hi, >> >> Please review this small fix for: >> https://bugs.openjdk.java.net/browse/JDK-8027960 >> >> Webrev: >> http://cr.openjdk.java.net/~sjohanss/8027960/webrev.00/ >> >> Summary: >> The generation sizer needed to have its space-alignment updated when large >> pages are enabled. Right now only the gen-alignment was updated and then the >> spaces can grow to large to fit in the generation. >> >> Testing: >> JPRT standard testing >> JTRG on JPRT >> >> Thanks, >> StefanJ > From thomas.schatzl at oracle.com Mon Nov 11 08:51:37 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 11 Nov 2013 09:51:37 +0100 Subject: RFR(XS): JDK-8027911 Assertion in the collector policy when running gc/arguments/TestMaxNewSize.java In-Reply-To: <527EBB2E.2010801@oracle.com> References: <527EBB2E.2010801@oracle.com> Message-ID: <1384159897.2747.3.camel@cirrus> Hi, On Sat, 2013-11-09 at 23:46 +0100, Jesper Wilhelmsson wrote: > Hi, > > Can I have a couple of reviews for this tiny bugfix? > > Bug JDK-8027911: https://bugs.openjdk.java.net/browse/JDK-8027911 > > The variable _initial_gen0_size should contain the same value as the flag > NewSize. In the collector policy classes the flag and the variable may be > updated to match other flags and ergonomics. After these changes the following > code is supposed to update NewSize with the new value of _initial_gen0_size, but > copy-n-paste made the code use the _max_gen0_size value instead. > > I didn't make a webrev for this oneline change, I hope that is OK. > > diff --git a/src/share/vm/memory/collectorPolicy.cpp > b/src/share/vm/memory/collectorPolicy.cpp > --- a/src/share/vm/memory/collectorPolicy.cpp > +++ b/src/share/vm/memory/collectorPolicy.cpp > @@ -621,7 +621,7 @@ > > // Write back to flags if necessary > if (NewSize != _initial_gen0_size) { > - FLAG_SET_ERGO(uintx, NewSize, _max_gen0_size); > + FLAG_SET_ERGO(uintx, NewSize, _initial_gen0_size); > } > > if (MaxNewSize != _max_gen0_size) { Looks good. Thanks, Thomas From thomas.schatzl at oracle.com Mon Nov 11 08:54:44 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 11 Nov 2013 09:54:44 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <527EC26C.4040008@oracle.com> References: <527EC26C.4040008@oracle.com> Message-ID: <1384160084.2747.4.camel@cirrus> Hi, On Sun, 2013-11-10 at 00:17 +0100, Jesper Wilhelmsson wrote: > Hi, > > Can I have a couple of reviews of this small bugfix. > > Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 > > The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() is called > with the wrong argument in one place. The last argument should always be the > value of _min_gen1_size, but in one call it is the _initial_gen1_size. > > Since these variables are class local I see no reason to take _min_gen1_size as > an argument at all. Apparently it is error prone. The proposed fix is therefore > to remove the argument and use _min_gen1_size directly in adjust_gen0_sizes(). > > Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ Looks fine to me. Thomas From bengt.rutisson at oracle.com Mon Nov 11 09:00:26 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Mon, 11 Nov 2013 10:00:26 +0100 Subject: RFR(XS): JDK-8027911 Assertion in the collector policy when running gc/arguments/TestMaxNewSize.java In-Reply-To: <527EBB2E.2010801@oracle.com> References: <527EBB2E.2010801@oracle.com> Message-ID: <52809CAA.9070501@oracle.com> Hi Jesper, Looks good. Bengt On 2013-11-09 23:46, Jesper Wilhelmsson wrote: > Hi, > > Can I have a couple of reviews for this tiny bugfix? > > Bug JDK-8027911: https://bugs.openjdk.java.net/browse/JDK-8027911 > > The variable _initial_gen0_size should contain the same value as the > flag NewSize. In the collector policy classes the flag and the > variable may be updated to match other flags and ergonomics. After > these changes the following code is supposed to update NewSize with > the new value of _initial_gen0_size, but copy-n-paste made the code > use the _max_gen0_size value instead. > > I didn't make a webrev for this oneline change, I hope that is OK. > > > diff --git a/src/share/vm/memory/collectorPolicy.cpp > b/src/share/vm/memory/collectorPolicy.cpp > --- a/src/share/vm/memory/collectorPolicy.cpp > +++ b/src/share/vm/memory/collectorPolicy.cpp > @@ -621,7 +621,7 @@ > > // Write back to flags if necessary > if (NewSize != _initial_gen0_size) { > - FLAG_SET_ERGO(uintx, NewSize, _max_gen0_size); > + FLAG_SET_ERGO(uintx, NewSize, _initial_gen0_size); > } > > if (MaxNewSize != _max_gen0_size) { > > > Thanks! > /Jesper > From thomas.schatzl at oracle.com Mon Nov 11 09:02:41 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 11 Nov 2013 10:02:41 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <527D32DF.1020504@oracle.com> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> Message-ID: <1384160561.2747.10.camel@cirrus> Hi Jon, On Fri, 2013-11-08 at 10:52 -0800, Jon Masamitsu wrote: > Stefan, > > Change looks good. > > There are _gen_alignments and _space_alignments in CollectorPolicy. > Where those are initialized there is no calculation of a new_alignment > based on page size. For example, > > void MarkSweepPolicy::initialize_alignments() { > _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; > _heap_alignment = compute_heap_alignment(); > } > > Should those places be calculating and using a new_alignment? I am not completely sure what the question is, and whether Jesper's reply already replied or not, but as far as I can tell the question seems to be why the MarkSweepPolicy (for serial gc) does not take page size into account for space and generation alignment. As far as I know, only Parallel GC ever did that as it is also the only collector that is NUMA aware, so I assume this is the reason why that collector does. All collectors align the heap alignment to large page size though if large pages are used. Not really an answer, I know - but we can make an rfe/bug from it I think. Thomas From bengt.rutisson at oracle.com Mon Nov 11 09:32:14 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Mon, 11 Nov 2013 10:32:14 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <527EC26C.4040008@oracle.com> References: <527EC26C.4040008@oracle.com> Message-ID: <5280A41E.4040209@oracle.com> Hi Jesper, This looks wrong to me. adjust_gen0_sizes() is first called with the min values to adjust them. Then called with the initial values to adjust them. With your suggested change we suddenly mix min and initial values when we adjust. That seems very strange to me. If the issue is that the min and initial values don't match I think we should add a third step where we explicitly adjust them to match. Something like: adjust_gen0_sizes(&_min_gen0_size, &_min_gen1_size, _min_heap_byte_size, _min_gen1_size); adjust_gen0_sizes(&_initial_gen0_size, &_initial_gen1_size, _initial_heap_byte_size, _initial_gen1_size); adjust_min_and_initial_values(...); Thanks, Bengt On 2013-11-10 00:17, Jesper Wilhelmsson wrote: > Hi, > > Can I have a couple of reviews of this small bugfix. > > Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 > > The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() > is called with the wrong argument in one place. The last argument > should always be the value of _min_gen1_size, but in one call it is > the _initial_gen1_size. > > Since these variables are class local I see no reason to take > _min_gen1_size as an argument at all. Apparently it is error prone. > The proposed fix is therefore to remove the argument and use > _min_gen1_size directly in adjust_gen0_sizes(). > > Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ > > Thanks! > /Jesper From jesper.wilhelmsson at oracle.com Mon Nov 11 11:03:52 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Mon, 11 Nov 2013 12:03:52 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <5280A41E.4040209@oracle.com> References: <527EC26C.4040008@oracle.com> <5280A41E.4040209@oracle.com> Message-ID: <5280B998.7020401@oracle.com> Bengt, The intention of the min_gen1_size argument is to make sure there is space left in the heap for the old generation. The minimum size of the old generation is _min_gen1_size in both cases. In the current code you can see that the argument I want to remove is called min_gen1_size and the code expects to be called with _min_gen1_size at all times. This was also the case before the fix for JDK-8016309, so this bug was actually introduced by the collector policy cleanup. Thanks, /Jesper Bengt Rutisson skrev 11/11/13 10:32 AM: > > Hi Jesper, > > This looks wrong to me. > > adjust_gen0_sizes() is first called with the min values to adjust them. Then > called with the initial values to adjust them. With your suggested change we > suddenly mix min and initial values when we adjust. That seems very strange to me. > > If the issue is that the min and initial values don't match I think we should > add a third step where we explicitly adjust them to match. Something like: > > adjust_gen0_sizes(&_min_gen0_size, &_min_gen1_size, _min_heap_byte_size, > _min_gen1_size); > adjust_gen0_sizes(&_initial_gen0_size, &_initial_gen1_size, > _initial_heap_byte_size, _initial_gen1_size); > adjust_min_and_initial_values(...); > > Thanks, > Bengt > > On 2013-11-10 00:17, Jesper Wilhelmsson wrote: >> Hi, >> >> Can I have a couple of reviews of this small bugfix. >> >> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 >> >> The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() is >> called with the wrong argument in one place. The last argument should always >> be the value of _min_gen1_size, but in one call it is the _initial_gen1_size. >> >> Since these variables are class local I see no reason to take _min_gen1_size >> as an argument at all. Apparently it is error prone. The proposed fix is >> therefore to remove the argument and use _min_gen1_size directly in >> adjust_gen0_sizes(). >> >> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ >> >> Thanks! >> /Jesper > From bengt.rutisson at oracle.com Mon Nov 11 11:56:59 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Mon, 11 Nov 2013 12:56:59 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <5280B998.7020401@oracle.com> References: <527EC26C.4040008@oracle.com> <5280A41E.4040209@oracle.com> <5280B998.7020401@oracle.com> Message-ID: <5280C60B.7030904@oracle.com> Jepser, On 2013-11-11 12:03, Jesper Wilhelmsson wrote: > Bengt, > > The intention of the min_gen1_size argument is to make sure there is > space left in the heap for the old generation. The minimum size of the > old generation is _min_gen1_size in both cases. In the current code > you can see that the argument I want to remove is called min_gen1_size > and the code expects to be called with _min_gen1_size at all times. > This was also the case before the fix for JDK-8016309, so this bug was > actually introduced by the collector policy cleanup. It does not look like the intent of adjust_gen0_sizes() is to always use min_gen1_size. It just has badly named parameters. To me, adjust_gen0_sizes() looks like it takes three values, gen0_size, gen1_size and heap_size, and then adjusts them if they don't match. It's odd that it would also adjust for the min_gen1_size in all cases. That should be done separately. Bengt > > Thanks, > /Jesper > > Bengt Rutisson skrev 11/11/13 10:32 AM: >> >> Hi Jesper, >> >> This looks wrong to me. >> >> adjust_gen0_sizes() is first called with the min values to adjust >> them. Then >> called with the initial values to adjust them. With your suggested >> change we >> suddenly mix min and initial values when we adjust. That seems very >> strange to me. >> >> If the issue is that the min and initial values don't match I think >> we should >> add a third step where we explicitly adjust them to match. Something >> like: >> >> adjust_gen0_sizes(&_min_gen0_size, &_min_gen1_size, _min_heap_byte_size, >> _min_gen1_size); >> adjust_gen0_sizes(&_initial_gen0_size, &_initial_gen1_size, >> _initial_heap_byte_size, _initial_gen1_size); >> adjust_min_and_initial_values(...); >> >> Thanks, >> Bengt >> >> On 2013-11-10 00:17, Jesper Wilhelmsson wrote: >>> Hi, >>> >>> Can I have a couple of reviews of this small bugfix. >>> >>> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 >>> >>> The problem is that >>> TwoGenerationCollectorPolicy::adjust_gen0_sizes() is >>> called with the wrong argument in one place. The last argument >>> should always >>> be the value of _min_gen1_size, but in one call it is the >>> _initial_gen1_size. >>> >>> Since these variables are class local I see no reason to take >>> _min_gen1_size >>> as an argument at all. Apparently it is error prone. The proposed >>> fix is >>> therefore to remove the argument and use _min_gen1_size directly in >>> adjust_gen0_sizes(). >>> >>> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ >>> >>> Thanks! >>> /Jesper >> From bengt.rutisson at oracle.com Mon Nov 11 12:31:57 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Mon, 11 Nov 2013 13:31:57 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <5280C60B.7030904@oracle.com> References: <527EC26C.4040008@oracle.com> <5280A41E.4040209@oracle.com> <5280B998.7020401@oracle.com> <5280C60B.7030904@oracle.com> Message-ID: <5280CE3D.8050904@oracle.com> Hi all, I talked this through with Jesper. He convinced me that the behavior after this change is the same as before JDK-8016309. But there are probably bugs lurking in this code. It is very strange that we mix min and initial values in the adjust methods. However, I'm fine with pushing this change since it reverts to the old behavior. Bengt On 2013-11-11 12:56, Bengt Rutisson wrote: > > Jepser, > > On 2013-11-11 12:03, Jesper Wilhelmsson wrote: >> Bengt, >> >> The intention of the min_gen1_size argument is to make sure there is >> space left in the heap for the old generation. The minimum size of >> the old generation is _min_gen1_size in both cases. In the current >> code you can see that the argument I want to remove is called >> min_gen1_size and the code expects to be called with _min_gen1_size >> at all times. This was also the case before the fix for JDK-8016309, >> so this bug was actually introduced by the collector policy cleanup. > > It does not look like the intent of adjust_gen0_sizes() is to always > use min_gen1_size. It just has badly named parameters. > > To me, adjust_gen0_sizes() looks like it takes three values, > gen0_size, gen1_size and heap_size, and then adjusts them if they > don't match. It's odd that it would also adjust for the min_gen1_size > in all cases. That should be done separately. > > Bengt > >> >> Thanks, >> /Jesper >> >> Bengt Rutisson skrev 11/11/13 10:32 AM: >>> >>> Hi Jesper, >>> >>> This looks wrong to me. >>> >>> adjust_gen0_sizes() is first called with the min values to adjust >>> them. Then >>> called with the initial values to adjust them. With your suggested >>> change we >>> suddenly mix min and initial values when we adjust. That seems very >>> strange to me. >>> >>> If the issue is that the min and initial values don't match I think >>> we should >>> add a third step where we explicitly adjust them to match. Something >>> like: >>> >>> adjust_gen0_sizes(&_min_gen0_size, &_min_gen1_size, >>> _min_heap_byte_size, >>> _min_gen1_size); >>> adjust_gen0_sizes(&_initial_gen0_size, &_initial_gen1_size, >>> _initial_heap_byte_size, _initial_gen1_size); >>> adjust_min_and_initial_values(...); >>> >>> Thanks, >>> Bengt >>> >>> On 2013-11-10 00:17, Jesper Wilhelmsson wrote: >>>> Hi, >>>> >>>> Can I have a couple of reviews of this small bugfix. >>>> >>>> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 >>>> >>>> The problem is that >>>> TwoGenerationCollectorPolicy::adjust_gen0_sizes() is >>>> called with the wrong argument in one place. The last argument >>>> should always >>>> be the value of _min_gen1_size, but in one call it is the >>>> _initial_gen1_size. >>>> >>>> Since these variables are class local I see no reason to take >>>> _min_gen1_size >>>> as an argument at all. Apparently it is error prone. The proposed >>>> fix is >>>> therefore to remove the argument and use _min_gen1_size directly in >>>> adjust_gen0_sizes(). >>>> >>>> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ >>>> >>>> Thanks! >>>> /Jesper >>> > From stefan.johansson at oracle.com Mon Nov 11 13:23:03 2013 From: stefan.johansson at oracle.com (Stefan Johansson) Date: Mon, 11 Nov 2013 14:23:03 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <1384160561.2747.10.camel@cirrus> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> <1384160561.2747.10.camel@cirrus> Message-ID: <5280DA37.5040001@oracle.com> On 2013-11-11 10:02, Thomas Schatzl wrote: > Hi Jon, > > On Fri, 2013-11-08 at 10:52 -0800, Jon Masamitsu wrote: >> Stefan, >> >> Change looks good. Thanks for looking at this. >> >> There are _gen_alignments and _space_alignments in CollectorPolicy. >> Where those are initialized there is no calculation of a new_alignment >> based on page size. For example, >> >> void MarkSweepPolicy::initialize_alignments() { >> _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; >> _heap_alignment = compute_heap_alignment(); >> } >> >> Should those places be calculating and using a new_alignment? > I am not completely sure what the question is, and whether Jesper's > reply already replied or not, but as far as I can tell the question > seems to be why the MarkSweepPolicy (for serial gc) does not take page > size into account for space and generation alignment. > > As far as I know, only Parallel GC ever did that as it is also the only > collector that is NUMA aware, so I assume this is the reason why that > collector does. All collectors align the heap alignment to large page > size though if large pages are used. > > Not really an answer, I know - but we can make an rfe/bug from it I > think. > > Thomas > Thanks Jesper and Thomas for your input on this. I agree that we might want to look at having spaces and generations page-aligned for all collectors. Jon, if you are satisfied with those answers I'll go ahead and get this patch pushed. Cheers, Stefan From stefan.johansson at oracle.com Mon Nov 11 13:23:49 2013 From: stefan.johansson at oracle.com (Stefan Johansson) Date: Mon, 11 Nov 2013 14:23:49 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <1383933807.2632.2.camel@cirrus> References: <527D1D19.8030609@oracle.com> <1383933807.2632.2.camel@cirrus> Message-ID: <5280DA65.4050709@oracle.com> On 2013-11-08 19:03, Thomas Schatzl wrote: > Hi, > > On Fri, 2013-11-08 at 18:19 +0100, Stefan Johansson wrote: >> Hi, >> >> Please review this small fix for: >> https://bugs.openjdk.java.net/browse/JDK-8027960 >> >> Webrev: >> http://cr.openjdk.java.net/~sjohanss/8027960/webrev.00/ >> >> Summary: >> The generation sizer needed to have its space-alignment updated when >> large pages are enabled. Right now only the gen-alignment was updated >> and then the spaces can grow to large to fit in the generation. > Looks good, thanks for catching this. > > Thomas > Thanks Thomas! Cheers, Stefan From thomas.schatzl at oracle.com Mon Nov 11 13:56:50 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 11 Nov 2013 14:56:50 +0100 Subject: Parallelizing symbol table/string table scan Message-ID: <1384178210.11800.32.camel@cirrus> Hi all, recently we (the gc team) noticed severe performance issues with symbol table and string table scan during remark. Basically, in G1 these pauses are the largest pauses on a reasonably tuned system. Also, in particular, symbol table scan alone takes 50% of total remark time. String table scan takes another 13%. At least symbol table scan is a pretty big issue. The simple approach to those is to parallelize these tasks of course, however I would like to query you for comments or suggestions :) (I am simply throwing some ideas on the wall, in the hope something sticks...) One idea that came up to optimize that further has been to not do string table or symbol table scrubbing after gc at all if no class unloading has been done, assuming that the amount of dead entries are zero anyway. This is (imo) true for the string table at least (because they are strong roots if not doing class unloading), but I am not so sure about the symbol table. You probably have more experience about the use of the symbol table, so any ideas what could cause symbol table entries to get stale other than class unloading, and if so, is this a big concern? Another option would be to do this symbol table scrubbing only after a certain amount of operations on the symbols, not sure if there is an indicator (that does not decrease perf for retrieving too much) for that. Another idea, again for the symbol table is to scrub it either incrementally (eg. depending on available time), or concurrently. I.e. some background task periodically waking up and scrubbing (parts of) the symbol table. Comments, suggestions? I also created a few RFEs for these issues, see Symbol table: https://bugs.openjdk.java.net/browse/JDK-8027455 https://bugs.openjdk.java.net/browse/JDK-8027543 String table: https://bugs.openjdk.java.net/browse/JDK-8027454 https://bugs.openjdk.java.net/browse/JDK-8027476 Thomas From jesper.wilhelmsson at oracle.com Mon Nov 11 15:12:18 2013 From: jesper.wilhelmsson at oracle.com (jesper.wilhelmsson at oracle.com) Date: Mon, 11 Nov 2013 15:12:18 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 3 new changesets Message-ID: <20131111151224.E6F2A624F9@hg.openjdk.java.net> Changeset: 3ad2b68d107e Author: jwilhelm Date: 2013-11-10 00:07 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/3ad2b68d107e 8027911: Assertion in the collector policy when running gc/arguments/TestMaxNewSize.java Summary: Update NewSize when _initial_gen0_size is changed Reviewed-by: tschatzl, brutisso ! src/share/vm/memory/collectorPolicy.cpp Changeset: 236cecd9ec97 Author: jwilhelm Date: 2013-11-11 13:50 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/236cecd9ec97 8028093: Initial young size is smaller than minimum young size Summary: Remove min_gen1_size argument from adjust_gen0_sizes() Reviewed-by: tschatzl, brutisso ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp Changeset: bde526e3667e Author: jwilhelm Date: 2013-11-11 05:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/bde526e3667e Merge From jesper.wilhelmsson at oracle.com Mon Nov 11 15:41:41 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Mon, 11 Nov 2013 16:41:41 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <5280CE3D.8050904@oracle.com> References: <527EC26C.4040008@oracle.com> <5280A41E.4040209@oracle.com> <5280B998.7020401@oracle.com> <5280C60B.7030904@oracle.com> <5280CE3D.8050904@oracle.com> Message-ID: <5280FAB5.9060703@oracle.com> Thanks for the review Bengt! /Jesper Bengt Rutisson skrev 11/11/13 1:31 PM: > > Hi all, > > I talked this through with Jesper. > > He convinced me that the behavior after this change is the same as before > JDK-8016309. But there are probably bugs lurking in this code. It is very > strange that we mix min and initial values in the adjust methods. > > However, I'm fine with pushing this change since it reverts to the old behavior. > > Bengt > > > On 2013-11-11 12:56, Bengt Rutisson wrote: >> >> Jepser, >> >> On 2013-11-11 12:03, Jesper Wilhelmsson wrote: >>> Bengt, >>> >>> The intention of the min_gen1_size argument is to make sure there is space >>> left in the heap for the old generation. The minimum size of the old >>> generation is _min_gen1_size in both cases. In the current code you can see >>> that the argument I want to remove is called min_gen1_size and the code >>> expects to be called with _min_gen1_size at all times. This was also the case >>> before the fix for JDK-8016309, so this bug was actually introduced by the >>> collector policy cleanup. >> >> It does not look like the intent of adjust_gen0_sizes() is to always use >> min_gen1_size. It just has badly named parameters. >> >> To me, adjust_gen0_sizes() looks like it takes three values, gen0_size, >> gen1_size and heap_size, and then adjusts them if they don't match. It's odd >> that it would also adjust for the min_gen1_size in all cases. That should be >> done separately. >> >> Bengt >> >>> >>> Thanks, >>> /Jesper >>> >>> Bengt Rutisson skrev 11/11/13 10:32 AM: >>>> >>>> Hi Jesper, >>>> >>>> This looks wrong to me. >>>> >>>> adjust_gen0_sizes() is first called with the min values to adjust them. Then >>>> called with the initial values to adjust them. With your suggested change we >>>> suddenly mix min and initial values when we adjust. That seems very strange >>>> to me. >>>> >>>> If the issue is that the min and initial values don't match I think we should >>>> add a third step where we explicitly adjust them to match. Something like: >>>> >>>> adjust_gen0_sizes(&_min_gen0_size, &_min_gen1_size, _min_heap_byte_size, >>>> _min_gen1_size); >>>> adjust_gen0_sizes(&_initial_gen0_size, &_initial_gen1_size, >>>> _initial_heap_byte_size, _initial_gen1_size); >>>> adjust_min_and_initial_values(...); >>>> >>>> Thanks, >>>> Bengt >>>> >>>> On 2013-11-10 00:17, Jesper Wilhelmsson wrote: >>>>> Hi, >>>>> >>>>> Can I have a couple of reviews of this small bugfix. >>>>> >>>>> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 >>>>> >>>>> The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() is >>>>> called with the wrong argument in one place. The last argument should always >>>>> be the value of _min_gen1_size, but in one call it is the _initial_gen1_size. >>>>> >>>>> Since these variables are class local I see no reason to take _min_gen1_size >>>>> as an argument at all. Apparently it is error prone. The proposed fix is >>>>> therefore to remove the argument and use _min_gen1_size directly in >>>>> adjust_gen0_sizes(). >>>>> >>>>> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ >>>>> >>>>> Thanks! >>>>> /Jesper >>>> >> > From jesper.wilhelmsson at oracle.com Mon Nov 11 15:42:15 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Mon, 11 Nov 2013 16:42:15 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <1384160084.2747.4.camel@cirrus> References: <527EC26C.4040008@oracle.com> <1384160084.2747.4.camel@cirrus> Message-ID: <5280FAD7.5080407@oracle.com> Thanks! /Jesper Thomas Schatzl skrev 11/11/13 9:54 AM: > Hi, > > On Sun, 2013-11-10 at 00:17 +0100, Jesper Wilhelmsson wrote: >> Hi, >> >> Can I have a couple of reviews of this small bugfix. >> >> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 >> >> The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() is called >> with the wrong argument in one place. The last argument should always be the >> value of _min_gen1_size, but in one call it is the _initial_gen1_size. >> >> Since these variables are class local I see no reason to take _min_gen1_size as >> an argument at all. Apparently it is error prone. The proposed fix is therefore >> to remove the argument and use _min_gen1_size directly in adjust_gen0_sizes(). >> >> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ > > Looks fine to me. > > Thomas > From karen.kinnear at oracle.com Mon Nov 11 15:46:46 2013 From: karen.kinnear at oracle.com (Karen Kinnear) Date: Mon, 11 Nov 2013 10:46:46 -0500 Subject: Parallelizing symbol table/string table scan In-Reply-To: <1384178210.11800.32.camel@cirrus> References: <1384178210.11800.32.camel@cirrus> Message-ID: <45624C30-7EA4-4BD8-BD7F-0766A8EA5329@oracle.com> Thank you for asking and for filing RFEs - this is so much better than a webrev as the first sighting :-) On Nov 11, 2013, at 8:56 AM, Thomas Schatzl wrote: > Hi all, > > recently we (the gc team) noticed severe performance issues with > symbol table and string table scan during remark. > > Basically, in G1 these pauses are the largest pauses on a reasonably > tuned system. Also, in particular, symbol table scan alone takes 50% of > total remark time. String table scan takes another 13%. > > At least symbol table scan is a pretty big issue. > > The simple approach to those is to parallelize these tasks of course, > however I would like to query you for comments or suggestions :) > (I am simply throwing some ideas on the wall, in the hope something > sticks...) I don't see any reason not to parallelize the scanning. > > One idea that came up to optimize that further has been to not do string > table or symbol table scrubbing after gc at all if no class unloading > has been done, assuming that the amount of dead entries are zero anyway. Just to clarify - there are temp Symbols in the symbol table - so the number of dead entries with no class unloading will be close to zero, i.e. small enough that your suggestion of not doing scrubbing unless there has been class loading makes sense - just don't assume zero. > > This is (imo) true for the string table at least (because they are > strong roots if not doing class unloading), but I am not so sure about > the symbol table. > You probably have more experience about the use of the symbol table, so > any ideas what could cause symbol table entries to get stale other than > class unloading, and if so, is this a big concern? > > Another option would be to do this symbol table scrubbing only after a > certain amount of operations on the symbols, not sure if there is an > indicator (that does not decrease perf for retrieving too much) for > that. > > Another idea, again for the symbol table is to scrub it either > incrementally (eg. depending on available time), or concurrently. I.e. > some background task periodically waking up and scrubbing (parts of) the > symbol table. The tables are read lock-free, with the assumption that they only have entries removed at a safepoint. If you keep that assumption, you should be able to do incremental scrubbing. hope this helps, Karen > > Comments, suggestions? > > I also created a few RFEs for these issues, see > > Symbol table: > https://bugs.openjdk.java.net/browse/JDK-8027455 > https://bugs.openjdk.java.net/browse/JDK-8027543 > String table: > https://bugs.openjdk.java.net/browse/JDK-8027454 > https://bugs.openjdk.java.net/browse/JDK-8027476 > > Thomas > From thomas.schatzl at oracle.com Mon Nov 11 16:31:12 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 11 Nov 2013 17:31:12 +0100 Subject: Parallelizing symbol table/string table scan In-Reply-To: <45624C30-7EA4-4BD8-BD7F-0766A8EA5329@oracle.com> References: <1384178210.11800.32.camel@cirrus> <45624C30-7EA4-4BD8-BD7F-0766A8EA5329@oracle.com> Message-ID: <1384187472.11800.82.camel@cirrus> Hi Karen, On Mon, 2013-11-11 at 10:46 -0500, Karen Kinnear wrote: > Thank you for asking and for filing RFEs - this is so much better than a webrev > as the first sighting :-) :) > On Nov 11, 2013, at 8:56 AM, Thomas Schatzl wrote: > > > Hi all, > > > > recently we (the gc team) noticed severe performance issues with > > symbol table and string table scan during remark. > > > > Basically, in G1 these pauses are the largest pauses on a reasonably > > tuned system. Also, in particular, symbol table scan alone takes 50% of > > total remark time. String table scan takes another 13%. > > > > At least symbol table scan is a pretty big issue. > > > > The simple approach to those is to parallelize these tasks of course, > > however I would like to query you for comments or suggestions :) > > (I am simply throwing some ideas on the wall, in the hope something > > sticks...) > I don't see any reason not to parallelize the scanning. That's on the agenda anyway - as soon as there is class unloading during remark, we need to look at the symbol table more quickly than it is done right now. > > One idea that came up to optimize that further has been to not do string > > table or symbol table scrubbing after gc at all if no class unloading > > has been done, assuming that the amount of dead entries are zero anyway. > > Just to clarify - there are temp Symbols in the symbol table - so the number > of dead entries with no class unloading will be close to zero, i.e. small enough > that your suggestion of not doing scrubbing unless there has been class loading > makes sense - just don't assume zero. Thanks for the information, that's exactly what we need. Do you have any idea (statistics) about the number of these temp symbols compared to ones generated by class loading? Is there a way to distinguish them easily? (So that I can implement statistics myselves). I.e. would it make sense to split the symbol table into two tables, one for temp symbols and one for symbols generated by class loading? So that we could always have a look at the temp symbols, but only at others during class loading? Are these temp symbols separate from the class loading symbols, e.g. is there a possibility to have temp symbols to look like "class loading" symbols, and the other way around? > > This is (imo) true for the string table at least (because they are > > strong roots if not doing class unloading), but I am not so sure about > > the symbol table. > > You probably have more experience about the use of the symbol table, so > > any ideas what could cause symbol table entries to get stale other than > > class unloading, and if so, is this a big concern? > > > > Another option would be to do this symbol table scrubbing only after a > > certain amount of operations on the symbols, not sure if there is an > > indicator (that does not decrease perf for retrieving too much) for > > that. > > > > Another idea, again for the symbol table is to scrub it either > > incrementally (eg. depending on available time), or concurrently. I.e. > > some background task periodically waking up and scrubbing (parts of) the > > symbol table. > > The tables are read lock-free, with the assumption that they only have > entries removed at a safepoint. If you keep that assumption, you should be > able to do incremental scrubbing. Thanks, Thomas From mikael.gerdin at oracle.com Mon Nov 11 16:45:04 2013 From: mikael.gerdin at oracle.com (mikael.gerdin at oracle.com) Date: Mon, 11 Nov 2013 16:45:04 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 25 new changesets Message-ID: <20131111164556.511F5624FF@hg.openjdk.java.net> Changeset: ea79ab313e98 Author: mgerdin Date: 2013-10-30 15:35 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/ea79ab313e98 8027252: Crash in interpreter because get_unsigned_2_byte_index_at_bcp reads 4 bytes Summary: Use 2-byte loads to load indexes from the byte code stream to avoid out of bounds reads. Reviewed-by: coleenp, sspitsyn ! src/cpu/x86/vm/interp_masm_x86_32.cpp ! src/cpu/x86/vm/interp_masm_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp Changeset: fdd464c8d62e Author: acorn Date: 2013-10-30 09:11 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/fdd464c8d62e 8027304: Lambda: inheriting abstract + 1 default -> default, not ICCE Reviewed-by: hseigel, zgu ! src/share/vm/classfile/defaultMethods.cpp Changeset: 4fe7815b04f5 Author: acorn Date: 2013-10-30 09:26 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/4fe7815b04f5 Merge Changeset: c8fc12209830 Author: coleenp Date: 2013-10-31 14:11 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/c8fc12209830 8027616: Off by one error in putback for compressed oops nashorn performance improvement Summary: Should compare bounds greater than or equal 4G when deciding if shift is needed or CDS area + compressed class space are within 4G of each other. Reviewed-by: stefank, hseigel, zgu ! src/share/vm/memory/metaspace.cpp Changeset: 910026b800b8 Author: coleenp Date: 2013-11-01 10:32 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/910026b800b8 8026946: JvmtiEnv::SetBreakpoint and JvmtiEnv::ClearBreakpoint should use MethodHandle 8026948: JvmtiEnv::SetBreakpoint and JvmtiEnv::ClearBreakpoint might not work with anonymous classes Summary: Walk methods in breakpoints for marking on stack so they aren't deallocated by redefine classes. Use class_holder rather than class_loader to keep GC from reclaiming class owning the method. Reviewed-by: sspitsyn, ehelin, sla ! src/share/vm/classfile/metadataOnStackMark.cpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/jvmtiImpl.hpp Changeset: 42790b7e4d48 Author: mgronlun Date: 2013-11-01 15:56 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/42790b7e4d48 Merge ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp Changeset: f8b56489e455 Author: mgronlun Date: 2013-11-01 17:10 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/f8b56489e455 Merge Changeset: 04df110c8655 Author: mgronlun Date: 2013-11-02 20:56 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/04df110c8655 Merge Changeset: 208ebea980f8 Author: roland Date: 2013-11-04 21:59 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/208ebea980f8 8027445: SIGSEGV at TestFloatingDecimal.testAppendToDouble()I Summary: String.equals() intrinsic shouldn't use integer length input in pointer arithmetic without an i2l. Reviewed-by: kvn, twisti ! src/cpu/sparc/vm/sparc.ad + test/compiler/intrinsics/stringequals/TestStringEqualsBadLength.java Changeset: e428d5e768e3 Author: rbackman Date: 2013-11-04 10:44 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e428d5e768e3 8027622: java.time.Instant.create failing since hs25-b56 Reviewed-by: kvn, iveresov ! src/share/vm/opto/compile.cpp + test/compiler/intrinsics/mathexact/CompareTest.java Changeset: a905d33ce13a Author: iveresov Date: 2013-11-05 00:59 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/a905d33ce13a 8027751: C1 crashes in Weblogic with G1 enabled Summary: Keep T_OBJECT operands in registers for logical operations on x64 Reviewed-by: kvn, roland ! src/share/vm/c1/c1_LinearScan.cpp + test/compiler/regalloc/C1ObjectSpillInLogicOp.java Changeset: 94a83e0f9ce1 Author: iveresov Date: 2013-11-05 01:57 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/94a83e0f9ce1 8017065: C2 allows safepoint checks to leak into G1 pre-barriers Summary: Make all raw loads strictly respect control dependencies, make sure RCE doesn't move raw loads, add verification of G1 pre-barriers. Reviewed-by: kvn, roland ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/memnode.hpp Changeset: 613e6a6fc328 Author: iveresov Date: 2013-11-05 02:29 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/613e6a6fc328 Merge ! src/share/vm/opto/compile.cpp Changeset: be525e91f65b Author: mikael Date: 2013-11-06 06:51 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/be525e91f65b 8026775: nsk/jvmti/RedefineClasses/StressRedefine crashes due to EXCEPTION_ACCESS_VIOLATION Summary: Uncommon trap blob did not bang all the stack shadow pages Reviewed-by: kvn, twisti, iveresov, jrose ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/share/vm/asm/assembler.cpp + test/compiler/uncommontrap/UncommonTrapStackBang.java Changeset: 53662b2f1d68 Author: drchase Date: 2013-11-07 10:02 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/53662b2f1d68 Merge Changeset: e39b138b2518 Author: acorn Date: 2013-10-19 18:32 -0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e39b138b2518 8026893: Push 8026365 to TL early and add test Reviewed-by: dcubed, kamg ! src/share/vm/classfile/verifier.cpp ! test/TEST.groups + test/runtime/8026365/InvokeSpecialAnonTest.java Changeset: 0e55a181cb08 Author: lana Date: 2013-10-28 12:25 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/0e55a181cb08 Merge - src/share/vm/memory/metablock.cpp - src/share/vm/memory/metablock.hpp - test/compiler/8013496/Test8013496.sh - test/gc/7168848/HumongousAlloc.java Changeset: ea1b8c643fc8 Author: lana Date: 2013-10-30 13:43 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/ea1b8c643fc8 Merge - test/compiler/intrinsics/mathexact/CondTest.java - test/compiler/intrinsics/mathexact/ConstantTest.java - test/compiler/intrinsics/mathexact/LoadTest.java - test/compiler/intrinsics/mathexact/LoopDependentTest.java - test/compiler/intrinsics/mathexact/NonConstantTest.java - test/compiler/intrinsics/mathexact/RepeatTest.java Changeset: 205834867346 Author: lana Date: 2013-10-31 16:31 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/205834867346 Merge Changeset: 9ebaac78a8a0 Author: amurillo Date: 2013-11-05 14:06 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/9ebaac78a8a0 Merge Changeset: 842b6ce4dfb4 Author: cl Date: 2013-11-07 08:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/842b6ce4dfb4 Added tag jdk8-b115 for changeset 9ebaac78a8a0 ! .hgtags Changeset: e510dfdec6dd Author: amurillo Date: 2013-11-08 07:02 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e510dfdec6dd Merge Changeset: 52b076e6ffae Author: amurillo Date: 2013-11-08 07:02 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/52b076e6ffae Added tag hs25-b58 for changeset e510dfdec6dd ! .hgtags Changeset: 20c72bec2707 Author: amurillo Date: 2013-11-08 07:13 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/20c72bec2707 8028061: new hotspot build - hs25-b59 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 11b116661830 Author: mgerdin Date: 2013-11-11 16:20 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/11b116661830 Merge ! src/share/vm/memory/metaspace.cpp From jon.masamitsu at oracle.com Mon Nov 11 18:14:00 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 11 Nov 2013 10:14:00 -0800 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <527EC26C.4040008@oracle.com> References: <527EC26C.4040008@oracle.com> Message-ID: <52811E68.7090403@oracle.com> On 11/9/13 3:17 PM, Jesper Wilhelmsson wrote: > Hi, > > Can I have a couple of reviews of this small bugfix. > > Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 > > The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() > is called with the wrong argument in one place. The last argument > should always be the value of _min_gen1_size, but in one call it is > the _initial_gen1_size. > > Since these variables are class local I see no reason to take > _min_gen1_size as an argument at all. Apparently it is error prone. > The proposed fix is therefore to remove the argument and use > _min_gen1_size directly in adjust_gen0_sizes(). I've been looking at recent versions of the TwoGenerationCollectorPolicy::initialize_size_info() and it seems like the change that causes the assertion failure was from _min_gen1_size = OldSize; to _min_gen1_size = MIN2(OldSize, _min_heap_byte_size - _min_gen0_size); Is that right? Before that change _min_gen_size and _initial_gen1_size were the same value in the call path where adjust_gen0_sizes() is called. Jon > > Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ > > Thanks! > /Jesper From jon.masamitsu at oracle.com Mon Nov 11 19:56:30 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 11 Nov 2013 11:56:30 -0800 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <5280DA37.5040001@oracle.com> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> <1384160561.2747.10.camel@cirrus> <5280DA37.5040001@oracle.com> Message-ID: <5281366E.1070407@oracle.com> On 11/11/13 5:23 AM, Stefan Johansson wrote: > On 2013-11-11 10:02, Thomas Schatzl wrote: >> Hi Jon, >> >> On Fri, 2013-11-08 at 10:52 -0800, Jon Masamitsu wrote: >>> Stefan, >>> >>> Change looks good. > Thanks for looking at this. >>> >>> There are _gen_alignments and _space_alignments in CollectorPolicy. >>> Where those are initialized there is no calculation of a new_alignment >>> based on page size. For example, >>> >>> void MarkSweepPolicy::initialize_alignments() { >>> _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; >>> _heap_alignment = compute_heap_alignment(); >>> } >>> >>> Should those places be calculating and using a new_alignment? >> I am not completely sure what the question is, and whether Jesper's >> reply already replied or not, but as far as I can tell the question >> seems to be why the MarkSweepPolicy (for serial gc) does not take page >> size into account for space and generation alignment. >> >> As far as I know, only Parallel GC ever did that as it is also the only >> collector that is NUMA aware, so I assume this is the reason why that >> collector does. All collectors align the heap alignment to large page >> size though if large pages are used. >> >> Not really an answer, I know - but we can make an rfe/bug from it I >> think. >> >> Thomas >> > Thanks Jesper and Thomas for your input on this. I agree that we might > want to look at having spaces and generations page-aligned for all > collectors. > > Jon, if you are satisfied with those answers I'll go ahead and get > this patch pushed. > Yes, go ahead and push. My comments did not have direct bearing on your changes (which are correct). Jon > Cheers, > Stefan From jon.masamitsu at oracle.com Mon Nov 11 20:06:25 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 11 Nov 2013 12:06:25 -0800 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <1384160561.2747.10.camel@cirrus> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> <1384160561.2747.10.camel@cirrus> Message-ID: <528138C1.2010509@oracle.com> On 11/11/13 1:02 AM, Thomas Schatzl wrote: > Hi Jon, > > On Fri, 2013-11-08 at 10:52 -0800, Jon Masamitsu wrote: >> Stefan, >> >> Change looks good. >> >> There are _gen_alignments and _space_alignments in CollectorPolicy. >> Where those are initialized there is no calculation of a new_alignment >> based on page size. For example, >> >> void MarkSweepPolicy::initialize_alignments() { >> _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; >> _heap_alignment = compute_heap_alignment(); >> } >> >> Should those places be calculating and using a new_alignment? > I am not completely sure what the question is, and whether Jesper's > reply already replied or not, but as far as I can tell the question > seems to be why the MarkSweepPolicy (for serial gc) does not take page > size into account for space and generation alignment. Yes. That's basically the question. The change was made for ParallelGC. Were similar changes needed elsewhere. > As far as I know, only Parallel GC ever did that as it is also the only > collector that is NUMA aware, so I assume this is the reason why that > collector does. All collectors align the heap alignment to large page > size though if large pages are used. I didn't realize that the assertion failure had to do with NUMA. Can you explain more? Thanks. Jon > > Not really an answer, I know - but we can make an rfe/bug from it I > think. > > Thomas > From jesper.wilhelmsson at oracle.com Mon Nov 11 20:21:42 2013 From: jesper.wilhelmsson at oracle.com (Jesper Wilhelmsson) Date: Mon, 11 Nov 2013 21:21:42 +0100 Subject: RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size In-Reply-To: <52811E68.7090403@oracle.com> References: <527EC26C.4040008@oracle.com> <52811E68.7090403@oracle.com> Message-ID: <52813C56.6000900@oracle.com> Hi Jon, On 11/11/13 19:14, Jon Masamitsu wrote: > > On 11/9/13 3:17 PM, Jesper Wilhelmsson wrote: >> Hi, >> >> Can I have a couple of reviews of this small bugfix. >> >> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093 >> >> The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes() is >> called with the wrong argument in one place. The last argument should always >> be the value of _min_gen1_size, but in one call it is the _initial_gen1_size. >> >> Since these variables are class local I see no reason to take _min_gen1_size >> as an argument at all. Apparently it is error prone. The proposed fix is >> therefore to remove the argument and use _min_gen1_size directly in >> adjust_gen0_sizes(). > I've been looking at recent versions of the > TwoGenerationCollectorPolicy::initialize_size_info() > and it seems like the change that causes the assertion failure was from > > _min_gen1_size = OldSize; > > to > > _min_gen1_size = MIN2(OldSize, _min_heap_byte_size - _min_gen0_size); > > Is that right? In some sense, yes. > Before that change _min_gen_size and _initial_gen1_size were the > same value in the call path where adjust_gen0_sizes() is called. Yes, they were both set OldSize and OldSize was passed to adjust_gen0_sizes() as the min_gen1_size. After the cleanup _min_gen1_size and _initial_gen1_size does not have the same value anymore in this call path which is why we need to decide which variable is the correct one to use. To preserve the behavior from before the collector policy cleanup I think _min_gen1_size is the variable to use. As Bengt has pointed out, this code is not extremely intuitive and should be cleaned up further. I have a list of things to improve in the collector policy code and this code on that list. I'll be filing an RFE at some point. /Jesper > > Jon > >> >> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/ >> >> Thanks! >> /Jesper > -------------- next part -------------- A non-text attachment was scrubbed... Name: jesper_wilhelmsson.vcf Type: text/x-vcard Size: 236 bytes Desc: not available URL: From thomas.schatzl at oracle.com Mon Nov 11 20:46:09 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 11 Nov 2013 21:46:09 +0100 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <528138C1.2010509@oracle.com> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> <1384160561.2747.10.camel@cirrus> <528138C1.2010509@oracle.com> Message-ID: <1384202769.2736.17.camel@cirrus> Hi, On Mon, 2013-11-11 at 12:06 -0800, Jon Masamitsu wrote: > On 11/11/13 1:02 AM, Thomas Schatzl wrote: > > Hi Jon, > > > > On Fri, 2013-11-08 at 10:52 -0800, Jon Masamitsu wrote: > >> Stefan, > >> > >> Change looks good. > >> > >> There are _gen_alignments and _space_alignments in CollectorPolicy. > >> Where those are initialized there is no calculation of a new_alignment > >> based on page size. For example, > >> > >> void MarkSweepPolicy::initialize_alignments() { > >> _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; > >> _heap_alignment = compute_heap_alignment(); > >> } > >> > >> Should those places be calculating and using a new_alignment? > > I am not completely sure what the question is, and whether Jesper's > > reply already replied or not, but as far as I can tell the question > > seems to be why the MarkSweepPolicy (for serial gc) does not take page > > size into account for space and generation alignment. > > Yes. That's basically the question. The change was made for > ParallelGC. Were similar changes needed elsewhere. I do not know if similar changes are exactly "needed", but imo it would be good for the other collectors too. > > As far as I know, only Parallel GC ever did that as it is also the only > > collector that is NUMA aware, so I assume this is the reason why that > > collector does. All collectors align the heap alignment to large page > > size though if large pages are used. > I didn't realize that the assertion failure had to do with NUMA. > Can you explain more? Just that at that time when NUMA for parallel gc has been added, probably this sizing code got revised, and this behavior added just for parallel gc. And forgotten for others. Also, trying to size by whole pages likely makes assigning memory to nodes easier, i.e. less need to split large pages into smaller ones. But that's just a try to make up an explanation from me (for me :). I will file an RFE for this to increase space/generation alignment if large pages are used (I could not find any existing ones) - is this okay with you? Thanks, Thomas From jon.masamitsu at oracle.com Mon Nov 11 23:24:16 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 11 Nov 2013 15:24:16 -0800 Subject: RFR: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris In-Reply-To: <1384202769.2736.17.camel@cirrus> References: <527D1D19.8030609@oracle.com> <527D32DF.1020504@oracle.com> <1384160561.2747.10.camel@cirrus> <528138C1.2010509@oracle.com> <1384202769.2736.17.camel@cirrus> Message-ID: <52816720.1070307@oracle.com> Thomas, Yes, your suggestion for handling the missing code with an RFE is fine. Jon On 11/11/13 12:46 PM, Thomas Schatzl wrote: > Hi, > > On Mon, 2013-11-11 at 12:06 -0800, Jon Masamitsu wrote: >> On 11/11/13 1:02 AM, Thomas Schatzl wrote: >>> Hi Jon, >>> >>> On Fri, 2013-11-08 at 10:52 -0800, Jon Masamitsu wrote: >>>> Stefan, >>>> >>>> Change looks good. >>>> >>>> There are _gen_alignments and _space_alignments in CollectorPolicy. >>>> Where those are initialized there is no calculation of a new_alignment >>>> based on page size. For example, >>>> >>>> void MarkSweepPolicy::initialize_alignments() { >>>> _space_alignment = _gen_alignment = (uintx)Generation::GenGrain; >>>> _heap_alignment = compute_heap_alignment(); >>>> } >>>> >>>> Should those places be calculating and using a new_alignment? >>> I am not completely sure what the question is, and whether Jesper's >>> reply already replied or not, but as far as I can tell the question >>> seems to be why the MarkSweepPolicy (for serial gc) does not take page >>> size into account for space and generation alignment. >> Yes. That's basically the question. The change was made for >> ParallelGC. Were similar changes needed elsewhere. > I do not know if similar changes are exactly "needed", but imo it would > be good for the other collectors too. > >>> As far as I know, only Parallel GC ever did that as it is also the only >>> collector that is NUMA aware, so I assume this is the reason why that >>> collector does. All collectors align the heap alignment to large page >>> size though if large pages are used. >> I didn't realize that the assertion failure had to do with NUMA. >> Can you explain more? > Just that at that time when NUMA for parallel gc has been added, > probably this sizing code got revised, and this behavior added just for > parallel gc. And forgotten for others. > > Also, trying to size by whole pages likely makes assigning memory to > nodes easier, i.e. less need to split large pages into smaller ones. But > that's just a try to make up an explanation from me (for me :). > > I will file an RFE for this to increase space/generation alignment if > large pages are used (I could not find any existing ones) - is this okay > with you? > > Thanks, > Thomas > > From thomas.schatzl at oracle.com Tue Nov 12 10:42:00 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Tue, 12 Nov 2013 11:42:00 +0100 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <527AE23E.1020000@oracle.com> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> <527AE23E.1020000@oracle.com> Message-ID: <1384252920.3007.16.camel@cirrus> Hi, sorry for the late response... On Wed, 2013-11-06 at 16:43 -0800, Tao Mao wrote: > Hi all, > > A new webrev is updated > http://cr.openjdk.java.net/~tamao/6521376/webrev.03/ > > It includes a thorough test, which is one good way to examine the > changeset. Agree :) > > Changeset: > > One point I want to discuss here is the validity of setting > -XX:MaxTenuringThreshold=16. The reason why I'd consider it valid is: > when NeverTenure is set, MaxTenuringThreshold is set to 16 while > setting MaxTenuringThreshold=15 doesn't make sense here. Thus, > MaxTenuringThreshold=16 needs to be considered a valid setting. I think I am fine with this. As for the test in TestObjectTenuringFlags: I think it would be more clear if every test were a single method call instead of the vmOpts.clear(); collections.addAll( ...test settings... ); shouldFail = ... expectedFlags = ... runTest(...) e.g. as runTest(new String[] { test settings }, true /* should_fail */, new ExpectedTenuringFlags( ... )); I do not really like the use of the "vmOpts" global both in the main() method and the ""runTenurinigFlagsConsistencyTest()". I do not think there is need to save memory here, and that would save the test to reset the "vmOpts" variable all the time. I do not think the test needs to basically rethrow the RuntimeException from checkTenurinigFlagsConsistency in checkTenurinigFlagsConsistency. The test could just let it fall through (without try-catch). Also checkTenurinigFlagsConsistency could fail fast on any incorrect consistency check, with an explicit message for every type of failure (e.g. "expected AlwaysTenure to be , is instead"), instead of accumulating the error using the && operator. The stack trace in the error will give you the failing test quickly, but it's not bad to show the VM parameters that lead to the error. There is also a typo in the "runTenurinigFlagsConsistencyTest" test name, an additional "i". The same typo in "checkTenurinigFlagsConsistency". Otherwise looks good. Thanks, Thomas From bengt.rutisson at oracle.com Tue Nov 12 11:08:37 2013 From: bengt.rutisson at oracle.com (bengt.rutisson at oracle.com) Date: Tue, 12 Nov 2013 11:08:37 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8027960: Assertion assert(end >= start) failed during nightly testing on solaris Message-ID: <20131112110840.631E762533@hg.openjdk.java.net> Changeset: ee527493b36d Author: sjohanss Date: 2013-11-08 17:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/ee527493b36d 8027960: Assertion assert(end >= start) failed during nightly testing on solaris Summary: Needed to update _space_alignment in generation sizer to ensure correct sizing of spaces. Reviewed-by: jmasa, tschatzl ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.cpp From markus.gronlund at oracle.com Tue Nov 12 11:17:29 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Tue, 12 Nov 2013 03:17:29 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data Message-ID: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> Greetings, Kindly asking for reviews for the following changeset: Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 Description: Currently, when working with counter based data, the primary data type representation in the VM are raw jlong's. jlong's are employed to represent both: 1. a single instance in time, for example a "now" timestamp 2. a time duration, a timespan, for example the duration between "now" - "then" Having a raw jlong type represent both of these shifts the responsibility to the programmer to always ensure the correct validity of the counter data, without any assistance either at compile time or at runtime. The event based tracing framework relies heavily on counter based data in order to keep track of time and timing related information and we have seen counter data errors where the representation sent to the tracing framework has submitted the wrong time, i.e. a timespan when a time instant was expected and vice versa. We should therefore add an alternative to jlongs for representing counter based data. We should enlist the help of the type system to enforce the correct data types at compile time as well as introduce strong runtime asserts in order to help with the correct usage of time and to reduce the number of potential bugs. I will therefore add two new types in src/share/vm/utilities: 1. "Ticks" - represents a single counter based timestamp, a single instance in time. 2. "Tickspan" - represents a counter based duration, a timespan, between two "Ticks" Please see the added files: - src/share/vm/utilities/ticks.hpp - src/share/vm/utilities/ticks.inline.hpp - src/share/vm/utilities/ticks.cpp I have also updated some of the existing event based tracing "event sites" to employ usage of these new types as well as updated a few places in the event based tracing framework implementation to accommodate these types. Testing completed: nsk.stress.testlist (UTE/Aurora) GC nightlies (Aurora) gc/gctests/* (UTE/Aurora) nsk.gc.testlist (UTE/Aurora) SpecJBB2013 (no regression) SpecJBB2005 (no regression) Kitchensink (locally Windows) runs for +> 9 days (still running.) Thanks in advance Markus -------------- next part -------------- An HTML attachment was scrubbed... URL: From vitalyd at gmail.com Tue Nov 12 14:36:40 2013 From: vitalyd at gmail.com (Vitaly Davidovich) Date: Tue, 12 Nov 2013 09:36:40 -0500 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> Message-ID: Hi Markus, Ticks and Tickspan don't seem too optimal of names. What about TimeInstance and TimeSpan? You have some operator overloads for these that can compare them against jlongs - doesn't that still make it easy to mix up what you're comparing? Personally, since these are value types I'd make their API work only against these new types and make caller create the right type for comparison. Just my $.02, feel free to ignore :). Thanks Sent from my phone On Nov 12, 2013 6:16 AM, "Markus Gronlund" wrote: > Greetings, > > > > Kindly asking for reviews for the following changeset: > > > > Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > > > *Description:* > > > > Currently, when working with counter based data, the primary data type > representation in the VM are raw jlong's. jlong's are employed to represent > both: > > 1. a single instance in time, for example a "now" timestamp > 2. a time duration, a timespan, for example the duration between "now" - > "then" > > Having a raw jlong type represent both of these shifts the responsibility > to the programmer to always ensure the correct validity of the counter > data, without any assistance either at compile time or at runtime. > > The event based tracing framework relies heavily on counter based data in > order to keep track of time and timing related information and we have seen > counter data errors where the representation sent to the tracing framework > has submitted the wrong time, i.e. a timespan when a time instant was > expected and vice versa. > > We should therefore add an alternative to jlongs for representing counter > based data. We should enlist the help of the type system to enforce the > correct data types at compile time as well as introduce strong runtime > asserts in order to help with the correct usage of time and to reduce the > number of potential bugs. > > I will therefore add two new types in src/share/vm/utilities: > > 1. "Ticks" - represents a single counter based timestamp, a single > instance in time. > 2. "Tickspan" - represents a counter based duration, a timespan, between > two "Ticks" > > > > Please see the added files: > > > > - src/share/vm/utilities/ticks.hpp > > - src/share/vm/utilities/ticks.inline.hpp > > - src/share/vm/utilities/ticks.cpp > > > > I have also updated some of the existing event based tracing "event sites" > to employ usage of these new types as well as updated a few places in the > event based tracing framework implementation to accommodate these types. > > > > *Testing completed:* > > > > nsk.stress.testlist (UTE/Aurora) > > GC nightlies (Aurora) > > gc/gctests/* (UTE/Aurora) > > nsk.gc.testlist (UTE/Aurora) > > SpecJBB2013 (no regression) > > SpecJBB2005 (no regression) > > Kitchensink (locally Windows) runs for +> 9 days (still running?) > > Thanks in advance > Markus > -------------- next part -------------- An HTML attachment was scrubbed... URL: From markus.gronlund at oracle.com Tue Nov 12 15:34:28 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Tue, 12 Nov 2013 07:34:28 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> Message-ID: <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> Hi Vitaly, Thanks for you input! "You have some operator overloads for these that can compare them against jlongs - doesn't that still make it easy to mix up what you're comparing? Personally, since these are value types I'd make their API work only against these new types and make caller create the right type for comparison." Thanks for spotting these - the compare against jlongs in from an older version of the webrev where this was allowed - you are right, it should not be allowed, I thought I had updated this, will remove them - many thanks for spotting. As for the names, "Ticks and Tickspan don't seem too optimal of names. What about TimeInstance and TimeSpan?" I agree with you that the names could possibly be improved, believe me I have tried to use multiple names - one thing I wanted was to emphasize that these types (currently) are only based on counter's (i.e ticks), and do not represent any higher "time" abstraction. That is, the implementation is tied to data from counters (based on ticks with a specific ticks frequency). In my current context, I use these values to talk about "time" (as you saw from the original post), but "time" can mean many things to different people, esp. many implementations and clock sources. Also, there already exist a few "Time/Timer" types (although they are not as good as I want them to be for current purposes), for example there is a type called Timestamp (in runtime/timers.hpp). I have come to the conclusion that in order to address the overall time abstractions in Hotspot, we would need to make a larger effort - this we should indeed do, but it's outside the current scope. Also I am pretty sure that when we do revisit the time abstractions, the names for these types will most likely change - that made me leave the names to emphasize the "ticks" sources. Thanks for your input. Best regards Markus From: Vitaly Davidovich [mailto:vitalyd at gmail.com] Sent: den 12 november 2013 15:37 To: Markus Gronlund Cc: serviceability-dev; hotspot-runtime-dev at openjdk.java.net; hotspot-gc-dev at openjdk.java.net Subject: Re: RFR(M): 8028128: Add a type safe alternative for working with counter based data Hi Markus, Ticks and Tickspan don't seem too optimal of names. What about TimeInstance and TimeSpan? You have some operator overloads for these that can compare them against jlongs - doesn't that still make it easy to mix up what you're comparing? Personally, since these are value types I'd make their API work only against these new types and make caller create the right type for comparison. Just my $.02, feel free to ignore :). Thanks Sent from my phone On Nov 12, 2013 6:16 AM, "Markus Gronlund" wrote: Greetings, Kindly asking for reviews for the following changeset: Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 Description: Currently, when working with counter based data, the primary data type representation in the VM are raw jlong's. jlong's are employed to represent both: 1. a single instance in time, for example a "now" timestamp 2. a time duration, a timespan, for example the duration between "now" - "then" Having a raw jlong type represent both of these shifts the responsibility to the programmer to always ensure the correct validity of the counter data, without any assistance either at compile time or at runtime. The event based tracing framework relies heavily on counter based data in order to keep track of time and timing related information and we have seen counter data errors where the representation sent to the tracing framework has submitted the wrong time, i.e. a timespan when a time instant was expected and vice versa. We should therefore add an alternative to jlongs for representing counter based data. We should enlist the help of the type system to enforce the correct data types at compile time as well as introduce strong runtime asserts in order to help with the correct usage of time and to reduce the number of potential bugs. I will therefore add two new types in src/share/vm/utilities: 1. "Ticks" - represents a single counter based timestamp, a single instance in time. 2. "Tickspan" - represents a counter based duration, a timespan, between two "Ticks" Please see the added files: - src/share/vm/utilities/ticks.hpp - src/share/vm/utilities/ticks.inline.hpp - src/share/vm/utilities/ticks.cpp I have also updated some of the existing event based tracing "event sites" to employ usage of these new types as well as updated a few places in the event based tracing framework implementation to accommodate these types. Testing completed: nsk.stress.testlist (UTE/Aurora) GC nightlies (Aurora) gc/gctests/* (UTE/Aurora) nsk.gc.testlist (UTE/Aurora) SpecJBB2013 (no regression) SpecJBB2005 (no regression) Kitchensink (locally Windows) runs for +> 9 days (still running.) Thanks in advance Markus -------------- next part -------------- An HTML attachment was scrubbed... URL: From arun.avanathan at gmail.com Tue Nov 12 05:54:53 2013 From: arun.avanathan at gmail.com (Arun Avanathan) Date: Mon, 11 Nov 2013 21:54:53 -0800 Subject: Difference between JDK 6 & 7 on Native Memory usage Message-ID: Hi All, We saw few weird behavior in JDK 1.7 memory usage. When we run "top" command it shows JVM consuming native (resident) memory more than JDK 1.6. And it keeps rising up. We do understand we have a memory leak, but why are seeing this more in JDK 1.7 compared with JDK 1.6? Is there a specific difference between JDK 1.6 & 1.7 to explain this? Thanks Arun -------------- next part -------------- An HTML attachment was scrubbed... URL: From tao.mao at oracle.com Wed Nov 13 01:01:27 2013 From: tao.mao at oracle.com (Tao Mao) Date: Tue, 12 Nov 2013 17:01:27 -0800 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 Message-ID: <5282CF67.6020508@oracle.com> Hi all, 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 https://bugs.openjdk.java.net/browse/JDK-8027915 webrev: http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ changeset: Modified the test code so that it can deal with the case of using large pages. **Note* another failure of gc/arguments/TestMinInitialErgonomics.java mentioned in the CR is dealt with in a new CR JDK-8028254. test: Manually checked on Sparcv9 with 4M page value, as well as on my local machine to check that the code applies to regular cases, too. -------------- next part -------------- An HTML attachment was scrubbed... URL: From vitalyd at gmail.com Wed Nov 13 01:17:02 2013 From: vitalyd at gmail.com (Vitaly Davidovich) Date: Tue, 12 Nov 2013 20:17:02 -0500 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> Message-ID: Yeah, naming things is often a pain. 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { 52 return !operator<(lhs,rhs); 53 } 54 55 inline bool operator>=(const Tickspan& lhs, const Tickspan& rhs) { 56 return !operator<(lhs,rhs); 57 } These look like bugs; first one should probably be !operator>(lhs,rhs) and !operator<(lhs,rhs), respectively. Sent from my phone On Nov 12, 2013 10:32 AM, "Markus Gronlund" wrote: > Hi Vitaly, > > > > Thanks for you input! > > > > ?You have some operator overloads for these that can compare them against > jlongs - doesn't that still make it easy to mix up what you're comparing? > Personally, since these are value types I'd make their API work only > against these new types and make caller create the right type for > comparison.? > > Thanks for spotting these ? the compare against jlongs in from an older > version of the webrev where this was allowed ? you are right, it should not > be allowed, I thought I had updated this, will remove them ? many thanks > for spotting? > > As for the names, > > ?Ticks and Tickspan don't seem too optimal of names. What about > TimeInstance and TimeSpan?? > > I agree with you that the names could possibly be improved, believe me I > have tried to use multiple names ? one thing I wanted was to emphasize that > these types (currently) are only based on counter?s (i.e ticks), and do not > represent any higher ?time? abstraction. That is, the implementation is > tied to data from counters (based on ticks with a specific ticks > frequency). In my current context, I use these values to talk about ?time? > (as you saw from the original post), but ?time? can mean many things to > different people, esp. many implementations and clock sources. > > Also, there already exist a few ?Time/Timer? types (although they are not > as good as I want them to be for current purposes), for example there is a > type called Timestamp (in runtime/timers.hpp). > > I have come to the conclusion that in order to address the overall time > abstractions in Hotspot, we would need to make a larger effort ? this we > should indeed do, but it?s outside the current scope. > > Also I am pretty sure that when we do revisit the time abstractions, the > names for these types will most likely change ? that made me leave the > names to emphasize the ?ticks? sources. > > Thanks for your input. > > Best regards > > Markus > > > > > > *From:* Vitaly Davidovich [mailto:vitalyd at gmail.com] > *Sent:* den 12 november 2013 15:37 > *To:* Markus Gronlund > *Cc:* serviceability-dev; hotspot-runtime-dev at openjdk.java.net; > hotspot-gc-dev at openjdk.java.net > *Subject:* Re: RFR(M): 8028128: Add a type safe alternative for working > with counter based data > > > > Hi Markus, > > Ticks and Tickspan don't seem too optimal of names. What about > TimeInstance and TimeSpan? > > You have some operator overloads for these that can compare them against > jlongs - doesn't that still make it easy to mix up what you're comparing? > Personally, since these are value types I'd make their API work only > against these new types and make caller create the right type for > comparison. > > Just my $.02, feel free to ignore :). > > Thanks > > Sent from my phone > > On Nov 12, 2013 6:16 AM, "Markus Gronlund" > wrote: > > Greetings, > > > > Kindly asking for reviews for the following changeset: > > > > Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > > > *Description:* > > > > Currently, when working with counter based data, the primary data type > representation in the VM are raw jlong's. jlong's are employed to represent > both: > > 1. a single instance in time, for example a "now" timestamp > 2. a time duration, a timespan, for example the duration between "now" - > "then" > > Having a raw jlong type represent both of these shifts the responsibility > to the programmer to always ensure the correct validity of the counter > data, without any assistance either at compile time or at runtime. > > The event based tracing framework relies heavily on counter based data in > order to keep track of time and timing related information and we have seen > counter data errors where the representation sent to the tracing framework > has submitted the wrong time, i.e. a timespan when a time instant was > expected and vice versa. > > We should therefore add an alternative to jlongs for representing counter > based data. We should enlist the help of the type system to enforce the > correct data types at compile time as well as introduce strong runtime > asserts in order to help with the correct usage of time and to reduce the > number of potential bugs. > > I will therefore add two new types in src/share/vm/utilities: > > 1. "Ticks" - represents a single counter based timestamp, a single > instance in time. > 2. "Tickspan" - represents a counter based duration, a timespan, between > two "Ticks" > > > > Please see the added files: > > > > - src/share/vm/utilities/ticks.hpp > > - src/share/vm/utilities/ticks.inline.hpp > > - src/share/vm/utilities/ticks.cpp > > > > I have also updated some of the existing event based tracing "event sites" > to employ usage of these new types as well as updated a few places in the > event based tracing framework implementation to accommodate these types. > > > > *Testing completed:* > > > > nsk.stress.testlist (UTE/Aurora) > > GC nightlies (Aurora) > > gc/gctests/* (UTE/Aurora) > > nsk.gc.testlist (UTE/Aurora) > > SpecJBB2013 (no regression) > > SpecJBB2005 (no regression) > > Kitchensink (locally Windows) runs for +> 9 days (still running?) > > Thanks in advance > Markus > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vitalyd at gmail.com Wed Nov 13 01:18:40 2013 From: vitalyd at gmail.com (Vitaly Davidovich) Date: Tue, 12 Nov 2013 20:18:40 -0500 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> Message-ID: Similar issue with the Ticks versions. Sent from my phone On Nov 12, 2013 8:17 PM, "Vitaly Davidovich" wrote: > Yeah, naming things is often a pain. > > 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { > 52 return !operator<(lhs,rhs); > 53 } > 54 > 55 inline bool operator>=(const Tickspan& lhs, const Tickspan& rhs) { > 56 return !operator<(lhs,rhs); > 57 } > > These look like bugs; first one should probably be !operator>(lhs,rhs) and > !operator<(lhs,rhs), respectively. > > Sent from my phone > On Nov 12, 2013 10:32 AM, "Markus Gronlund" > wrote: > >> Hi Vitaly, >> >> >> >> Thanks for you input! >> >> >> >> ?You have some operator overloads for these that can compare them against >> jlongs - doesn't that still make it easy to mix up what you're comparing? >> Personally, since these are value types I'd make their API work only >> against these new types and make caller create the right type for >> comparison.? >> >> Thanks for spotting these ? the compare against jlongs in from an older >> version of the webrev where this was allowed ? you are right, it should not >> be allowed, I thought I had updated this, will remove them ? many thanks >> for spotting? >> >> As for the names, >> >> ?Ticks and Tickspan don't seem too optimal of names. What about >> TimeInstance and TimeSpan?? >> >> I agree with you that the names could possibly be improved, believe me I >> have tried to use multiple names ? one thing I wanted was to emphasize that >> these types (currently) are only based on counter?s (i.e ticks), and do not >> represent any higher ?time? abstraction. That is, the implementation is >> tied to data from counters (based on ticks with a specific ticks >> frequency). In my current context, I use these values to talk about ?time? >> (as you saw from the original post), but ?time? can mean many things to >> different people, esp. many implementations and clock sources. >> >> Also, there already exist a few ?Time/Timer? types (although they are not >> as good as I want them to be for current purposes), for example there is a >> type called Timestamp (in runtime/timers.hpp). >> >> I have come to the conclusion that in order to address the overall time >> abstractions in Hotspot, we would need to make a larger effort ? this we >> should indeed do, but it?s outside the current scope. >> >> Also I am pretty sure that when we do revisit the time abstractions, the >> names for these types will most likely change ? that made me leave the >> names to emphasize the ?ticks? sources. >> >> Thanks for your input. >> >> Best regards >> >> Markus >> >> >> >> >> >> *From:* Vitaly Davidovich [mailto:vitalyd at gmail.com] >> *Sent:* den 12 november 2013 15:37 >> *To:* Markus Gronlund >> *Cc:* serviceability-dev; hotspot-runtime-dev at openjdk.java.net; >> hotspot-gc-dev at openjdk.java.net >> *Subject:* Re: RFR(M): 8028128: Add a type safe alternative for working >> with counter based data >> >> >> >> Hi Markus, >> >> Ticks and Tickspan don't seem too optimal of names. What about >> TimeInstance and TimeSpan? >> >> You have some operator overloads for these that can compare them against >> jlongs - doesn't that still make it easy to mix up what you're comparing? >> Personally, since these are value types I'd make their API work only >> against these new types and make caller create the right type for >> comparison. >> >> Just my $.02, feel free to ignore :). >> >> Thanks >> >> Sent from my phone >> >> On Nov 12, 2013 6:16 AM, "Markus Gronlund" >> wrote: >> >> Greetings, >> >> >> >> Kindly asking for reviews for the following changeset: >> >> >> >> Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ >> >> >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 >> >> >> >> *Description:* >> >> >> >> Currently, when working with counter based data, the primary data type >> representation in the VM are raw jlong's. jlong's are employed to represent >> both: >> >> 1. a single instance in time, for example a "now" timestamp >> 2. a time duration, a timespan, for example the duration between "now" - >> "then" >> >> Having a raw jlong type represent both of these shifts the responsibility >> to the programmer to always ensure the correct validity of the counter >> data, without any assistance either at compile time or at runtime. >> >> The event based tracing framework relies heavily on counter based data in >> order to keep track of time and timing related information and we have seen >> counter data errors where the representation sent to the tracing framework >> has submitted the wrong time, i.e. a timespan when a time instant was >> expected and vice versa. >> >> We should therefore add an alternative to jlongs for representing counter >> based data. We should enlist the help of the type system to enforce the >> correct data types at compile time as well as introduce strong runtime >> asserts in order to help with the correct usage of time and to reduce the >> number of potential bugs. >> >> I will therefore add two new types in src/share/vm/utilities: >> >> 1. "Ticks" - represents a single counter based timestamp, a single >> instance in time. >> 2. "Tickspan" - represents a counter based duration, a timespan, between >> two "Ticks" >> >> >> >> Please see the added files: >> >> >> >> - src/share/vm/utilities/ticks.hpp >> >> - src/share/vm/utilities/ticks.inline.hpp >> >> - src/share/vm/utilities/ticks.cpp >> >> >> >> I have also updated some of the existing event based tracing "event >> sites" to employ usage of these new types as well as updated a few places >> in the event based tracing framework implementation to accommodate these >> types. >> >> >> >> *Testing completed:* >> >> >> >> nsk.stress.testlist (UTE/Aurora) >> >> GC nightlies (Aurora) >> >> gc/gctests/* (UTE/Aurora) >> >> nsk.gc.testlist (UTE/Aurora) >> >> SpecJBB2013 (no regression) >> >> SpecJBB2005 (no regression) >> >> Kitchensink (locally Windows) runs for +> 9 days (still running?) >> >> Thanks in advance >> Markus >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From markus.gronlund at oracle.com Wed Nov 13 09:46:02 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Wed, 13 Nov 2013 01:46:02 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> Message-ID: <58a6b698-bf13-424a-9b95-deb676155b39@default> Hi again! Thank you for spotting these! I'm sorry, silly mistakes. I have updated lines 51-53 to: 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { 52 return !operator>(lhs,rhs); 53 } And lines 97-99 as: 97 inline bool operator<=(const Ticks& lhs, const Ticks& rhs) { 98 return !operator>(lhs,rhs); 99 } Thanks Vitaly! Cheers Markus From: Vitaly Davidovich [mailto:vitalyd at gmail.com] Sent: den 13 november 2013 02:19 To: Markus Gronlund Cc: hotspot-runtime-dev at openjdk.java.net; serviceability-dev; hotspot-gc-dev at openjdk.java.net Subject: RE: RFR(M): 8028128: Add a type safe alternative for working with counter based data Similar issue with the Ticks versions. Sent from my phone On Nov 12, 2013 8:17 PM, "Vitaly Davidovich" wrote: Yeah, naming things is often a pain. 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { 52 return !operator<(lhs,rhs); 53 } 54 55 inline bool operator>=(const Tickspan& lhs, const Tickspan& rhs) { 56 return !operator<(lhs,rhs); 57 } These look like bugs; first one should probably be !operator>(lhs,rhs) and !operator<(lhs,rhs), respectively. Sent from my phone On Nov 12, 2013 10:32 AM, "Markus Gronlund" wrote: Hi Vitaly, Thanks for you input! "You have some operator overloads for these that can compare them against jlongs - doesn't that still make it easy to mix up what you're comparing? Personally, since these are value types I'd make their API work only against these new types and make caller create the right type for comparison." Thanks for spotting these - the compare against jlongs in from an older version of the webrev where this was allowed - you are right, it should not be allowed, I thought I had updated this, will remove them - many thanks for spotting. As for the names, "Ticks and Tickspan don't seem too optimal of names. What about TimeInstance and TimeSpan?" I agree with you that the names could possibly be improved, believe me I have tried to use multiple names - one thing I wanted was to emphasize that these types (currently) are only based on counter's (i.e ticks), and do not represent any higher "time" abstraction. That is, the implementation is tied to data from counters (based on ticks with a specific ticks frequency). In my current context, I use these values to talk about "time" (as you saw from the original post), but "time" can mean many things to different people, esp. many implementations and clock sources. Also, there already exist a few "Time/Timer" types (although they are not as good as I want them to be for current purposes), for example there is a type called Timestamp (in runtime/timers.hpp). I have come to the conclusion that in order to address the overall time abstractions in Hotspot, we would need to make a larger effort - this we should indeed do, but it's outside the current scope. Also I am pretty sure that when we do revisit the time abstractions, the names for these types will most likely change - that made me leave the names to emphasize the "ticks" sources. Thanks for your input. Best regards Markus From: Vitaly Davidovich [mailto:HYPERLINK "mailto:vitalyd at gmail.com" \nvitalyd at gmail.com] Sent: den 12 november 2013 15:37 To: Markus Gronlund Cc: serviceability-dev; HYPERLINK "mailto:hotspot-runtime-dev at openjdk.java.net" \nhotspot-runtime-dev at openjdk.java.net; HYPERLINK "mailto:hotspot-gc-dev at openjdk.java.net" \nhotspot-gc-dev at openjdk.java.net Subject: Re: RFR(M): 8028128: Add a type safe alternative for working with counter based data Hi Markus, Ticks and Tickspan don't seem too optimal of names. What about TimeInstance and TimeSpan? You have some operator overloads for these that can compare them against jlongs - doesn't that still make it easy to mix up what you're comparing? Personally, since these are value types I'd make their API work only against these new types and make caller create the right type for comparison. Just my $.02, feel free to ignore :). Thanks Sent from my phone On Nov 12, 2013 6:16 AM, "Markus Gronlund" wrote: Greetings, Kindly asking for reviews for the following changeset: Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 Description: Currently, when working with counter based data, the primary data type representation in the VM are raw jlong's. jlong's are employed to represent both: 1. a single instance in time, for example a "now" timestamp 2. a time duration, a timespan, for example the duration between "now" - "then" Having a raw jlong type represent both of these shifts the responsibility to the programmer to always ensure the correct validity of the counter data, without any assistance either at compile time or at runtime. The event based tracing framework relies heavily on counter based data in order to keep track of time and timing related information and we have seen counter data errors where the representation sent to the tracing framework has submitted the wrong time, i.e. a timespan when a time instant was expected and vice versa. We should therefore add an alternative to jlongs for representing counter based data. We should enlist the help of the type system to enforce the correct data types at compile time as well as introduce strong runtime asserts in order to help with the correct usage of time and to reduce the number of potential bugs. I will therefore add two new types in src/share/vm/utilities: 1. "Ticks" - represents a single counter based timestamp, a single instance in time. 2. "Tickspan" - represents a counter based duration, a timespan, between two "Ticks" Please see the added files: - src/share/vm/utilities/ticks.hpp - src/share/vm/utilities/ticks.inline.hpp - src/share/vm/utilities/ticks.cpp I have also updated some of the existing event based tracing "event sites" to employ usage of these new types as well as updated a few places in the event based tracing framework implementation to accommodate these types. Testing completed: nsk.stress.testlist (UTE/Aurora) GC nightlies (Aurora) gc/gctests/* (UTE/Aurora) nsk.gc.testlist (UTE/Aurora) SpecJBB2013 (no regression) SpecJBB2005 (no regression) Kitchensink (locally Windows) runs for +> 9 days (still running.) Thanks in advance Markus -------------- next part -------------- An HTML attachment was scrubbed... URL: From thomas.schatzl at oracle.com Wed Nov 13 10:58:56 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Wed, 13 Nov 2013 11:58:56 +0100 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <5282CF67.6020508@oracle.com> References: <5282CF67.6020508@oracle.com> Message-ID: <1384340336.2822.80.camel@cirrus> Hi Tao, thanks for picking this up. On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: > Hi all, > > 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on > sparcv9 > https://bugs.openjdk.java.net/browse/JDK-8027915 > > webrev: > http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ Some notes: + // bug 8027915 & 8027960: compensate for some cases of large pages I do not think it is a good idea to mention bug numbers in the tests: we can always get this information from the repository. Also I think the problem is not large pages, but how the collectors align the spaces and generations. + if (gcflag.equals("-XX:+UseParallelOldGC")) { I think it would be better to check for general use of parallel GC instead of only the parallel old implementation - I think both do the same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when invoking the VM. I.e. let the getMinInitialMaxHeap() method return the collector type used by parsing the output of -XX:+PrintFlagsFinal (which needs to be added). I am not sure if that is needed though, see below. + int numberOfSpaces = 4; + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * v.minAlignment); I believe this is not correct in the general case. The formula used in the VM (for generational collectors) is: expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) where smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); smallestPossibleHeapSize = align_size_up(smallest_new_size + // probably better named smallest_young_size align_size_up(_space_alignment, _gen_alignment), // old gen _heap_alignment); // align for heap size The change needs to get the space alignment for that from the VM for this. Recently the "minAlignment" and "maxAlignment" members of CollectorPolicy changed to spaceAlignment and heapAlignment. Is it possible to adapt the naming in the test? This seems to be an oversight in reviews for the earlier patch that changed that in the Hotspot code. After introducing all this to the test, there is no need for special casing parallel gc too. In case of G1 it should be sufficient to set space alignment and gen alignment to the same value. > changeset: > Modified the test code so that it can deal with the case of using > large pages. > > *Note another failure of gc/arguments/TestMinInitialErgonomics.java > mentioned in the CR is dealt with in a new CR JDK-8028254. You are correct, it is a slightly different but similar issue: I think min and initial heap size are now (or always have been, did not look) aligned to the heap alignment (formerly maxAlignment). The test now aligns the expected min/initial heap sizes to minAlignment only, which is wrong. Thanks, Thomas From stefan.johansson at oracle.com Wed Nov 13 13:10:37 2013 From: stefan.johansson at oracle.com (Stefan Johansson) Date: Wed, 13 Nov 2013 14:10:37 +0100 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <1384340336.2822.80.camel@cirrus> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> Message-ID: <52837A4D.7060906@oracle.com> Hi, Thanks for looking at this Tao and Thomas, see comment inline. On 2013-11-13 11:58, Thomas Schatzl wrote: > Hi Tao, > > thanks for picking this up. > > On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >> Hi all, >> >> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >> sparcv9 >> https://bugs.openjdk.java.net/browse/JDK-8027915 >> >> webrev: >> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ > Some notes: > > + // bug 8027915 & 8027960: compensate for some cases of large pages > > I do not think it is a good idea to mention bug numbers in the tests: > we can always get this information from the repository. > > Also I think the problem is not large pages, but how the collectors > align the spaces and generations. > > + if (gcflag.equals("-XX:+UseParallelOldGC")) { > > I think it would be better to check for general use of parallel GC > instead of only the parallel old implementation - I think both do the > same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when > invoking the VM. I.e. let the getMinInitialMaxHeap() method return the > collector type used by parsing the output of -XX:+PrintFlagsFinal (which > needs to be added). I am not sure if that is needed though, see below. > > + int numberOfSpaces = 4; > + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * > v.minAlignment); > > I believe this is not correct in the general case. The formula used in > the VM (for generational collectors) is: > > expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) > > where > > smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); > smallestPossibleHeapSize = align_size_up(smallest_new_size + // probably better named smallest_young_size > align_size_up(_space_alignment, _gen_alignment), // old gen > _heap_alignment); // align for heap size > > The change needs to get the space alignment for that from the VM for > this. > > Recently the "minAlignment" and "maxAlignment" members of > CollectorPolicy changed to spaceAlignment and heapAlignment. Is it > possible to adapt the naming in the test? This seems to be an > oversight in reviews for the earlier patch that changed that in the > Hotspot code. > > After introducing all this to the test, there is no need for special > casing parallel gc too. In case of G1 it should be sufficient to set > space alignment and gen alignment to the same value. I like this proposal, we should try to avoid special cases and as much as possible. After fixing this please rerun the tests through JPRT. I tried you current patch and it still fails on sparcv9, since it is using v.minAlignment which is 512K instead of v.maxAlignment which is 4M. But I think, as Thomas suggested, that we should rename these to match the names in hotspot. Cheers, StefanJ >> changeset: >> Modified the test code so that it can deal with the case of using >> large pages. >> >> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >> mentioned in the CR is dealt with in a new CR JDK-8028254. > You are correct, it is a slightly different but similar issue: I think > min and initial heap size are now (or always have been, did not look) > aligned to the heap alignment (formerly maxAlignment). > > The test now aligns the expected min/initial heap sizes to minAlignment > only, which is wrong. > > Thanks, > Thomas > > > From daniel.daugherty at oracle.com Wed Nov 13 16:45:29 2013 From: daniel.daugherty at oracle.com (Daniel D. Daugherty) Date: Wed, 13 Nov 2013 09:45:29 -0700 Subject: Parallelizing symbol table/string table scan In-Reply-To: <1384178210.11800.32.camel@cirrus> References: <1384178210.11800.32.camel@cirrus> Message-ID: <5283ACA9.5020601@oracle.com> For the StringTable side of the house, I recently added the following diagnostic option: -XX:+VerifyStringTableAtExit via the following bug ID: 8019835 Strings interned in different threads equal but does not == https://bugs.openjdk.java.net/browse/JDK-8019835 Here's the changeset info: Changeset: 63147986a428 Author: dcubed Date: 2013-09-18 07:02 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-main/hotspot/rev/63147986a428 8019835: Strings interned in different threads equal but does not == Summary: Add -XX:+VerifyStringTableAtExit option and code to verify StringTable invariants. Reviewed-by: rdurbin, sspitsyn, coleenp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/classfile/symbolTable.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/java.cpp The new option should be helpful in testing your optimizations. Dan On 11/11/13 6:56 AM, Thomas Schatzl wrote: > Hi all, > > recently we (the gc team) noticed severe performance issues with > symbol table and string table scan during remark. > > Basically, in G1 these pauses are the largest pauses on a reasonably > tuned system. Also, in particular, symbol table scan alone takes 50% of > total remark time. String table scan takes another 13%. > > At least symbol table scan is a pretty big issue. > > The simple approach to those is to parallelize these tasks of course, > however I would like to query you for comments or suggestions :) > (I am simply throwing some ideas on the wall, in the hope something > sticks...) > > One idea that came up to optimize that further has been to not do string > table or symbol table scrubbing after gc at all if no class unloading > has been done, assuming that the amount of dead entries are zero anyway. > > This is (imo) true for the string table at least (because they are > strong roots if not doing class unloading), but I am not so sure about > the symbol table. > You probably have more experience about the use of the symbol table, so > any ideas what could cause symbol table entries to get stale other than > class unloading, and if so, is this a big concern? > > Another option would be to do this symbol table scrubbing only after a > certain amount of operations on the symbols, not sure if there is an > indicator (that does not decrease perf for retrieving too much) for > that. > > Another idea, again for the symbol table is to scrub it either > incrementally (eg. depending on available time), or concurrently. I.e. > some background task periodically waking up and scrubbing (parts of) the > symbol table. > > Comments, suggestions? > > I also created a few RFEs for these issues, see > > Symbol table: > https://bugs.openjdk.java.net/browse/JDK-8027455 > https://bugs.openjdk.java.net/browse/JDK-8027543 > String table: > https://bugs.openjdk.java.net/browse/JDK-8027454 > https://bugs.openjdk.java.net/browse/JDK-8027476 > > Thomas > From tao.mao at oracle.com Wed Nov 13 18:48:37 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 13 Nov 2013 10:48:37 -0800 Subject: Request for review: 7098155: Resize young gen at full collections for UseParallelGC In-Reply-To: <527B02C3.3040805@oracle.com> References: <5240CB0F.9080902@oracle.com> <527B02C3.3040805@oracle.com> Message-ID: <5283C985.6080205@oracle.com> Hi Jon, New webrev is uploaded. http://cr.openjdk.java.net/~tamao/7098155/webrev.01/ I think it makes even more sense to guard the piece of code under (UseAdaptiveGenerationSizePolicyAtMajorCollection...etc.) Thanks. Tao On 11/6/13 7:02 PM, Jon Masamitsu wrote: > Tao, > > http://cr.openjdk.java.net/~tamao/7098155/webrev.00/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp.frames.html > > > Should this block of code > > 266 // Swap the survivor spaces if from_space is empty > 267 if (UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection && > 268 young_gen->from_space()->is_empty()) { > 269 young_gen->from_space()->clear(SpaceDecorator::Mangle); > 270 young_gen->swap_spaces(); > 271 } > > be under the guard just below it? > > 273 if (UseAdaptiveSizePolicy) { > > http://cr.openjdk.java.net/~tamao/7098155/webrev.00/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.frames.html > > > Same question for this block of code > > 2103 // Swap the survivor spaces if from_space is empty > 2104 if (UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection && > 2105 young_gen->from_space()->is_empty()) { > 2106 young_gen->from_space()->clear(SpaceDecorator::Mangle); > 2107 young_gen->swap_spaces(); > 2108 } > > Jon > > > > On 9/23/2013 4:13 PM, Tao Mao wrote: >> Hi, >> >> changeset: >> https://bugs.openjdk.java.net/browse/JDK-7098155 >> >> In order to avoid the situation for UseParallelGC described in the >> CR, we need to resize young gen at full collections. >> >> And, according to the heap configuration in young gen, we need to >> swap from- and to-space () after full gc in order to get the young >> gen correctly resized after several GC's. >> >> webrev: >> http://cr.openjdk.java.net/~tamao/7098155/webrev.00/ >> >> test: >> - Pass JPRT tests >> >> - RefWorkload >> >> (1) ParallelGC (-XX:+UseParallelGC -XX:-UseParallelOldGC) >> >> baseline: -XX:-UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >> resize: -XX:+UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >> >> ./compare results_baseline_512m results_resize_512m >> ============================================================================== >> >> results_baseline_512m: >> Benchmark Samples Mean Stdev Geomean Weight >> jetstream 30 192.52 9.86 >> scimark 30 855.62 30.33 >> specjbb2005 30 145844.73 4552.07 >> specjvm98 30 568.92 10.65 >> ============================================================================== >> >> results_resize_512m: >> Benchmark Samples Mean Stdev %Diff P >> Significant >> jetstream 30 192.89 11.33 0.19 >> 0.894 * >> scimark 30 862.21 24.17 0.77 >> 0.356 * >> specjbb2005 30 142749.53 4852.66 -2.12 >> 0.014 * >> specjvm98 30 566.42 8.55 -0.44 >> 0.320 * >> ============================================================================== >> >> * - Not Significant: A non-zero %Diff for the mean could be noise. >> If the >> %Diff is 0, an actual difference may still exist. In either >> case, more >> samples would be needed to detect an actual difference in >> sample means. >> >> (2) ParallelOldGC (-XX:+UseParallelGC -XX:+UseParallelOldGC) >> >> baseline: -XX:-UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >> resize: -XX:+UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >> >> ./compare results_baseline_512m_ParallelOldGC >> results_resize_512m_ParallelOldGC >> ============================================================================== >> >> results_baseline_512m_ParallelOldGC: >> Benchmark Samples Mean Stdev Geomean Weight >> jetstream 30 196.15 8.91 >> scimark 30 855.92 22.58 >> specjbb2005 30 161857.59 2653.89 >> specjvm98 30 554.76 11.31 >> ============================================================================== >> >> results_resize_512m_ParallelOldGC: >> Benchmark Samples Mean Stdev %Diff P >> Significant >> jetstream 30 195.17 6.04 -0.50 >> 0.623 * >> scimark 30 853.43 22.33 -0.29 >> 0.669 * >> specjbb2005 30 161027.44 2705.23 -0.51 >> 0.235 * >> specjvm98 30 560.08 9.74 0.96 >> 0.056 * >> ============================================================================== >> >> * - Not Significant: A non-zero %Diff for the mean could be noise. >> If the >> %Diff is 0, an actual difference may still exist. In either >> case, more >> samples would be needed to detect an actual difference in >> sample means. >> >> Thanks. >> Tao > From tao.mao at oracle.com Wed Nov 13 19:22:49 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 13 Nov 2013 11:22:49 -0800 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <52837A4D.7060906@oracle.com> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> <52837A4D.7060906@oracle.com> Message-ID: <5283D189.9090708@oracle.com> Thank you for trying the patch. Please see inline. Tao On 11/13/13 5:10 AM, Stefan Johansson wrote: > Hi, > > Thanks for looking at this Tao and Thomas, see comment inline. > > On 2013-11-13 11:58, Thomas Schatzl wrote: >> Hi Tao, >> >> thanks for picking this up. >> >> On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >>> Hi all, >>> >>> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >>> sparcv9 >>> https://bugs.openjdk.java.net/browse/JDK-8027915 >>> >>> webrev: >>> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ >> Some notes: >> >> + // bug 8027915 & 8027960: compensate for some cases of large pages >> >> I do not think it is a good idea to mention bug numbers in the tests: >> we can always get this information from the repository. >> >> Also I think the problem is not large pages, but how the collectors >> align the spaces and generations. >> >> + if (gcflag.equals("-XX:+UseParallelOldGC")) { >> >> I think it would be better to check for general use of parallel GC >> instead of only the parallel old implementation - I think both do the >> same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when >> invoking the VM. I.e. let the getMinInitialMaxHeap() method return the >> collector type used by parsing the output of -XX:+PrintFlagsFinal (which >> needs to be added). I am not sure if that is needed though, see below. >> >> + int numberOfSpaces = 4; >> + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * >> v.minAlignment); >> >> I believe this is not correct in the general case. The formula used in >> the VM (for generational collectors) is: >> >> expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) >> >> where >> >> smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); >> smallestPossibleHeapSize = align_size_up(smallest_new_size + // >> probably better named smallest_young_size >> >> align_size_up(_space_alignment, _gen_alignment), // old gen >> _heap_alignment); // >> align for heap size >> >> The change needs to get the space alignment for that from the VM for >> this. >> >> Recently the "minAlignment" and "maxAlignment" members of >> CollectorPolicy changed to spaceAlignment and heapAlignment. Is it >> possible to adapt the naming in the test? This seems to be an >> oversight in reviews for the earlier patch that changed that in the >> Hotspot code. >> >> After introducing all this to the test, there is no need for special >> casing parallel gc too. In case of G1 it should be sufficient to set >> space alignment and gen alignment to the same value. > I like this proposal, we should try to avoid special cases and as much > as possible. After fixing this please rerun the tests through JPRT. I > tried you current patch and it still fails on sparcv9, since it is > using v.minAlignment which is 512K instead of v.maxAlignment which is > 4M. But I think, as Thomas suggested, that we should rename these to > match the names in hotspot. Why, in your case, v.minAlignment = 512K and v.maxAlignment = 4M? What's the large page size? Where does v.minAlignment (i.e. gen_alignment) get that value? > > Cheers, > StefanJ >>> changeset: >>> Modified the test code so that it can deal with the case of using >>> large pages. >>> >>> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >>> mentioned in the CR is dealt with in a new CR JDK-8028254. >> You are correct, it is a slightly different but similar issue: I think >> min and initial heap size are now (or always have been, did not look) >> aligned to the heap alignment (formerly maxAlignment). >> >> The test now aligns the expected min/initial heap sizes to minAlignment >> only, which is wrong. >> >> Thanks, >> Thomas >> >> >> > From tao.mao at oracle.com Wed Nov 13 19:37:27 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 13 Nov 2013 11:37:27 -0800 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <1384340336.2822.80.camel@cirrus> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> Message-ID: <5283D4F7.1000206@oracle.com> Thank you for looking at this. I have some questions. Please see inline. Tao On 11/13/13 2:58 AM, Thomas Schatzl wrote: > Hi Tao, > > thanks for picking this up. > > On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >> Hi all, >> >> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >> sparcv9 >> https://bugs.openjdk.java.net/browse/JDK-8027915 >> >> webrev: >> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ > Some notes: > > + // bug 8027915& 8027960: compensate for some cases of large pages > > I do not think it is a good idea to mention bug numbers in the tests: > we can always get this information from the repository. > > Also I think the problem is not large pages, but how the collectors > align the spaces and generations. > > + if (gcflag.equals("-XX:+UseParallelOldGC")) { > > I think it would be better to check for general use of parallel GC > instead of only the parallel old implementation - I think both do the > same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when > invoking the VM. I.e. let the getMinInitialMaxHeap() method return the > collector type used by parsing the output of -XX:+PrintFlagsFinal (which > needs to be added). I am not sure if that is needed though, see below. > > + int numberOfSpaces = 4; > + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * > v.minAlignment); > > I believe this is not correct in the general case. The formula used in > the VM (for generational collectors) is: > > expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) > > where > > smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); > smallestPossibleHeapSize = align_size_up(smallest_new_size + // probably better named smallest_young_size > align_size_up(_space_alignment, _gen_alignment), // old gen > _heap_alignment); // align for heap size > > The change needs to get the space alignment for that from the VM for > this. I know the internal alignment mechanism in VM code here. But, as philosophy of testing, I don't like the idea to match up exactly every line of code "in the box", because the code may be wrong in one way or another especially when changes around it are introduced later. Rather, a test should test what it believes VM needs to do. With that, it may catch other potential bugs in future. So, I'd rather keep the test simple and non-intrusive (into the code). > > Recently the "minAlignment" and "maxAlignment" members of > CollectorPolicy changed to spaceAlignment and heapAlignment. Is it > possible to adapt the naming in the test? This seems to be an > oversight in reviews for the earlier patch that changed that in the > Hotspot code. How do you want to adapt the naming? Please be more specific. > > After introducing all this to the test, there is no need for special > casing parallel gc too. In case of G1 it should be sufficient to set > space alignment and gen alignment to the same value. > >> changeset: >> Modified the test code so that it can deal with the case of using >> large pages. >> >> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >> mentioned in the CR is dealt with in a new CR JDK-8028254. > You are correct, it is a slightly different but similar issue: I think > min and initial heap size are now (or always have been, did not look) > aligned to the heap alignment (formerly maxAlignment). > > The test now aligns the expected min/initial heap sizes to minAlignment > only, which is wrong. > > Thanks, > Thomas > > > From jon.masamitsu at oracle.com Wed Nov 13 21:40:51 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Wed, 13 Nov 2013 13:40:51 -0800 Subject: Request for review: 7098155: Resize young gen at full collections for UseParallelGC In-Reply-To: <5283C985.6080205@oracle.com> References: <5240CB0F.9080902@oracle.com> <527B02C3.3040805@oracle.com> <5283C985.6080205@oracle.com> Message-ID: <5283F1E3.6080002@oracle.com> Changes look good. On 11/13/2013 10:48 AM, Tao Mao wrote: > Hi Jon, > > New webrev is uploaded. > http://cr.openjdk.java.net/~tamao/7098155/webrev.01/ > > I think it makes even more sense to guard the piece of code under > (UseAdaptiveGenerationSizePolicyAtMajorCollection...etc.) Agreed. I didn't mean to imply any differently. Jon > > Thanks. > Tao > > On 11/6/13 7:02 PM, Jon Masamitsu wrote: >> Tao, >> >> http://cr.openjdk.java.net/~tamao/7098155/webrev.00/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp.frames.html >> >> >> Should this block of code >> >> 266 // Swap the survivor spaces if from_space is empty >> 267 if (UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection && >> 268 young_gen->from_space()->is_empty()) { >> 269 young_gen->from_space()->clear(SpaceDecorator::Mangle); >> 270 young_gen->swap_spaces(); >> 271 } >> >> be under the guard just below it? >> >> 273 if (UseAdaptiveSizePolicy) { >> >> http://cr.openjdk.java.net/~tamao/7098155/webrev.00/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.frames.html >> >> >> Same question for this block of code >> >> 2103 // Swap the survivor spaces if from_space is empty >> 2104 if (UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection && >> 2105 young_gen->from_space()->is_empty()) { >> 2106 young_gen->from_space()->clear(SpaceDecorator::Mangle); >> 2107 young_gen->swap_spaces(); >> 2108 } >> >> Jon >> >> >> >> On 9/23/2013 4:13 PM, Tao Mao wrote: >>> Hi, >>> >>> changeset: >>> https://bugs.openjdk.java.net/browse/JDK-7098155 >>> >>> In order to avoid the situation for UseParallelGC described in the >>> CR, we need to resize young gen at full collections. >>> >>> And, according to the heap configuration in young gen, we need to >>> swap from- and to-space () after full gc in order to get the young >>> gen correctly resized after several GC's. >>> >>> webrev: >>> http://cr.openjdk.java.net/~tamao/7098155/webrev.00/ >>> >>> test: >>> - Pass JPRT tests >>> >>> - RefWorkload >>> >>> (1) ParallelGC (-XX:+UseParallelGC -XX:-UseParallelOldGC) >>> >>> baseline: -XX:-UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >>> resize: -XX:+UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >>> >>> ./compare results_baseline_512m results_resize_512m >>> ============================================================================== >>> >>> results_baseline_512m: >>> Benchmark Samples Mean Stdev Geomean Weight >>> jetstream 30 192.52 9.86 >>> scimark 30 855.62 30.33 >>> specjbb2005 30 145844.73 4552.07 >>> specjvm98 30 568.92 10.65 >>> ============================================================================== >>> >>> results_resize_512m: >>> Benchmark Samples Mean Stdev %Diff P >>> Significant >>> jetstream 30 192.89 11.33 0.19 >>> 0.894 * >>> scimark 30 862.21 24.17 0.77 >>> 0.356 * >>> specjbb2005 30 142749.53 4852.66 -2.12 >>> 0.014 * >>> specjvm98 30 566.42 8.55 -0.44 >>> 0.320 * >>> ============================================================================== >>> >>> * - Not Significant: A non-zero %Diff for the mean could be noise. >>> If the >>> %Diff is 0, an actual difference may still exist. In either >>> case, more >>> samples would be needed to detect an actual difference in >>> sample means. >>> >>> (2) ParallelOldGC (-XX:+UseParallelGC -XX:+UseParallelOldGC) >>> >>> baseline: -XX:-UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >>> resize: -XX:+UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection >>> >>> ./compare results_baseline_512m_ParallelOldGC >>> results_resize_512m_ParallelOldGC >>> ============================================================================== >>> >>> results_baseline_512m_ParallelOldGC: >>> Benchmark Samples Mean Stdev Geomean Weight >>> jetstream 30 196.15 8.91 >>> scimark 30 855.92 22.58 >>> specjbb2005 30 161857.59 2653.89 >>> specjvm98 30 554.76 11.31 >>> ============================================================================== >>> >>> results_resize_512m_ParallelOldGC: >>> Benchmark Samples Mean Stdev %Diff P >>> Significant >>> jetstream 30 195.17 6.04 -0.50 >>> 0.623 * >>> scimark 30 853.43 22.33 -0.29 >>> 0.669 * >>> specjbb2005 30 161027.44 2705.23 -0.51 >>> 0.235 * >>> specjvm98 30 560.08 9.74 0.96 >>> 0.056 * >>> ============================================================================== >>> >>> * - Not Significant: A non-zero %Diff for the mean could be noise. >>> If the >>> %Diff is 0, an actual difference may still exist. In either >>> case, more >>> samples would be needed to detect an actual difference in >>> sample means. >>> >>> Thanks. >>> Tao >> From tao.mao at oracle.com Thu Nov 14 00:36:50 2013 From: tao.mao at oracle.com (Tao Mao) Date: Wed, 13 Nov 2013 16:36:50 -0800 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <1384252920.3007.16.camel@cirrus> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> <527AE23E.1020000@oracle.com> <1384252920.3007.16.camel@cirrus> Message-ID: <52841B22.1080300@oracle.com> Hi all, New webrev uploaded. http://cr.openjdk.java.net/~tamao/6521376/webrev.04/ Please see inline, Thomas. Thanks. Tao On 11/12/13 2:42 AM, Thomas Schatzl wrote: > Hi, > > sorry for the late response... > > On Wed, 2013-11-06 at 16:43 -0800, Tao Mao wrote: >> Hi all, >> >> A new webrev is updated >> http://cr.openjdk.java.net/~tamao/6521376/webrev.03/ >> >> It includes a thorough test, which is one good way to examine the >> changeset. > Agree :) >> Changeset: >> >> One point I want to discuss here is the validity of setting >> -XX:MaxTenuringThreshold=16. The reason why I'd consider it valid is: >> when NeverTenure is set, MaxTenuringThreshold is set to 16 while >> setting MaxTenuringThreshold=15 doesn't make sense here. Thus, >> MaxTenuringThreshold=16 needs to be considered a valid setting. > I think I am fine with this. > > As for the test in TestObjectTenuringFlags: I think it would be more > clear if every test were a single method call instead of the > > vmOpts.clear(); > collections.addAll( ...test settings... ); > shouldFail = ... > expectedFlags = ... > runTest(...) > > e.g. as > > runTest(new String[] { test settings }, true /* should_fail */, new > ExpectedTenuringFlags( ... )); Done. > > I do not really like the use of the "vmOpts" global both in the main() > method and the ""runTenurinigFlagsConsistencyTest()". I do not think > there is need to save memory here, and that would save the test to reset > the "vmOpts" variable all the time. Done. > I do not think the test needs to basically rethrow the RuntimeException > from checkTenurinigFlagsConsistency in checkTenurinigFlagsConsistency. > The test could just let it fall through (without try-catch). Done. > > Also checkTenurinigFlagsConsistency could fail fast on any incorrect > consistency check, with an explicit message for every type of failure > (e.g. "expected AlwaysTenure to be, is value> instead"), instead of accumulating the error using the&& > operator. Done. > > The stack trace in the error will give you the failing test quickly, but > it's not bad to show the VM parameters that lead to the error. Chose not to do so. The stack trace should be enough to track down. > > There is also a typo in the "runTenurinigFlagsConsistencyTest" test > name, an additional "i". The same typo in > "checkTenurinigFlagsConsistency". Done. > > Otherwise looks good. > > Thanks, > Thomas > > From thomas.schatzl at oracle.com Thu Nov 14 08:21:55 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Thu, 14 Nov 2013 09:21:55 +0100 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <52841B22.1080300@oracle.com> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> <527AE23E.1020000@oracle.com> <1384252920.3007.16.camel@cirrus> <52841B22.1080300@oracle.com> Message-ID: <1384417315.2822.1.camel@cirrus> Hi, On Wed, 2013-11-13 at 16:36 -0800, Tao Mao wrote: > Hi all, > > New webrev uploaded. > http://cr.openjdk.java.net/~tamao/6521376/webrev.04/ > > Please see inline, Thomas. Looks good, thanks. Thomas From stefan.johansson at oracle.com Thu Nov 14 12:51:23 2013 From: stefan.johansson at oracle.com (Stefan Johansson) Date: Thu, 14 Nov 2013 13:51:23 +0100 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <5283D189.9090708@oracle.com> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> <52837A4D.7060906@oracle.com> <5283D189.9090708@oracle.com> Message-ID: <5284C74B.6050707@oracle.com> Please see inline. On 2013-11-13 20:22, Tao Mao wrote: > Thank you for trying the patch. Please see inline. > > Tao > > On 11/13/13 5:10 AM, Stefan Johansson wrote: >> Hi, >> >> Thanks for looking at this Tao and Thomas, see comment inline. >> >> On 2013-11-13 11:58, Thomas Schatzl wrote: >>> Hi Tao, >>> >>> thanks for picking this up. >>> >>> On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >>>> Hi all, >>>> >>>> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >>>> sparcv9 >>>> https://bugs.openjdk.java.net/browse/JDK-8027915 >>>> >>>> webrev: >>>> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ >>> Some notes: >>> >>> + // bug 8027915 & 8027960: compensate for some cases of large pages >>> >>> I do not think it is a good idea to mention bug numbers in the tests: >>> we can always get this information from the repository. >>> >>> Also I think the problem is not large pages, but how the collectors >>> align the spaces and generations. >>> >>> + if (gcflag.equals("-XX:+UseParallelOldGC")) { >>> >>> I think it would be better to check for general use of parallel GC >>> instead of only the parallel old implementation - I think both do the >>> same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when >>> invoking the VM. I.e. let the getMinInitialMaxHeap() method return the >>> collector type used by parsing the output of -XX:+PrintFlagsFinal >>> (which >>> needs to be added). I am not sure if that is needed though, see below. >>> >>> + int numberOfSpaces = 4; >>> + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * >>> v.minAlignment); >>> >>> I believe this is not correct in the general case. The formula used in >>> the VM (for generational collectors) is: >>> >>> expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) >>> >>> where >>> >>> smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); >>> smallestPossibleHeapSize = align_size_up(smallest_new_size + // >>> probably better named smallest_young_size >>> align_size_up(_space_alignment, _gen_alignment), // old gen >>> _heap_alignment); // >>> align for heap size >>> >>> The change needs to get the space alignment for that from the VM for >>> this. >>> >>> Recently the "minAlignment" and "maxAlignment" members of >>> CollectorPolicy changed to spaceAlignment and heapAlignment. Is it >>> possible to adapt the naming in the test? This seems to be an >>> oversight in reviews for the earlier patch that changed that in the >>> Hotspot code. >>> >>> After introducing all this to the test, there is no need for special >>> casing parallel gc too. In case of G1 it should be sufficient to set >>> space alignment and gen alignment to the same value. >> I like this proposal, we should try to avoid special cases and as >> much as possible. After fixing this please rerun the tests through >> JPRT. I tried you current patch and it still fails on sparcv9, since >> it is using v.minAlignment which is 512K instead of v.maxAlignment >> which is 4M. But I think, as Thomas suggested, that we should rename >> these to match the names in hotspot. > Why, in your case, v.minAlignment = 512K and v.maxAlignment = 4M? > What's the large page size? Where does v.minAlignment (i.e. > gen_alignment) get that value? Those alignments are parsed from the output of WhiteBox.printHeapSizes() which in turn prints values from the collector policy. minAlingment is corresponding to space_alignment and maxAlignment to heap_alignment, and I now think I must have run the JPRT run on a repo without my fix to set them to the same value. Looking at the code they should not differ for this collector, and then the test shouldn't have failed. Sorry for the noise. Cheers, StefanJ > >> >> Cheers, >> StefanJ >>>> changeset: >>>> Modified the test code so that it can deal with the case of using >>>> large pages. >>>> >>>> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >>>> mentioned in the CR is dealt with in a new CR JDK-8028254. >>> You are correct, it is a slightly different but similar issue: I think >>> min and initial heap size are now (or always have been, did not look) >>> aligned to the heap alignment (formerly maxAlignment). >>> >>> The test now aligns the expected min/initial heap sizes to minAlignment >>> only, which is wrong. >>> >>> Thanks, >>> Thomas >>> >>> >>> >> From jon.masamitsu at oracle.com Thu Nov 14 16:32:26 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Thu, 14 Nov 2013 08:32:26 -0800 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <52841B22.1080300@oracle.com> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> <527AE23E.1020000@oracle.com> <1384252920.3007.16.camel@cirrus> <52841B22.1080300@oracle.com> Message-ID: <5284FB1A.6090608@oracle.com> Tao, http://cr.openjdk.java.net/~tamao/6521376/webrev.04/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp.udiff.html + gclog_or_tty->print_cr("Desired survivor size " SIZE_FORMAT " bytes, new threshold %u (max threshold %u)", What do you think of using UINTX_FORMAT instead of %u? Just a little bit future proof? http://cr.openjdk.java.net/~tamao/6521376/webrev.04/src/share/vm/gc_implementation/shared/ageTable.cpp.udiff.html Consider an assertion to check that MaxTenuringThreshold has one of the two expected values. + uint result; + + if (AlwaysTenure || NeverTenure) { + result = MaxTenuringThreshold; assert(MaxTenuringThreshold == 0 || MaxTenuringThreshold ==markOopDesc::max_age + 1, errmsg("MaxTenuringThreshold should be either 0 or " UINTX_FORMAT " and is " UINTX_FORMAT, MaxTenuringThreshold); + } else { + gclog_or_tty->print_cr("Desired survivor size " SIZE_FORMAT " bytes, new threshold %u (max threshold %u)", Use UINTX_FORMAT? That's all. Rest looks good. Jon On 11/13/13 4:36 PM, Tao Mao wrote: > Hi all, > > New webrev uploaded. > http://cr.openjdk.java.net/~tamao/6521376/webrev.04/ > > Please see inline, Thomas. > > Thanks. > Tao > > On 11/12/13 2:42 AM, Thomas Schatzl wrote: >> Hi, >> >> sorry for the late response... >> >> On Wed, 2013-11-06 at 16:43 -0800, Tao Mao wrote: >>> Hi all, >>> >>> A new webrev is updated >>> http://cr.openjdk.java.net/~tamao/6521376/webrev.03/ >>> >>> It includes a thorough test, which is one good way to examine the >>> changeset. >> Agree :) >>> Changeset: >>> >>> One point I want to discuss here is the validity of setting >>> -XX:MaxTenuringThreshold=16. The reason why I'd consider it valid is: >>> when NeverTenure is set, MaxTenuringThreshold is set to 16 while >>> setting MaxTenuringThreshold=15 doesn't make sense here. Thus, >>> MaxTenuringThreshold=16 needs to be considered a valid setting. >> I think I am fine with this. >> >> As for the test in TestObjectTenuringFlags: I think it would be more >> clear if every test were a single method call instead of the >> >> vmOpts.clear(); >> collections.addAll( ...test settings... ); >> shouldFail = ... >> expectedFlags = ... >> runTest(...) >> >> e.g. as >> >> runTest(new String[] { test settings }, true /* should_fail */, new >> ExpectedTenuringFlags( ... )); > Done. >> >> I do not really like the use of the "vmOpts" global both in the main() >> method and the ""runTenurinigFlagsConsistencyTest()". I do not think >> there is need to save memory here, and that would save the test to reset >> the "vmOpts" variable all the time. > Done. >> I do not think the test needs to basically rethrow the RuntimeException >> from checkTenurinigFlagsConsistency in checkTenurinigFlagsConsistency. >> The test could just let it fall through (without try-catch). > Done. >> >> Also checkTenurinigFlagsConsistency could fail fast on any incorrect >> consistency check, with an explicit message for every type of failure >> (e.g. "expected AlwaysTenure to be, is> value> instead"), instead of accumulating the error using the&& >> operator. > Done. >> >> The stack trace in the error will give you the failing test quickly, but >> it's not bad to show the VM parameters that lead to the error. > Chose not to do so. The stack trace should be enough to track down. >> >> There is also a typo in the "runTenurinigFlagsConsistencyTest" test >> name, an additional "i". The same typo in >> "checkTenurinigFlagsConsistency". > Done. >> >> Otherwise looks good. >> >> Thanks, >> Thomas >> >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From john.coomes at oracle.com Thu Nov 14 19:02:36 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:02:36 +0000 Subject: hg: hsx/hotspot-gc/corba: Added tag jdk8-b116 for changeset 5fdc44652089 Message-ID: <20131114190237.2DFAD625E3@hg.openjdk.java.net> Changeset: 7299367c8aa4 Author: cl Date: 2013-11-14 09:04 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/7299367c8aa4 Added tag jdk8-b116 for changeset 5fdc44652089 ! .hgtags From john.coomes at oracle.com Thu Nov 14 19:02:32 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:02:32 +0000 Subject: hg: hsx/hotspot-gc: 3 new changesets Message-ID: <20131114190232.C58B8625E2@hg.openjdk.java.net> Changeset: c1029b02ca87 Author: ihse Date: 2013-11-08 09:36 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/c1029b02ca87 8027836: Webrev should handle files that has been moved from a directory which now is removed. Reviewed-by: mduigou, tbell ! make/scripts/webrev.ksh Changeset: cbfe5da942c6 Author: katleman Date: 2013-11-11 15:06 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/cbfe5da942c6 Merge Changeset: a4afb0a8d55e Author: cl Date: 2013-11-14 09:04 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/a4afb0a8d55e Added tag jdk8-b116 for changeset cbfe5da942c6 ! .hgtags From john.coomes at oracle.com Thu Nov 14 19:02:40 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:02:40 +0000 Subject: hg: hsx/hotspot-gc/jaxp: Added tag jdk8-b116 for changeset e757eb9aee3d Message-ID: <20131114190244.665B6625E4@hg.openjdk.java.net> Changeset: c1d234d4f164 Author: cl Date: 2013-11-14 09:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/c1d234d4f164 Added tag jdk8-b116 for changeset e757eb9aee3d ! .hgtags From john.coomes at oracle.com Thu Nov 14 19:02:48 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:02:48 +0000 Subject: hg: hsx/hotspot-gc/jaxws: Added tag jdk8-b116 for changeset 587560c222a2 Message-ID: <20131114190252.50C7F625E5@hg.openjdk.java.net> Changeset: fe56ba456fd3 Author: cl Date: 2013-11-14 09:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/fe56ba456fd3 Added tag jdk8-b116 for changeset 587560c222a2 ! .hgtags From john.coomes at oracle.com Thu Nov 14 19:03:04 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:03:04 +0000 Subject: hg: hsx/hotspot-gc/jdk: 5 new changesets Message-ID: <20131114190414.EBCF9625E6@hg.openjdk.java.net> Changeset: bdcba4854576 Author: erikj Date: 2013-11-07 10:51 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/bdcba4854576 8027698: Platform specific jars are not being signed by the sign-jars target Reviewed-by: ihse, tbell, wetmore ! makefiles/SignJars.gmk Changeset: 295a641fc86b Author: erikj Date: 2013-11-07 14:06 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/295a641fc86b 8027406: JDK demos are missing source files Reviewed-by: alexsch, ihse ! makefiles/CompileDemos.gmk Changeset: 43168d403243 Author: anthony Date: 2013-11-08 20:07 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/43168d403243 8027912: [macosx] Provide means to force the headful mode on OS X when running via ssh Summary: Bypass AquaSession check if AWT_FORCE_HEADFUL env. variable is set to TRUE Reviewed-by: anthony, art Contributed-by: David Dehaven ! src/solaris/native/java/lang/java_props_macosx.c Changeset: 0dc0067f3b8e Author: katleman Date: 2013-11-11 15:06 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0dc0067f3b8e Merge Changeset: 483148bf625e Author: cl Date: 2013-11-14 09:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/483148bf625e Added tag jdk8-b116 for changeset 0dc0067f3b8e ! .hgtags From john.coomes at oracle.com Thu Nov 14 19:05:12 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:05:12 +0000 Subject: hg: hsx/hotspot-gc/langtools: Added tag jdk8-b116 for changeset 3c040b04af05 Message-ID: <20131114190518.86478625E7@hg.openjdk.java.net> Changeset: 64d119680f0a Author: cl Date: 2013-11-14 09:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/64d119680f0a Added tag jdk8-b116 for changeset 3c040b04af05 ! .hgtags From john.coomes at oracle.com Thu Nov 14 19:05:23 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 14 Nov 2013 19:05:23 +0000 Subject: hg: hsx/hotspot-gc/nashorn: Added tag jdk8-b116 for changeset 0fb1a427fbf6 Message-ID: <20131114190525.A3EC7625E8@hg.openjdk.java.net> Changeset: 774c63629870 Author: cl Date: 2013-11-14 09:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/774c63629870 Added tag jdk8-b116 for changeset 0fb1a427fbf6 ! .hgtags From tao.mao at oracle.com Fri Nov 15 00:04:57 2013 From: tao.mao at oracle.com (Tao Mao) Date: Thu, 14 Nov 2013 16:04:57 -0800 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <5284FB1A.6090608@oracle.com> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> <527AE23E.1020000@oracle.com> <1384252920.3007.16.camel@cirrus> <52841B22.1080300@oracle.com> <5284FB1A.6090608@oracle.com> Message-ID: <52856529.60407@oracle.com> Hi all, The webrev is updated. http://cr.openjdk.java.net/~tamao/6521376/webrev.05/ The suggestions for print formatting and assertions are taken. Good points! Thanks, Jon.:-) Note the behaviors of -XX:+PrintTenuringDistribution (1) Parallel GC Before: java -XX:+PrintTenuringDistribution TestFullGC Desired survivor size 11010048 bytes, new threshold 7 (max 15) After: java -XX:+PrintTenuringDistribution TestFullGC Desired survivor size 524288 bytes, new threshold 7 (max threshold 15) (2) Other collectors Before: java -XX:+UseSerialGC -XX:+PrintTenuringDistribution TestFullGC Desired survivor size 65536 bytes, new threshold 1 (max 15) - age 1: 131064 bytes, 131064 total After: java -XX:+UseSerialGC -XX:+PrintTenuringDistribution TestFullGC Desired survivor size 65536 bytes, new threshold 1 (max threshold 15) - age 1: 131072 bytes, 131072 total On 11/14/13 8:32 AM, Jon Masamitsu wrote: > Tao, > > http://cr.openjdk.java.net/~tamao/6521376/webrev.04/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp.udiff.html > > + gclog_or_tty->print_cr("Desired survivor size " SIZE_FORMAT " bytes, new threshold %u (max threshold %u)", > > What do you think of using UINTX_FORMAT instead of %u? Just a little > bit future proof? > > http://cr.openjdk.java.net/~tamao/6521376/webrev.04/src/share/vm/gc_implementation/shared/ageTable.cpp.udiff.html > > Consider an assertion to check that MaxTenuringThreshold has one of > the two expected values. > + uint result; > + > + if (AlwaysTenure || NeverTenure) { > + result = MaxTenuringThreshold; > > assert(MaxTenuringThreshold == 0 || MaxTenuringThreshold ==markOopDesc::max_age + 1, > errmsg("MaxTenuringThreshold should be either 0 or " UINTX_FORMAT " and is " UINTX_FORMAT, > MaxTenuringThreshold); > > + } else { > > + gclog_or_tty->print_cr("Desired survivor size " SIZE_FORMAT " bytes, new threshold %u (max threshold %u)", > > Use UINTX_FORMAT? > > That's all. Rest looks good. > > Jon > > On 11/13/13 4:36 PM, Tao Mao wrote: >> Hi all, >> >> New webrev uploaded. >> http://cr.openjdk.java.net/~tamao/6521376/webrev.04/ >> >> Please see inline, Thomas. >> >> Thanks. >> Tao >> >> On 11/12/13 2:42 AM, Thomas Schatzl wrote: >>> Hi, >>> >>> sorry for the late response... >>> >>> On Wed, 2013-11-06 at 16:43 -0800, Tao Mao wrote: >>>> Hi all, >>>> >>>> A new webrev is updated >>>> http://cr.openjdk.java.net/~tamao/6521376/webrev.03/ >>>> >>>> It includes a thorough test, which is one good way to examine the >>>> changeset. >>> Agree :) >>>> Changeset: >>>> >>>> One point I want to discuss here is the validity of setting >>>> -XX:MaxTenuringThreshold=16. The reason why I'd consider it valid is: >>>> when NeverTenure is set, MaxTenuringThreshold is set to 16 while >>>> setting MaxTenuringThreshold=15 doesn't make sense here. Thus, >>>> MaxTenuringThreshold=16 needs to be considered a valid setting. >>> I think I am fine with this. >>> >>> As for the test in TestObjectTenuringFlags: I think it would be more >>> clear if every test were a single method call instead of the >>> >>> vmOpts.clear(); >>> collections.addAll( ...test settings... ); >>> shouldFail = ... >>> expectedFlags = ... >>> runTest(...) >>> >>> e.g. as >>> >>> runTest(new String[] { test settings }, true /* should_fail */, new >>> ExpectedTenuringFlags( ... )); >> Done. >>> >>> I do not really like the use of the "vmOpts" global both in the main() >>> method and the ""runTenurinigFlagsConsistencyTest()". I do not think >>> there is need to save memory here, and that would save the test to >>> reset >>> the "vmOpts" variable all the time. >> Done. >>> I do not think the test needs to basically rethrow the RuntimeException >>> from checkTenurinigFlagsConsistency in checkTenurinigFlagsConsistency. >>> The test could just let it fall through (without try-catch). >> Done. >>> >>> Also checkTenurinigFlagsConsistency could fail fast on any incorrect >>> consistency check, with an explicit message for every type of failure >>> (e.g. "expected AlwaysTenure to be, is>> value> instead"), instead of accumulating the error using the&& >>> operator. >> Done. >>> >>> The stack trace in the error will give you the failing test quickly, >>> but >>> it's not bad to show the VM parameters that lead to the error. >> Chose not to do so. The stack trace should be enough to track down. >>> >>> There is also a typo in the "runTenurinigFlagsConsistencyTest" test >>> name, an additional "i". The same typo in >>> "checkTenurinigFlagsConsistency". >> Done. >>> >>> Otherwise looks good. >>> >>> Thanks, >>> Thomas >>> >>> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Fri Nov 15 17:20:21 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 15 Nov 2013 09:20:21 -0800 Subject: Request for review: 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency In-Reply-To: <52856529.60407@oracle.com> References: <51C66573.1070206@oracle.com> <1372081854.2721.138.camel@cirrus> <51D3425E.10305@oracle.com> <1372853037.2719.43.camel@cirrus> <527AE23E.1020000@oracle.com> <1384252920.3007.16.camel@cirrus> <52841B22.1080300@oracle.com> <5284FB1A.6090608@oracle.com> <52856529.60407@oracle.com> Message-ID: <528657D5.4080003@oracle.com> Tao, Looks good. Thanks for the changes. Jon On 11/14/2013 4:04 PM, Tao Mao wrote: > Hi all, > > The webrev is updated. > http://cr.openjdk.java.net/~tamao/6521376/webrev.05/ > > The suggestions for print formatting and assertions are taken. Good > points! Thanks, Jon.:-) > > Note the behaviors of -XX:+PrintTenuringDistribution > > (1) Parallel GC > > Before: > java -XX:+PrintTenuringDistribution TestFullGC > > Desired survivor size 11010048 bytes, new threshold 7 (max 15) > > After: > java -XX:+PrintTenuringDistribution TestFullGC > > Desired survivor size 524288 bytes, new threshold 7 (max threshold 15) > > (2) Other collectors > > Before: > java -XX:+UseSerialGC -XX:+PrintTenuringDistribution TestFullGC > > Desired survivor size 65536 bytes, new threshold 1 (max 15) > - age 1: 131064 bytes, 131064 total > > After: > java -XX:+UseSerialGC -XX:+PrintTenuringDistribution TestFullGC > > Desired survivor size 65536 bytes, new threshold 1 (max threshold 15) > - age 1: 131072 bytes, 131072 total > > > > On 11/14/13 8:32 AM, Jon Masamitsu wrote: >> Tao, >> >> http://cr.openjdk.java.net/~tamao/6521376/webrev.04/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp.udiff.html >> >> + gclog_or_tty->print_cr("Desired survivor size " SIZE_FORMAT " bytes, new threshold %u (max threshold %u)", >> >> What do you think of using UINTX_FORMAT instead of %u? Just a little >> bit future proof? >> >> http://cr.openjdk.java.net/~tamao/6521376/webrev.04/src/share/vm/gc_implementation/shared/ageTable.cpp.udiff.html >> >> Consider an assertion to check that MaxTenuringThreshold has one of >> the two expected values. >> + uint result; >> + >> + if (AlwaysTenure || NeverTenure) { >> + result = MaxTenuringThreshold; >> >> assert(MaxTenuringThreshold == 0 || MaxTenuringThreshold ==markOopDesc::max_age + 1, >> errmsg("MaxTenuringThreshold should be either 0 or " UINTX_FORMAT " and is " UINTX_FORMAT, >> MaxTenuringThreshold); >> >> + } else { >> >> + gclog_or_tty->print_cr("Desired survivor size " SIZE_FORMAT " bytes, new threshold %u (max threshold %u)", >> >> Use UINTX_FORMAT? >> >> That's all. Rest looks good. >> >> Jon >> >> On 11/13/13 4:36 PM, Tao Mao wrote: >>> Hi all, >>> >>> New webrev uploaded. >>> http://cr.openjdk.java.net/~tamao/6521376/webrev.04/ >>> >>> Please see inline, Thomas. >>> >>> Thanks. >>> Tao >>> >>> On 11/12/13 2:42 AM, Thomas Schatzl wrote: >>>> Hi, >>>> >>>> sorry for the late response... >>>> >>>> On Wed, 2013-11-06 at 16:43 -0800, Tao Mao wrote: >>>>> Hi all, >>>>> >>>>> A new webrev is updated >>>>> http://cr.openjdk.java.net/~tamao/6521376/webrev.03/ >>>>> >>>>> It includes a thorough test, which is one good way to examine the >>>>> changeset. >>>> Agree :) >>>>> Changeset: >>>>> >>>>> One point I want to discuss here is the validity of setting >>>>> -XX:MaxTenuringThreshold=16. The reason why I'd consider it valid is: >>>>> when NeverTenure is set, MaxTenuringThreshold is set to 16 while >>>>> setting MaxTenuringThreshold=15 doesn't make sense here. Thus, >>>>> MaxTenuringThreshold=16 needs to be considered a valid setting. >>>> I think I am fine with this. >>>> >>>> As for the test in TestObjectTenuringFlags: I think it would be more >>>> clear if every test were a single method call instead of the >>>> >>>> vmOpts.clear(); >>>> collections.addAll( ...test settings... ); >>>> shouldFail = ... >>>> expectedFlags = ... >>>> runTest(...) >>>> >>>> e.g. as >>>> >>>> runTest(new String[] { test settings }, true /* should_fail */, new >>>> ExpectedTenuringFlags( ... )); >>> Done. >>>> >>>> I do not really like the use of the "vmOpts" global both in the main() >>>> method and the ""runTenurinigFlagsConsistencyTest()". I do not think >>>> there is need to save memory here, and that would save the test to >>>> reset >>>> the "vmOpts" variable all the time. >>> Done. >>>> I do not think the test needs to basically rethrow the >>>> RuntimeException >>>> from checkTenurinigFlagsConsistency in checkTenurinigFlagsConsistency. >>>> The test could just let it fall through (without try-catch). >>> Done. >>>> >>>> Also checkTenurinigFlagsConsistency could fail fast on any incorrect >>>> consistency check, with an explicit message for every type of failure >>>> (e.g. "expected AlwaysTenure to be, is>>> value> instead"), instead of accumulating the error using the&& >>>> operator. >>> Done. >>>> >>>> The stack trace in the error will give you the failing test >>>> quickly, but >>>> it's not bad to show the VM parameters that lead to the error. >>> Chose not to do so. The stack trace should be enough to track down. >>>> >>>> There is also a typo in the "runTenurinigFlagsConsistencyTest" test >>>> name, an additional "i". The same typo in >>>> "checkTenurinigFlagsConsistency". >>> Done. >>>> >>>> Otherwise looks good. >>>> >>>> Thanks, >>>> Thomas >>>> >>>> >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From alejandro.murillo at oracle.com Fri Nov 15 22:28:09 2013 From: alejandro.murillo at oracle.com (alejandro.murillo at oracle.com) Date: Fri, 15 Nov 2013 22:28:09 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 22 new changesets Message-ID: <20131115222854.E2A1962632@hg.openjdk.java.net> Changeset: aec3226be72d Author: cl Date: 2013-11-14 09:04 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/aec3226be72d Added tag jdk8-b116 for changeset 52b076e6ffae ! .hgtags Changeset: 9d8b29a0548c Author: mgerdin Date: 2013-11-08 16:48 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/9d8b29a0548c 8027237: New tests on ReservedSpace/VirtualSpace classes Summary: Three tests added: 1) test stressing VirtualSpace by resizing it constantly 2) test running unit tests in several threads 3) test checking protected area in ReservedHeapSpace class Reviewed-by: stefank, zgu Contributed-by: aleksey.timofeev at oracle.com ! src/share/vm/prims/whitebox.cpp + test/runtime/memory/ReadFromNoaccessArea.java + test/runtime/memory/RunUnitTestsConcurrently.java + test/runtime/memory/StressVirtualSpaceResize.java ! test/testlibrary/whitebox/sun/hotspot/WhiteBox.java Changeset: 19f8a5d7600b Author: mgerdin Date: 2013-11-08 23:49 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/19f8a5d7600b Merge Changeset: fce21ac5968d Author: acorn Date: 2013-11-13 07:31 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/fce21ac5968d 8027229: ICCE expected for >=2 maximally specific default methods. Summary: Need to process defaults for interfaces for invokespecial Reviewed-by: lfoltan, hseigel, coleenp, jrose ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/defaultMethods.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/linkResolver.hpp ! src/share/vm/oops/klassVtable.cpp Changeset: 41cb10cbfb3c Author: coleenp Date: 2013-11-13 16:42 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/41cb10cbfb3c 8025937: assert(existing_f1 == NULL || existing_f1 == f1) failed: illegal field change Summary: Create extra constant pool cache entries for invokespecial/InterfaceMethodref to hold the alternate resolution. Reviewed-by: jrose, lfoltan, hseigel ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/interpreter/rewriter.hpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/cpCache.hpp Changeset: 755c423791ab Author: ehelin Date: 2013-11-14 21:05 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/755c423791ab Merge ! src/share/vm/prims/whitebox.cpp Changeset: e2509677809c Author: vlivanov Date: 2013-11-08 01:13 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e2509677809c 8023037: Race between ciEnv::register_method and nmethod::make_not_entrant_or_zombie Reviewed-by: kvn, iveresov ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/runtime/globals.hpp Changeset: 83c8f6f4ab09 Author: drchase Date: 2013-11-08 14:19 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/83c8f6f4ab09 Merge Changeset: 1dcea64e9f00 Author: kvn Date: 2013-11-11 11:53 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/1dcea64e9f00 8024830: SEGV in org.apache.lucene.codecs.compressing.CompressingTermVectorsReader.get Summary: Exclude last input argument's stack slots from vector's spilling masks. Reviewed-by: iveresov ! src/share/vm/opto/matcher.cpp Changeset: 78da3894b86f Author: anoll Date: 2013-11-12 09:32 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/78da3894b86f 8027593: performance drop with constrained codecache starting with hs25 b111 Summary: Fixed proper sweeping of small code cache sizes Reviewed-by: kvn, iveresov ! src/share/vm/code/nmethod.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileBroker.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/sweeper.hpp Changeset: 144b23411b51 Author: roland Date: 2013-11-12 13:58 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/144b23411b51 8027632: assert(xtype->klass_is_exact()) failed: Should be exact at graphKit.cpp Summary: receiver type collected by profiling for default method may be interface Reviewed-by: kvn, iveresov ! src/share/vm/c1/c1_GraphBuilder.cpp Changeset: f675976a61e7 Author: rbackman Date: 2013-11-12 13:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/f675976a61e7 8028198: SIGSEGV in PhaseIdealLoop::build_loop_late_post Reviewed-by: iveresov, kvn ! src/share/vm/opto/loopopts.cpp + test/compiler/intrinsics/mathexact/SplitThruPhiTest.java Changeset: b957c650babb Author: rbackman Date: 2013-11-12 14:52 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/b957c650babb 8028207: assert(_outcnt==1) failed: not unique in compile.cpp Reviewed-by: iveresov, kvn ! src/share/vm/opto/mathexactnode.hpp + test/compiler/intrinsics/mathexact/GVNTest.java Changeset: e6ba215af802 Author: roland Date: 2013-11-13 09:45 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e6ba215af802 8027631: "unexpected profiling mismatch" error with new type profiling Summary: inlined method handle calls can call methods with different signatures Reviewed-by: kvn, iveresov ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_LIRGenerator.hpp + test/compiler/profiling/TestUnexpectedProfilingMismatch.java Changeset: 924c32982a12 Author: roland Date: 2013-11-13 01:50 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/924c32982a12 Merge Changeset: 6e1826d5c23e Author: roland Date: 2013-11-13 13:45 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/6e1826d5c23e 8027572: assert(r != 0) failed: invalid Summary: null classes should be expected in profiles with conflicts Reviewed-by: kvn, iveresov ! src/share/vm/ci/ciMethodData.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.hpp + test/compiler/profiling/unloadingconflict/B.java + test/compiler/profiling/unloadingconflict/TestProfileConflictClassUnloading.java Changeset: e74074c34312 Author: vlivanov Date: 2013-11-14 09:14 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e74074c34312 8028159: C2: compiler stack overflow during inlining of @ForceInline methods Reviewed-by: roland, kvn ! src/share/vm/c1/c1_globals.hpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/runtime/globals.hpp Changeset: df0df745224c Author: drchase Date: 2013-11-14 15:58 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/df0df745224c Merge Changeset: 6f206b5d258f Author: drchase Date: 2013-11-14 13:38 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/6f206b5d258f Merge ! src/share/vm/runtime/arguments.cpp Changeset: c78d517c7ea4 Author: amurillo Date: 2013-11-15 07:50 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/c78d517c7ea4 Merge Changeset: f573d00213b7 Author: amurillo Date: 2013-11-15 07:50 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/f573d00213b7 Added tag hs25-b59 for changeset c78d517c7ea4 ! .hgtags Changeset: 854a42db7069 Author: amurillo Date: 2013-11-15 07:58 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/854a42db7069 8028444: new hotspot build - hs25-b60 Reviewed-by: jcoomes ! make/hotspot_version From tao.mao at oracle.com Sat Nov 16 02:47:55 2013 From: tao.mao at oracle.com (Tao Mao) Date: Fri, 15 Nov 2013 18:47:55 -0800 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <1384340336.2822.80.camel@cirrus> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> Message-ID: <5286DCDB.9070904@oracle.com> Hi all, JDK8 cr. Need quick reviews to check it in. Thank you. new webrev: http://cr.openjdk.java.net/~tamao/8027915/webrev.01/ Please see comments inline. Thanks. Tao On 11/13/13 2:58 AM, Thomas Schatzl wrote: > Hi Tao, > > thanks for picking this up. > > On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >> Hi all, >> >> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >> sparcv9 >> https://bugs.openjdk.java.net/browse/JDK-8027915 >> >> webrev: >> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ > Some notes: > > + // bug 8027915& 8027960: compensate for some cases of large pages > > I do not think it is a good idea to mention bug numbers in the tests: > we can always get this information from the repository. Removed. > > Also I think the problem is not large pages, but how the collectors > align the spaces and generations. > > + if (gcflag.equals("-XX:+UseParallelOldGC")) { > > I think it would be better to check for general use of parallel GC > instead of only the parallel old implementation - I think both do the > same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when > invoking the VM. I.e. let the getMinInitialMaxHeap() method return the > collector type used by parsing the output of -XX:+PrintFlagsFinal (which > needs to be added). Done. Look for "parallelGC". > I am not sure if that is needed though, see below. > > + int numberOfSpaces = 4; > + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * > v.minAlignment); > > I believe this is not correct in the general case. The formula used in > the VM (for generational collectors) is: > > expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) > > where > > smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); > smallestPossibleHeapSize = align_size_up(smallest_new_size + // probably better named smallest_young_size > align_size_up(_space_alignment, _gen_alignment), // old gen > _heap_alignment); // align for heap size > > The change needs to get the space alignment for that from the VM for > this. Quoted from my last response: " I know the internal alignment mechanism in VM code here. But, as philosophy of testing, I don't like the idea to match up exactly every line of code "in the box", because the code may be wrong in one way or another especially when changes around it are introduced later. Rather, a test should test what it believes VM needs to do. With that, it may catch other potential bugs in future. So, I'd rather keep the test simple and non-intrusive (into the code). " > > Recently the "minAlignment" and "maxAlignment" members of > CollectorPolicy changed to spaceAlignment and heapAlignment. Is it > possible to adapt the naming in the test? This seems to be an > oversight in reviews for the earlier patch that changed that in the > Hotspot code. Changed in whitebox.cpp. > > After introducing all this to the test, there is no need for special > casing parallel gc too. In case of G1 it should be sufficient to set > space alignment and gen alignment to the same value. > >> changeset: >> Modified the test code so that it can deal with the case of using >> large pages. >> >> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >> mentioned in the CR is dealt with in a new CR JDK-8028254. > You are correct, it is a slightly different but similar issue: I think > min and initial heap size are now (or always have been, did not look) > aligned to the heap alignment (formerly maxAlignment). > > The test now aligns the expected min/initial heap sizes to minAlignment > only, which is wrong. > > Thanks, > Thomas > > > From per.liden at oracle.com Mon Nov 18 12:22:07 2013 From: per.liden at oracle.com (Per Liden) Date: Mon, 18 Nov 2013 13:22:07 +0100 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> Message-ID: <528A066F.3050105@oracle.com> An HTML attachment was scrubbed... URL: From thomas.schatzl at oracle.com Mon Nov 18 21:17:18 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Mon, 18 Nov 2013 22:17:18 +0100 Subject: Parallelizing symbol table/string table scan In-Reply-To: <1384187472.11800.82.camel@cirrus> References: <1384178210.11800.32.camel@cirrus> <45624C30-7EA4-4BD8-BD7F-0766A8EA5329@oracle.com> <1384187472.11800.82.camel@cirrus> Message-ID: <1384809438.2732.31.camel@cirrus> Hi all, On Mon, 2013-11-11 at 17:31 +0100, Thomas Schatzl wrote: > Hi Karen, > > On Mon, 2013-11-11 at 10:46 -0500, Karen Kinnear wrote: > > On Nov 11, 2013, at 8:56 AM, Thomas Schatzl wrote: > > > > > Hi all, > > > > > > recently we (the gc team) noticed severe performance issues with > > > symbol table and string table scan during remark. > > > > > > Basically, in G1 these pauses are the largest pauses on a reasonably > > > tuned system. Also, in particular, symbol table scan alone takes 50% of > > > total remark time. String table scan takes another 13%. > > > > > > At least symbol table scan is a pretty big issue. > > > > > > The simple approach to those is to parallelize these tasks of course, > > > however I would like to query you for comments or suggestions :) > > > (I am simply throwing some ideas on the wall, in the hope something > > > sticks...) > > I don't see any reason not to parallelize the scanning. > > That's on the agenda anyway - as soon as there is class unloading during > remark, we need to look at the symbol table more quickly than it is done > right now. I have a prototype that parallelizes both string and symbol table running. Performance improvement is very good, by not scrubbing string table (because they are roots) and parallelizing symbol table scrubbing, average remark pause time goes down to 20%. (In that benchmark, symbol table scan took the vast majority of remark time after initialization). This is still somewhat longer than the average young gc pause. Also considering with class unloading after marking there is need to do the string table scrubbing again. > > > One idea that came up to optimize that further has been to not do string > > > table or symbol table scrubbing after gc at all if no class unloading > > > has been done, assuming that the amount of dead entries are zero anyway. > > > > Just to clarify - there are temp Symbols in the symbol table - so the number > > of dead entries with no class unloading will be close to zero, i.e. small enough > > that your suggestion of not doing scrubbing unless there has been class loading > > makes sense - just don't assume zero. > > Thanks for the information, that's exactly what we need. > > Do you have any idea (statistics) about the number of these temp symbols > compared to ones generated by class loading? Is there a way to > distinguish them easily? (So that I can implement statistics myselves). I have a few statistics now, and the temp symbols seem to be non-negligible, over the course of a three hour run, about 5% of symbols are getting stale (~43k from ~860k) without class unloading. > I.e. would it make sense to split the symbol table into two tables, one > for temp symbols and one for symbols generated by class loading? So that > we could always have a look at the temp symbols, but only at others > during class loading? Given above death rate for symbols, this idea seems to be most promising to me. Anyone knows whether it is easily possible to differentiate between symbols generated by class loading and temp symbols? Incremental scrubbing or other measures seem to suffer from the need to be tuned to a particular application, or need some other heuristics. The amount of temp symbols seem to be small enough to be manageable on every gc or remark. Another alternative, storing the symbols (or the location of them in the hash table, or the hash table bucket, or similar) would slow down symbol table reference counting. Any ideas? Thanks, Thomas From david.holmes at oracle.com Tue Nov 19 01:57:59 2013 From: david.holmes at oracle.com (David Holmes) Date: Tue, 19 Nov 2013 11:57:59 +1000 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <58a6b698-bf13-424a-9b95-deb676155b39@default> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> <58a6b698-bf13-424a-9b95-deb676155b39@default> Message-ID: <528AC5A7.8070907@oracle.com> Hi Markus, On 13/11/2013 7:46 PM, Markus Gronlund wrote: > Hi again! > > Thank you for spotting these! I?m sorry, silly mistakes. > > I have updated lines 51-53 to: > > 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { > > 52 return !operator>(lhs,rhs); > > 53 } > > And lines 97-99 as: > > 97 inline bool operator<=(const Ticks& lhs, const Ticks& rhs) { > > 98 return !operator>(lhs,rhs); > > 99 } Would have been nice to generate an updated webrev for these fixes for late reviewers :) I don't have any further comments. Reviewed. Thanks, David > > > > > Thanks Vitaly! > > Cheers > > Markus > > *From:*Vitaly Davidovich [mailto:vitalyd at gmail.com] > *Sent:* den 13 november 2013 02:19 > *To:* Markus Gronlund > *Cc:* hotspot-runtime-dev at openjdk.java.net; serviceability-dev; > hotspot-gc-dev at openjdk.java.net > *Subject:* RE: RFR(M): 8028128: Add a type safe alternative for working > with counter based data > > Similar issue with the Ticks versions. > > Sent from my phone > > On Nov 12, 2013 8:17 PM, "Vitaly Davidovich" > wrote: > > Yeah, naming things is often a pain. > > 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { > 52 return !operator<(lhs,rhs); > 53 } > 54 > 55 inline bool operator>=(const Tickspan& lhs, const Tickspan& rhs) { > 56 return !operator<(lhs,rhs); > 57 } > > These look like bugs; first one should probably be !operator>(lhs,rhs) > and !operator<(lhs,rhs), respectively. > > Sent from my phone > > On Nov 12, 2013 10:32 AM, "Markus Gronlund" > wrote: > > Hi Vitaly, > > Thanks for you input! > > ?You have some operator overloads for these that can compare them > against jlongs - doesn't that still make it easy to mix up what you're > comparing? Personally, since these are value types I'd make their API > work only against these new types and make caller create the right type > for comparison.? > > Thanks for spotting these ? the compare against jlongs in from an older > version of the webrev where this was allowed ? you are right, it should > not be allowed, I thought I had updated this, will remove them ? many > thanks for spotting? > > As for the names, > > ?Ticks and Tickspan don't seem too optimal of names. What about > TimeInstance and TimeSpan?? > > I agree with you that the names could possibly be improved, believe me I > have tried to use multiple names ? one thing I wanted was to emphasize > that these types (currently) are only based on counter?s (i.e ticks), > and do not represent any higher ?time? abstraction. That is, the > implementation is tied to data from counters (based on ticks with a > specific ticks frequency). In my current context, I use these values to > talk about ?time? (as you saw from the original post), but ?time? can > mean many things to different people, esp. many implementations and > clock sources. > > Also, there already exist a few ?Time/Timer? types (although they are > not as good as I want them to be for current purposes), for example > there is a type called Timestamp (in runtime/timers.hpp). > > I have come to the conclusion that in order to address the overall time > abstractions in Hotspot, we would need to make a larger effort ? this we > should indeed do, but it?s outside the current scope. > > Also I am pretty sure that when we do revisit the time abstractions, the > names for these types will most likely change ? that made me leave the > names to emphasize the ?ticks? sources. > > Thanks for your input. > > Best regards > > Markus > > *From:*Vitaly Davidovich [mailto:vitalyd at gmail.com > ] > *Sent:* den 12 november 2013 15:37 > *To:* Markus Gronlund > *Cc:* serviceability-dev; hotspot-runtime-dev at openjdk.java.net > ; > hotspot-gc-dev at openjdk.java.net > *Subject:* Re: RFR(M): 8028128: Add a type safe alternative for working > with counter based data > > Hi Markus, > > Ticks and Tickspan don't seem too optimal of names. What about > TimeInstance and TimeSpan? > > You have some operator overloads for these that can compare them against > jlongs - doesn't that still make it easy to mix up what you're > comparing? Personally, since these are value types I'd make their API > work only against these new types and make caller create the right type > for comparison. > > Just my $.02, feel free to ignore :). > > Thanks > > Sent from my phone > > On Nov 12, 2013 6:16 AM, "Markus Gronlund" > wrote: > > Greetings, > > Kindly asking for reviews for the following changeset: > > Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > *Description:* > > Currently, when working with counter based data, the primary data type > representation in the VM are raw jlong's. jlong's are employed to > represent both: > > 1. a single instance in time, for example a "now" timestamp > 2. a time duration, a timespan, for example the duration between "now" - > "then" > > Having a raw jlong type represent both of these shifts the > responsibility to the programmer to always ensure the correct validity > of the counter data, without any assistance either at compile time or at > runtime. > > The event based tracing framework relies heavily on counter based data > in order to keep track of time and timing related information and we > have seen counter data errors where the representation sent to the > tracing framework has submitted the wrong time, i.e. a timespan when a > time instant was expected and vice versa. > > We should therefore add an alternative to jlongs for representing > counter based data. We should enlist the help of the type system to > enforce the correct data types at compile time as well as introduce > strong runtime asserts in order to help with the correct usage of time > and to reduce the number of potential bugs. > > I will therefore add two new types in src/share/vm/utilities: > > 1. "Ticks" - represents a single counter based timestamp, a single > instance in time. > 2. "Tickspan" - represents a counter based duration, a timespan, > between two "Ticks" > > Please see the added files: > > -src/share/vm/utilities/ticks.hpp > > -src/share/vm/utilities/ticks.inline.hpp > > -src/share/vm/utilities/ticks.cpp > > I have also updated some of the existing event based tracing "event > sites" to employ usage of these new types as well as updated a few > places in the event based tracing framework implementation to > accommodate these types. > > *Testing completed:* > > nsk.stress.testlist (UTE/Aurora) > > GC nightlies (Aurora) > > gc/gctests/* (UTE/Aurora) > > nsk.gc.testlist (UTE/Aurora) > > SpecJBB2013 (no regression) > > SpecJBB2005 (no regression) > > Kitchensink (locally Windows) runs for +> 9 days (still running?) > > Thanks in advance > Markus > From jwha at google.com Tue Nov 19 23:35:22 2013 From: jwha at google.com (Jungwoo Ha) Date: Tue, 19 Nov 2013 15:35:22 -0800 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. Message-ID: Hi, I am sending this webrev for the review. (On behalf of Jon Masamitsu, it is upload here) http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/ The feature is a new heuristics to calculate the default ParallelGCThreads and ConGCThreads. In x86, hyperthreading is generally bad for GC because of the cache contention. Hence, using all the hyper-threaded cores will slow down the overall GC performance. Current hotspot reads the number of processors that the Linux reports, which treats all hyper-threaded cores equally. Second problem is that when cpu mask is set, not all the cores are available for the GC. The patch improves the heuristics by evaluating the actual available physical cores from the proc filesystem and the CPU mask, and use that as the basis for calculating the ParallelGCThreads and ConcGCThreads. The improvements of GC pause time is significant. We evaluated on Nehalem, Westmere, Sandybridge as well as several AMD processors. We also evaluated on various CPU mask configuration and single/dual socket configurations. In almost all cases, there were speed up in GC pause time by 10~50%. We primarily use CMS collector for the evaluation, but we also tested on other GCs as well. Please take a look and let me know if this patch can be accepted. Thanks, Jungwoo Ha -------------- next part -------------- An HTML attachment was scrubbed... URL: From dkeenan at twitter.com Tue Nov 19 23:54:44 2013 From: dkeenan at twitter.com (David Keenan) Date: Tue, 19 Nov 2013 15:54:44 -0800 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: References: Message-ID: Could you detail the workloads used to measure the reduction in CPU time? Vagueness is ok. The magnitude of the improvement albeit wonderful is surprising. I'm curious whether system load was a factor in measurement. On Tue, Nov 19, 2013 at 3:35 PM, Jungwoo Ha wrote: > Hi, > > I am sending this webrev for the review. > (On behalf of Jon Masamitsu, it is upload here) > http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/ > > The feature is a new heuristics to calculate the default ParallelGCThreads > and ConGCThreads. > In x86, hyperthreading is generally bad for GC because of the cache > contention. > Hence, using all the hyper-threaded cores will slow down the overall GC > performance. > Current hotspot reads the number of processors that the Linux reports, > which treats all hyper-threaded cores equally. > Second problem is that when cpu mask is set, not all the cores are > available for the GC. > > The patch improves the heuristics by evaluating the actual available > physical cores > from the proc filesystem and the CPU mask, and use that as the basis for > calculating the ParallelGCThreads and ConcGCThreads. > > The improvements of GC pause time is significant. We evaluated on Nehalem, > Westmere, Sandybridge as well as several AMD processors. We also evaluated > on various CPU mask configuration and single/dual socket configurations. > In almost all cases, there were speed up in GC pause time by 10~50%. > > We primarily use CMS collector for the evaluation, but we also tested on > other GCs as well. > Please take a look and let me know if this patch can be accepted. > > Thanks, > Jungwoo Ha > > -- @dagskeenan 1.617.755.8186 dkeenan at twitter.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From vitalyd at gmail.com Wed Nov 20 03:34:22 2013 From: vitalyd at gmail.com (Vitaly Davidovich) Date: Tue, 19 Nov 2013 22:34:22 -0500 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: References: Message-ID: I'd also be interested in a bit more detail. As well, 10-50% improvement is with respect to what absolute values? Small issue in the webrev (os_linux_x86.cpp): 973 os::set_core_count(os::active_processor_count()); 974 return os::core_count(); This bailout should fclose(fp) before returning. Sent from my phone On Nov 19, 2013 7:01 PM, "David Keenan" wrote: > Could you detail the workloads used to measure the reduction in CPU time? > Vagueness is ok. The magnitude of the improvement albeit wonderful is > surprising. I'm curious whether system load was a factor in measurement. > > > On Tue, Nov 19, 2013 at 3:35 PM, Jungwoo Ha wrote: > >> Hi, >> >> I am sending this webrev for the review. >> (On behalf of Jon Masamitsu, it is upload here) >> http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/ >> >> The feature is a new heuristics to calculate the default >> ParallelGCThreads and ConGCThreads. >> In x86, hyperthreading is generally bad for GC because of the cache >> contention. >> Hence, using all the hyper-threaded cores will slow down the overall GC >> performance. >> Current hotspot reads the number of processors that the Linux reports, >> which treats all hyper-threaded cores equally. >> Second problem is that when cpu mask is set, not all the cores are >> available for the GC. >> >> The patch improves the heuristics by evaluating the actual available >> physical cores >> from the proc filesystem and the CPU mask, and use that as the basis for >> calculating the ParallelGCThreads and ConcGCThreads. >> >> The improvements of GC pause time is significant. We evaluated on >> Nehalem, Westmere, Sandybridge as well as several AMD processors. We also >> evaluated on various CPU mask configuration and single/dual socket >> configurations. >> In almost all cases, there were speed up in GC pause time by 10~50%. >> >> We primarily use CMS collector for the evaluation, but we also tested on >> other GCs as well. >> Please take a look and let me know if this patch can be accepted. >> >> Thanks, >> Jungwoo Ha >> >> > > > -- > > @dagskeenan > > 1.617.755.8186 > > dkeenan at twitter.com > -------------- next part -------------- An HTML attachment was scrubbed... URL: From markus.gronlund at oracle.com Wed Nov 20 09:32:56 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Wed, 20 Nov 2013 01:32:56 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <528A066F.3050105@oracle.com> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <528A066F.3050105@oracle.com> Message-ID: Hi Per, Thanks for taking a look! Inline. Cheers Markus From: Per Liden Sent: den 18 november 2013 13:22 To: Markus Gronlund; hotspot-runtime-dev at openjdk.java.net; hotspot-gc-dev at openjdk.java.net; serviceability-dev at openjdk.java.net serviceability-dev at openjdk.java.net Subject: Re: RFR(M): 8028128: Add a type safe alternative for working with counter based data Hi Markus, Looks like a nice cleanup. Naming it always hard, so I'll avoid that topic ;) A few other minor comments, feel free to ignore. [MG] i agree on the naming parts. I also agree that the current names are not the best possible. I have assumed they will change. 101 class TicksToTimeHelper : public AllStatic { 102 public: 103 enum Unit { 104 SECONDS = 1, 105 MILLISECONDS = 1000 106 }; 107 static double seconds(const Tickspan& span); 108 static jlong milliseconds(const Tickspan& span); 109 }; Do we really want a separate class for this instead of having Tickspan::seconds() and Tickspan::milliseconds()? If moved inside Tickspan, maybe value() should be ticks() to be consistent (and I guess Ticks::value() -> Ticks::ticks() would follow)? [MG] In this particular case I would prefer to keep the convenience functions non-member, non-friends since a convenience member function really does not add anything extra that cannot be retrieved from outside the type. I also think that keeping the convenience functions outside/decoupled from the type itself increases encapsulation and increases flexibility - esp. for this case very much so where the convenience functions for at ticks/time representation is very much open ended; I just whacked together a seconds() and milliseconds(), but what about microseconds(), nanoseconds() and other timing convenience functions that might be needed further? I think keeping it outside increases the flexibility to add convenience functions without affecting the primary type. 43 inline bool operator!=(const Tickspan& lhs, const Tickspan& rhs) { 44 return !operator==(lhs,rhs); 45 } In many of the operators you have code like the example above. Is there a reason you want to spell it out like that instead of just "return !(lhs == rhs);"? [MG] I use this way of writing to make it explicit that a particular non-member operator is implemented in terms of another non-member operator. This point of view might be considered a bit too "implementation" centric, but I have found it useful sometimes as an easy way to directly point to the implementation - granted, for a case such as !(lhs == rhs) that might already be obvious.. 145 void register_gc_phase_start(const char* name, const Ticks& time = Ticks::now()); There are quite a few places where you've added default values like the one above. But as far as I can tell most (I think I saw at least one exception in there) of these functions are either always called without the argument or always called with the argument. Seems a bit unnecessary to provide this flexibility when it's never used (as it opens up for incorrect use of the interface)? [MG] Most of the default parameters are there in order to avoid polluting all the GC collectors with the knowledge about the Ticks/Tickspan types - I can encapsulate the usages only to gcTrace and gcTimer modules. You are right about this for the register_gc_phase_* functions though - they always pass a parameter, providing a default parameter for them might be a bit gratuitous. I will update the phase functions accordingly: void register_gc_phase_start(const char* name, const Ticks& time); void register_gc_phase_end(const Ticks& time); Thanks Per! I will send out an updated webrev. cheers, /Per On 2013-11-12 12:17, Markus Gronlund wrote: Greetings, Kindly asking for reviews for the following changeset: Webrev: HYPERLINK "http://cr.openjdk.java.net/%7Emgronlun/8028128/webrev01/"http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 Description: Currently, when working with counter based data, the primary data type representation in the VM are raw jlong's. jlong's are employed to represent both: 1. a single instance in time, for example a "now" timestamp 2. a time duration, a timespan, for example the duration between "now" - "then" Having a raw jlong type represent both of these shifts the responsibility to the programmer to always ensure the correct validity of the counter data, without any assistance either at compile time or at runtime. The event based tracing framework relies heavily on counter based data in order to keep track of time and timing related information and we have seen counter data errors where the representation sent to the tracing framework has submitted the wrong time, i.e. a timespan when a time instant was expected and vice versa. We should therefore add an alternative to jlongs for representing counter based data. We should enlist the help of the type system to enforce the correct data types at compile time as well as introduce strong runtime asserts in order to help with the correct usage of time and to reduce the number of potential bugs. I will therefore add two new types in src/share/vm/utilities: 1. "Ticks" - represents a single counter based timestamp, a single instance in time. 2. "Tickspan" - represents a counter based duration, a timespan, between two "Ticks" Please see the added files: - src/share/vm/utilities/ticks.hpp - src/share/vm/utilities/ticks.inline.hpp - src/share/vm/utilities/ticks.cpp I have also updated some of the existing event based tracing "event sites" to employ usage of these new types as well as updated a few places in the event based tracing framework implementation to accommodate these types. Testing completed: nsk.stress.testlist (UTE/Aurora) GC nightlies (Aurora) gc/gctests/* (UTE/Aurora) nsk.gc.testlist (UTE/Aurora) SpecJBB2013 (no regression) SpecJBB2005 (no regression) Kitchensink (locally Windows) runs for +> 9 days (still running.) Thanks in advance Markus -------------- next part -------------- An HTML attachment was scrubbed... URL: From markus.gronlund at oracle.com Wed Nov 20 09:55:32 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Wed, 20 Nov 2013 01:55:32 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <528AC5A7.8070907@oracle.com> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> <58a6b698-bf13-424a-9b95-deb676155b39@default> <528AC5A7.8070907@oracle.com> Message-ID: Hi David, I'm sorry I haven't got around to updating and re-posting a new version for the webrev :( Thanks very much for reviewing. I intend to send out an updated webrev which will contain the updates from the feedback I have gotten so far. In addition, I have a few improvements to the original suggestion that will be included in the updated webrev. I will include a detailed list of where the deltas are compared to the previous webrev as well to make life a bit easier :) Thanks again Markus -----Original Message----- From: David Holmes Sent: den 19 november 2013 02:58 To: Markus Gronlund Cc: serviceability-dev; hotspot-gc-dev at openjdk.java.net; hotspot-runtime-dev at openjdk.java.net Subject: Re: RFR(M): 8028128: Add a type safe alternative for working with counter based data Hi Markus, On 13/11/2013 7:46 PM, Markus Gronlund wrote: > Hi again! > > Thank you for spotting these! I'm sorry, silly mistakes. > > I have updated lines 51-53 to: > > 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) > { > > 52 return !operator>(lhs,rhs); > > 53 } > > And lines 97-99 as: > > 97 inline bool operator<=(const Ticks& lhs, const Ticks& rhs) { > > 98 return !operator>(lhs,rhs); > > 99 } Would have been nice to generate an updated webrev for these fixes for late reviewers :) I don't have any further comments. Reviewed. Thanks, David > > > > > Thanks Vitaly! > > Cheers > > Markus > > *From:*Vitaly Davidovich [mailto:vitalyd at gmail.com] > *Sent:* den 13 november 2013 02:19 > *To:* Markus Gronlund > *Cc:* hotspot-runtime-dev at openjdk.java.net; serviceability-dev; > hotspot-gc-dev at openjdk.java.net > *Subject:* RE: RFR(M): 8028128: Add a type safe alternative for > working with counter based data > > Similar issue with the Ticks versions. > > Sent from my phone > > On Nov 12, 2013 8:17 PM, "Vitaly Davidovich" > wrote: > > Yeah, naming things is often a pain. > > 51 inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) { > 52 return !operator<(lhs,rhs); > 53 } > 54 > 55 inline bool operator>=(const Tickspan& lhs, const Tickspan& rhs) { > 56 return !operator<(lhs,rhs); > 57 } > > These look like bugs; first one should probably be !operator>(lhs,rhs) > and !operator<(lhs,rhs), respectively. > > Sent from my phone > > On Nov 12, 2013 10:32 AM, "Markus Gronlund" > > wrote: > > Hi Vitaly, > > Thanks for you input! > > "You have some operator overloads for these that can compare them > against jlongs - doesn't that still make it easy to mix up what you're > comparing? Personally, since these are value types I'd make their API > work only against these new types and make caller create the right > type for comparison." > > Thanks for spotting these - the compare against jlongs in from an > older version of the webrev where this was allowed - you are right, it > should not be allowed, I thought I had updated this, will remove them > - many thanks for spotting. > > As for the names, > > "Ticks and Tickspan don't seem too optimal of names. What about > TimeInstance and TimeSpan?" > > I agree with you that the names could possibly be improved, believe me > I have tried to use multiple names - one thing I wanted was to > emphasize that these types (currently) are only based on counter's > (i.e ticks), and do not represent any higher "time" abstraction. That > is, the implementation is tied to data from counters (based on ticks > with a specific ticks frequency). In my current context, I use these > values to talk about "time" (as you saw from the original post), but > "time" can mean many things to different people, esp. many > implementations and clock sources. > > Also, there already exist a few "Time/Timer" types (although they are > not as good as I want them to be for current purposes), for example > there is a type called Timestamp (in runtime/timers.hpp). > > I have come to the conclusion that in order to address the overall > time abstractions in Hotspot, we would need to make a larger effort - > this we should indeed do, but it's outside the current scope. > > Also I am pretty sure that when we do revisit the time abstractions, > the names for these types will most likely change - that made me leave > the names to emphasize the "ticks" sources. > > Thanks for your input. > > Best regards > > Markus > > *From:*Vitaly Davidovich [mailto:vitalyd at gmail.com > ] > *Sent:* den 12 november 2013 15:37 > *To:* Markus Gronlund > *Cc:* serviceability-dev; hotspot-runtime-dev at openjdk.java.net > ; > hotspot-gc-dev at openjdk.java.net > > *Subject:* Re: RFR(M): 8028128: Add a type safe alternative for > working with counter based data > > Hi Markus, > > Ticks and Tickspan don't seem too optimal of names. What about > TimeInstance and TimeSpan? > > You have some operator overloads for these that can compare them > against jlongs - doesn't that still make it easy to mix up what you're > comparing? Personally, since these are value types I'd make their API > work only against these new types and make caller create the right > type for comparison. > > Just my $.02, feel free to ignore :). > > Thanks > > Sent from my phone > > On Nov 12, 2013 6:16 AM, "Markus Gronlund" > wrote: > > Greetings, > > Kindly asking for reviews for the following changeset: > > Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > *Description:* > > Currently, when working with counter based data, the primary data type > representation in the VM are raw jlong's. jlong's are employed to > represent both: > > 1. a single instance in time, for example a "now" timestamp 2. a time > duration, a timespan, for example the duration between "now" - "then" > > Having a raw jlong type represent both of these shifts the > responsibility to the programmer to always ensure the correct validity > of the counter data, without any assistance either at compile time or > at runtime. > > The event based tracing framework relies heavily on counter based data > in order to keep track of time and timing related information and we > have seen counter data errors where the representation sent to the > tracing framework has submitted the wrong time, i.e. a timespan when a > time instant was expected and vice versa. > > We should therefore add an alternative to jlongs for representing > counter based data. We should enlist the help of the type system to > enforce the correct data types at compile time as well as introduce > strong runtime asserts in order to help with the correct usage of time > and to reduce the number of potential bugs. > > I will therefore add two new types in src/share/vm/utilities: > > 1. "Ticks" - represents a single counter based timestamp, a single > instance in time. > 2. "Tickspan" - represents a counter based duration, a timespan, > between two "Ticks" > > Please see the added files: > > -src/share/vm/utilities/ticks.hpp > > -src/share/vm/utilities/ticks.inline.hpp > > -src/share/vm/utilities/ticks.cpp > > I have also updated some of the existing event based tracing "event > sites" to employ usage of these new types as well as updated a few > places in the event based tracing framework implementation to > accommodate these types. > > *Testing completed:* > > nsk.stress.testlist (UTE/Aurora) > > GC nightlies (Aurora) > > gc/gctests/* (UTE/Aurora) > > nsk.gc.testlist (UTE/Aurora) > > SpecJBB2013 (no regression) > > SpecJBB2005 (no regression) > > Kitchensink (locally Windows) runs for +> 9 days (still running.) > > Thanks in advance > Markus > From markus.gronlund at oracle.com Wed Nov 20 12:17:30 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Wed, 20 Nov 2013 04:17:30 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> <58a6b698-bf13-424a-9b95-deb676155b39@default> <528AC5A7.8070907@oracle.com> Message-ID: <583240ce-cf21-44d8-b1e9-4b53d547d6b9@default> Hi again, I have created an updated webrev02 for the feedback I have gotten so far. In addition, I have added a few improvements to the original suggestion. Updated Webrev02: http://cr.openjdk.java.net/~mgronlun/8028128/webrev02/ Original Webrev01: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 Thanks a lot for your help/patience in reviewing this large change - very much appreciated. Cheers Markus Description of deltas/updates to Webrev02 compared to Webrev01: // updates based on feedback utilities/ticks.inline.hpp // removed functions comparing against jlong(s) - #63 inline bool operator==(const Ticks& lhs, jlong compare_value) { - #64 return lhs.value() == compare_value; - #65 } - #89 inline bool operator!=(const Ticks& lhs, jlong compare_value) { - #90 return lhs.value() != compare_value; - #91 } // updated to gt signs for operator<= functions - #52 return !operator<(lhs, rhs); + #52 return !operator >(lhs, rhs); - #98 return !operator<(lhs,rhs); + #98 return !operator>(lhs,rhs); // thanks to Vitaly Davidovich. share/vm/gc_implementation/gcTimer.hpp // removed default parameter for report_gc_phase_* functions - #114 void report_gc_phase_start(const char* name, const Ticks& time = Ticks::now()); + #114 void report_gc_phase_start(const char* name, const Ticks& time); - #115 void report_gc_phase_end(const Ticks& time = Ticks::now()); + #115 void report_gc_phase_end(const Ticks& time); - #145 void register_gc_phase_start(const char* name, const Ticks& time = Ticks::now()); + #145 void register_gc_phase_start(const char* name, const Ticks& time); - #146 void register_gc_phase_end(const Ticks& time = Ticks::now()); + #146 void register_gc_phase_end(const Ticks& time); // thanks to Per Liden. // // // // Additional changes compared to webrev01 (delta) // webrev01 still allows a user to pass in a jlong (knowingly and/or unknowingly) for event.starttime() and event.endtime(). For example: event.set_endtime(os::elapsed_counter()); // direct call using os::elapsed_counter() This can be avoided by increasing encapsulation: src/share/vm/trace/traceEvent.hpp: set_starttime(const TracingTime& time) // remove default parameter and make protected set_endtime(const TracingTime& time) // remove default parameter and make protected Now, the only visible external API for setting the start and/or endtime of an event is by passing a "Ticks" type (a compiler enforced constraint): Using the same example as above, now if attempting to pass a jlong, like a direct call using os::elapsed_counter(), this now yields (at compile time): >..\..\src\share\vm\gc_implementation\shared\gcTraceSend.cpp(63): error C2248: 'TraceEvent::set_endtime' : cannot access protected member declared in class 'TraceEvent' In order to make these functions protected, i have also had to update the class loader events in SystemDictionary and ClassLoaderDataGraph: share/vm/classfile/SystemDictionary.hpp: // remove include file: - #34 #include "trace/traceTime.hpp" + #80 forward declare class Ticks; // update the signature - #640 static void post_class_load_event(const TracingTime& start_time, instanceKlassHandle k, Handle initiating_loader); + #640 static void post_class_load_event(const Ticks& start_time, instanceKlassHandle k, Handle initiating_loader); share/vm/classfile/SystemDictionary.cpp: // added include files +#58 #include "utilities/macros.hpp" +#59 #include "utilities/ticks.hpp" // removed old include file: - #61 #include "trace/traceMacros.hpp" // updated type - #601 TracingTime class_load_start_time = Tracing::time(); + #601 Ticks class_load_start_time = Ticks::now(); // updated type - #1009 TracingTime class_load_start_time = Tracing::time(); + #1009 Ticks class_load_start_time = Ticks::now(); // updated signature - #2668 void SystemDictionary::post_class_load_event(TracingTime start_time, instanceKlassHandle k, Handle initiating_loader) + #2668 void SystemDictionary::post_class_load_event(const Ticks& start_time, instanceKlassHandle k, Handle initiating_loader) // removed setting the endtime - #2674 event.set_endtime(Tracing::time()); src/share/vm/classfile/classLoaderData.hpp: // update include - #36 #include "trace/traceTime.hpp" + #36 #include "utilities/ticks.hpp" // updated type for _class_unload_time; - #101 static TracingTime _class_unload_time; + #101 static Ticks _class_unload_time; src/share/vm/classfile/classLoaderData.cpp: + #65 #include "utilities/macros.hpp" // updated timestamp - #757 _class_unload_time = Tracing::time(); + #757 _class_unload_time = Ticks::now(); // updated type definition - #835 TracingTime ClassLoaderDataGraph::_class_unload_time; + #835 Ticks ClassLoaderDataGraph::_class_unload_time; src/share/vm/trace/traceEventClasses.xls: // update the !INCLUDE_TRACE stubs - #59 void set_starttime(jlong time) const {} - #60 void set_endtime(jlong time) const {} + #59 void set_starttime(const Ticks& time) {} + #59 void set_endtime(const Ticks& time) {} Thanks Markus > > Greetings, > > Kindly asking for reviews for the following changeset: > > Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > *Description:* > > Currently, when working with counter based data, the primary data type > representation in the VM are raw jlong's. jlong's are employed to > represent both: > > 1. a single instance in time, for example a "now" timestamp 2. a time > duration, a timespan, for example the duration between "now" - "then" > > Having a raw jlong type represent both of these shifts the > responsibility to the programmer to always ensure the correct validity > of the counter data, without any assistance either at compile time or > at runtime. > > The event based tracing framework relies heavily on counter based data > in order to keep track of time and timing related information and we > have seen counter data errors where the representation sent to the > tracing framework has submitted the wrong time, i.e. a timespan when a > time instant was expected and vice versa. > > We should therefore add an alternative to jlongs for representing > counter based data. We should enlist the help of the type system to > enforce the correct data types at compile time as well as introduce > strong runtime asserts in order to help with the correct usage of time > and to reduce the number of potential bugs. > > I will therefore add two new types in src/share/vm/utilities: > > 1. "Ticks" - represents a single counter based timestamp, a single > instance in time. > 2. "Tickspan" - represents a counter based duration, a timespan, > between two "Ticks" > > Please see the added files: > > -src/share/vm/utilities/ticks.hpp > > -src/share/vm/utilities/ticks.inline.hpp > > -src/share/vm/utilities/ticks.cpp > > I have also updated some of the existing event based tracing "event > sites" to employ usage of these new types as well as updated a few > places in the event based tracing framework implementation to > accommodate these types. > > *Testing completed:* > > nsk.stress.testlist (UTE/Aurora) > > GC nightlies (Aurora) > > gc/gctests/* (UTE/Aurora) > > nsk.gc.testlist (UTE/Aurora) > > SpecJBB2013 (no regression) > > SpecJBB2005 (no regression) > > Kitchensink (locally Windows) runs for +> 9 days (still running.) > > Thanks in advance > Markus > From david.holmes at oracle.com Wed Nov 20 22:10:59 2013 From: david.holmes at oracle.com (David Holmes) Date: Thu, 21 Nov 2013 08:10:59 +1000 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <583240ce-cf21-44d8-b1e9-4b53d547d6b9@default> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> <58a6b698-bf13-424a-9b95-deb676155b39@default> <528AC5A7.8070907@oracle.com> <583240ce-cf21-44d8-b1e9-4b53d547d6b9@default> Message-ID: <528D3373.2080000@oracle.com> Hi Markus, I couldn't quite work out if TracingTime is obsolete after these changes? Otherwise I have no further comments. Thanks, David On 20/11/2013 10:17 PM, Markus Gronlund wrote: > Hi again, > > I have created an updated webrev02 for the feedback I have gotten so far. In addition, I have added a few improvements to the original suggestion. > > Updated Webrev02: http://cr.openjdk.java.net/~mgronlun/8028128/webrev02/ > Original Webrev01: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > Thanks a lot for your help/patience in reviewing this large change - very much appreciated. > > Cheers > Markus > > Description of deltas/updates to Webrev02 compared to Webrev01: > > // updates based on feedback > > utilities/ticks.inline.hpp > > // removed functions comparing against jlong(s) > > - #63 inline bool operator==(const Ticks& lhs, jlong compare_value) { > - #64 return lhs.value() == compare_value; > - #65 } > > - #89 inline bool operator!=(const Ticks& lhs, jlong compare_value) { > - #90 return lhs.value() != compare_value; > - #91 } > > // updated to gt signs for operator<= functions > - #52 return !operator<(lhs, rhs); > + #52 return !operator >(lhs, rhs); > > - #98 return !operator<(lhs,rhs); > + #98 return !operator>(lhs,rhs); > > // thanks to Vitaly Davidovich. > > > share/vm/gc_implementation/gcTimer.hpp > > // removed default parameter for report_gc_phase_* functions > > - #114 void report_gc_phase_start(const char* name, const Ticks& time = Ticks::now()); > + #114 void report_gc_phase_start(const char* name, const Ticks& time); > > - #115 void report_gc_phase_end(const Ticks& time = Ticks::now()); > + #115 void report_gc_phase_end(const Ticks& time); > > - #145 void register_gc_phase_start(const char* name, const Ticks& time = Ticks::now()); > + #145 void register_gc_phase_start(const char* name, const Ticks& time); > > - #146 void register_gc_phase_end(const Ticks& time = Ticks::now()); > + #146 void register_gc_phase_end(const Ticks& time); > > // thanks to Per Liden. > > > // > // > // > // Additional changes compared to webrev01 (delta) > // > > webrev01 still allows a user to pass in a jlong (knowingly and/or unknowingly) for event.starttime() and event.endtime(). > For example: > > event.set_endtime(os::elapsed_counter()); // direct call using os::elapsed_counter() > > This can be avoided by increasing encapsulation: > > src/share/vm/trace/traceEvent.hpp: > > set_starttime(const TracingTime& time) // remove default parameter and make protected > set_endtime(const TracingTime& time) // remove default parameter and make protected > > Now, the only visible external API for setting the start and/or endtime of an event is by passing a "Ticks" type (a compiler enforced constraint): > > Using the same example as above, now if attempting to pass a jlong, like a direct call using os::elapsed_counter(), this now yields (at compile time): > >> ..\..\src\share\vm\gc_implementation\shared\gcTraceSend.cpp(63): error C2248: 'TraceEvent::set_endtime' : cannot access protected member declared in class 'TraceEvent' > > > In order to make these functions protected, i have also had to update the class loader events in SystemDictionary and ClassLoaderDataGraph: > > share/vm/classfile/SystemDictionary.hpp: > > // remove include file: > - #34 #include "trace/traceTime.hpp" > > + #80 forward declare class Ticks; > > > // update the signature > - #640 static void post_class_load_event(const TracingTime& start_time, instanceKlassHandle k, > Handle initiating_loader); > > + #640 static void post_class_load_event(const Ticks& start_time, instanceKlassHandle k, > Handle initiating_loader); > > > > share/vm/classfile/SystemDictionary.cpp: > > // added include files > +#58 #include "utilities/macros.hpp" > +#59 #include "utilities/ticks.hpp" > > // removed old include file: > - #61 #include "trace/traceMacros.hpp" > > // updated type > - #601 TracingTime class_load_start_time = Tracing::time(); > + #601 Ticks class_load_start_time = Ticks::now(); > > // updated type > - #1009 TracingTime class_load_start_time = Tracing::time(); > + #1009 Ticks class_load_start_time = Ticks::now(); > > // updated signature > - #2668 void SystemDictionary::post_class_load_event(TracingTime start_time, instanceKlassHandle k, Handle initiating_loader) > + #2668 void SystemDictionary::post_class_load_event(const Ticks& start_time, instanceKlassHandle k, Handle initiating_loader) > > // removed setting the endtime > - #2674 event.set_endtime(Tracing::time()); > > > src/share/vm/classfile/classLoaderData.hpp: > > // update include > - #36 #include "trace/traceTime.hpp" > + #36 #include "utilities/ticks.hpp" > > // updated type for _class_unload_time; > - #101 static TracingTime _class_unload_time; > + #101 static Ticks _class_unload_time; > > > src/share/vm/classfile/classLoaderData.cpp: > > + #65 #include "utilities/macros.hpp" > > // updated timestamp > - #757 _class_unload_time = Tracing::time(); > + #757 _class_unload_time = Ticks::now(); > > // updated type definition > - #835 TracingTime ClassLoaderDataGraph::_class_unload_time; > + #835 Ticks ClassLoaderDataGraph::_class_unload_time; > > > src/share/vm/trace/traceEventClasses.xls: > > // update the !INCLUDE_TRACE stubs > - #59 void set_starttime(jlong time) const {} > - #60 void set_endtime(jlong time) const {} > > + #59 void set_starttime(const Ticks& time) {} > + #59 void set_endtime(const Ticks& time) {} > > > Thanks > Markus > > > >> >> Greetings, >> >> Kindly asking for reviews for the following changeset: >> >> Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 >> >> *Description:* >> >> Currently, when working with counter based data, the primary data type >> representation in the VM are raw jlong's. jlong's are employed to >> represent both: >> >> 1. a single instance in time, for example a "now" timestamp 2. a time >> duration, a timespan, for example the duration between "now" - "then" >> >> Having a raw jlong type represent both of these shifts the >> responsibility to the programmer to always ensure the correct validity >> of the counter data, without any assistance either at compile time or >> at runtime. >> >> The event based tracing framework relies heavily on counter based data >> in order to keep track of time and timing related information and we >> have seen counter data errors where the representation sent to the >> tracing framework has submitted the wrong time, i.e. a timespan when a >> time instant was expected and vice versa. >> >> We should therefore add an alternative to jlongs for representing >> counter based data. We should enlist the help of the type system to >> enforce the correct data types at compile time as well as introduce >> strong runtime asserts in order to help with the correct usage of time >> and to reduce the number of potential bugs. >> >> I will therefore add two new types in src/share/vm/utilities: >> >> 1. "Ticks" - represents a single counter based timestamp, a single >> instance in time. >> 2. "Tickspan" - represents a counter based duration, a timespan, >> between two "Ticks" >> >> Please see the added files: >> >> -src/share/vm/utilities/ticks.hpp >> >> -src/share/vm/utilities/ticks.inline.hpp >> >> -src/share/vm/utilities/ticks.cpp >> >> I have also updated some of the existing event based tracing "event >> sites" to employ usage of these new types as well as updated a few >> places in the event based tracing framework implementation to >> accommodate these types. >> >> *Testing completed:* >> >> nsk.stress.testlist (UTE/Aurora) >> >> GC nightlies (Aurora) >> >> gc/gctests/* (UTE/Aurora) >> >> nsk.gc.testlist (UTE/Aurora) >> >> SpecJBB2013 (no regression) >> >> SpecJBB2005 (no regression) >> >> Kitchensink (locally Windows) runs for +> 9 days (still running.) >> >> Thanks in advance >> Markus >> From jwha at google.com Wed Nov 20 23:02:51 2013 From: jwha at google.com (Jungwoo Ha) Date: Wed, 20 Nov 2013 15:02:51 -0800 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: References: Message-ID: We've tested it thoroughly with various kinds of workloads, and here is something you can probably reproduce it. * Benchmark: Dacapo benchmarks (http://dacapobench.org) * Hardware : 2 socket sandybridge core * JDK: JDK7u36(? not sure which exact one I used) * Benchmark Heapsize: 2x of minimum heap size requirement of each benchmark Min heap size is where each benchmark will start to throw OOM. * GC: CMS GC * Measured Execution time and GC pause time reported by -XX:+PrintGCDetails on 15th iteration * Average of 30 runs per benchmarks RESULTS SUMMARY * Results are normalized to the before. * Geomean: 0.58 (that means pause time has reduced 42% in the average) * Full results: attached (open the html on your browser). * Tradesoap runs Full GC all the time so it doesn't get any benefit. * You can ignore avrora because it has very little GC activity. @Vitaly: Nice catch! Jungwoo On Tue, Nov 19, 2013 at 7:34 PM, Vitaly Davidovich wrote: > I'd also be interested in a bit more detail. As well, 10-50% improvement > is with respect to what absolute values? > > Small issue in the webrev (os_linux_x86.cpp): > > 973 os::set_core_count(os::active_processor_count()); > 974 return os::core_count(); > > This bailout should fclose(fp) before returning. > > Sent from my phone > On Nov 19, 2013 7:01 PM, "David Keenan" wrote: > >> Could you detail the workloads used to measure the reduction in CPU time? >> Vagueness is ok. The magnitude of the improvement albeit wonderful is >> surprising. I'm curious whether system load was a factor in measurement. >> >> >> On Tue, Nov 19, 2013 at 3:35 PM, Jungwoo Ha wrote: >> >>> Hi, >>> >>> I am sending this webrev for the review. >>> (On behalf of Jon Masamitsu, it is upload here) >>> http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/ >>> >>> The feature is a new heuristics to calculate the default >>> ParallelGCThreads and ConGCThreads. >>> In x86, hyperthreading is generally bad for GC because of the cache >>> contention. >>> Hence, using all the hyper-threaded cores will slow down the overall GC >>> performance. >>> Current hotspot reads the number of processors that the Linux reports, >>> which treats all hyper-threaded cores equally. >>> Second problem is that when cpu mask is set, not all the cores are >>> available for the GC. >>> >>> The patch improves the heuristics by evaluating the actual available >>> physical cores >>> from the proc filesystem and the CPU mask, and use that as the basis for >>> calculating the ParallelGCThreads and ConcGCThreads. >>> >>> The improvements of GC pause time is significant. We evaluated on >>> Nehalem, Westmere, Sandybridge as well as several AMD processors. We also >>> evaluated on various CPU mask configuration and single/dual socket >>> configurations. >>> In almost all cases, there were speed up in GC pause time by 10~50%. >>> >>> We primarily use CMS collector for the evaluation, but we also tested on >>> other GCs as well. >>> Please take a look and let me know if this patch can be accepted. >>> >>> Thanks, >>> Jungwoo Ha >>> >>> >> >> >> -- >> >> @dagskeenan >> >> 1.617.755.8186 >> >> dkeenan at twitter.com >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gcthreads_dacapo_sandybridge.html.gz Type: application/x-gzip Size: 1060 bytes Desc: not available URL: From thomas.schatzl at oracle.com Thu Nov 21 09:41:08 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Thu, 21 Nov 2013 10:41:08 +0100 Subject: Request for review: 7098155: Resize young gen at full collections for UseParallelGC In-Reply-To: <5283F1E3.6080002@oracle.com> References: <5240CB0F.9080902@oracle.com> <527B02C3.3040805@oracle.com> <5283C985.6080205@oracle.com> <5283F1E3.6080002@oracle.com> Message-ID: <1385026868.2853.44.camel@cirrus> Hi, On Wed, 2013-11-13 at 13:40 -0800, Jon Masamitsu wrote: > Changes look good. > > On 11/13/2013 10:48 AM, Tao Mao wrote: > > Hi Jon, > > > > New webrev is uploaded. > > http://cr.openjdk.java.net/~tamao/7098155/webrev.01/ > > > > I think it makes even more sense to guard the piece of code under > > (UseAdaptiveGenerationSizePolicyAtMajorCollection...etc.) > Agreed. I didn't mean to imply any differently. > Looks okay, some comments: - that UseAdaptiveSizePolicyResizeYoungGenAtMajorCollection (what a name :) flag seems to be a very exotic knob to turn (to me :). Is it better to make it experimental or diagnostic? Maybe this would allow removing it later more easily, especially if it is experimental. Especially if the default is true anyway. - I diffed the parts of the code from the "if (UseAdaptiveSizePolicy)..." in psParallelCompact.cpp:2102/psMarkSweep.cpp:265 policy" to the closing brace of that if statement and there was no difference at all except some indentation. Are there some plans to move that code to the adaptive size policy (because almost all calls start with "size_policy->") at some point? I find it hard to keep the code in sync, but likely you are already used to it. Thomas From bengt.rutisson at oracle.com Thu Nov 21 10:11:34 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Thu, 21 Nov 2013 11:11:34 +0100 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: References: Message-ID: <528DDC56.5090109@oracle.com> Hi Jungwoo, Thanks for contributing this change. Nice work. First a couple general question. Why did you only make this change for CMS? Shouldn't the other collectors benefit from this as well? You said you tried the other GCs as well. What were the results for them? Do we need the flag AdjustGCThreadsToCores? It seems like this is a good change and it is always nice to reduce the number of flags we have. If you feel unsure about the change it may be good to be able to disable it, but in general I think it would be better to decide that this is the default behavior and go with it. os_linux_x86.cpp This is where the important part of your change is. I don't know enough about Linux internals to validate the changes you have made there. I will leave that out of my review and let others (Runtime team?) with more Linux knowledge review it. Some code comments: Since core_count() returns 0 for all platforms except linux_x86, couldn't the following code be moved to a platform independent place? 758 int os::active_core_count() { 759 if (os::core_count() <= 0) { 760 os::set_core_count(os::active_processor_count()); 761 } 762 return os::core_count(); 763 } That way this code would not have to be duplicated in all other platforms: 726 int os::active_core_count() { 727 return os::active_processor_count(); 728 } We could just always use os::active_core_count() and rely on the value it returns. VM_Version::calc_parallel_worker_threads() 862 unsigned int ncpus = (unsigned int) os::active_core_count(); 863 return (ncpus <= 8) ? ncpus : ncpus / 2; Isn't it strange that if we have 8 cores we get 8 parallel threads, but if we have 12 cores we only get 6? Wouldn't it make more sense to treat this limit as a max value, so: return (ncpus <= 8) ? ncpus : MAX2(8, ncpus / 2); concurrentMarkSweepGeneration.cpp 639 if (AdjustGCThreadsToCores) { 640 FLAG_SET_DEFAULT(ConcGCThreads, ParallelGCThreads / 2); 641 } else { 642 FLAG_SET_DEFAULT(ConcGCThreads, (3 + ParallelGCThreads) / 4); 643 } This looks a little odd to me. Why do we add 3? That does not seem to scale when we have a large number of parallel threads. Did you mean to multiply by 3? Also, do we really need to use a different calculation for the ConcGCThreads? It would have been nice to be able to use the same logic for both cases. Did you measure any performance difference in the two cases? Thanks, Bengt On 11/20/13 12:35 AM, Jungwoo Ha wrote: > Hi, > > I am sending this webrev for the review. > (On behalf of Jon Masamitsu, it is upload here) > http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/ > > > The feature is a new heuristics to calculate the default > ParallelGCThreads and ConGCThreads. > In x86, hyperthreading is generally bad for GC because of the cache > contention. > Hence, using all the hyper-threaded cores will slow down the overall > GC performance. > Current hotspot reads the number of processors that the Linux reports, > which treats all hyper-threaded cores equally. > Second problem is that when cpu mask is set, not all the cores are > available for the GC. > > The patch improves the heuristics by evaluating the actual available > physical cores > from the proc filesystem and the CPU mask, and use that as the basis > for calculating the ParallelGCThreads and ConcGCThreads. > > The improvements of GC pause time is significant. We evaluated on > Nehalem, Westmere, Sandybridge as well as several AMD processors. We > also evaluated on various CPU mask configuration and single/dual > socket configurations. > In almost all cases, there were speed up in GC pause time by 10~50%. > > We primarily use CMS collector for the evaluation, but we also tested > on other GCs as well. > Please take a look and let me know if this patch can be accepted. > > Thanks, > Jungwoo Ha > -------------- next part -------------- An HTML attachment was scrubbed... URL: From markus.gronlund at oracle.com Thu Nov 21 10:49:31 2013 From: markus.gronlund at oracle.com (Markus Gronlund) Date: Thu, 21 Nov 2013 02:49:31 -0800 (PST) Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: <528D3373.2080000@oracle.com> References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> <58a6b698-bf13-424a-9b95-deb676155b39@default> <528AC5A7.8070907@oracle.com> <583240ce-cf21-44d8-b1e9-4b53d547d6b9@default> <528D3373.2080000@oracle.com> Message-ID: Hi David, Thanks for taking a look again. Once transitioned from the external API boundary, TracingTime is/can be used internally in the tracing framework. I would like to keep this possibility, so I will leave it in. I will considered this Reviewed if you don't disagree then? Many thanks for your help again Cheers Markus -----Original Message----- From: David Holmes Sent: den 20 november 2013 23:11 To: Markus Gronlund Cc: serviceability-dev; hotspot-gc-dev at openjdk.java.net; hotspot-runtime-dev at openjdk.java.net Subject: Re: RFR(M): 8028128: Add a type safe alternative for working with counter based data Hi Markus, I couldn't quite work out if TracingTime is obsolete after these changes? Otherwise I have no further comments. Thanks, David On 20/11/2013 10:17 PM, Markus Gronlund wrote: > Hi again, > > I have created an updated webrev02 for the feedback I have gotten so far. In addition, I have added a few improvements to the original suggestion. > > Updated Webrev02: > http://cr.openjdk.java.net/~mgronlun/8028128/webrev02/ > Original Webrev01: > http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ > Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 > > Thanks a lot for your help/patience in reviewing this large change - very much appreciated. > > Cheers > Markus > > Description of deltas/updates to Webrev02 compared to Webrev01: > > // updates based on feedback > > utilities/ticks.inline.hpp > > // removed functions comparing against jlong(s) > > - #63 inline bool operator==(const Ticks& lhs, jlong compare_value) { > - #64 return lhs.value() == compare_value; > - #65 } > > - #89 inline bool operator!=(const Ticks& lhs, jlong compare_value) { > - #90 return lhs.value() != compare_value; > - #91 } > > // updated to gt signs for operator<= functions > - #52 return !operator<(lhs, rhs); > + #52 return !operator >(lhs, rhs); > > - #98 return !operator<(lhs,rhs); > + #98 return !operator>(lhs,rhs); > > // thanks to Vitaly Davidovich. > > > share/vm/gc_implementation/gcTimer.hpp > > // removed default parameter for report_gc_phase_* functions > > - #114 void report_gc_phase_start(const char* name, const Ticks& time > = Ticks::now()); > + #114 void report_gc_phase_start(const char* name, const Ticks& > + time); > > - #115 void report_gc_phase_end(const Ticks& time = Ticks::now()); > + #115 void report_gc_phase_end(const Ticks& time); > > - #145 void register_gc_phase_start(const char* name, const Ticks& > time = Ticks::now()); > + #145 void register_gc_phase_start(const char* name, const Ticks& > + time); > > - #146 void register_gc_phase_end(const Ticks& time = Ticks::now()); > + #146 void register_gc_phase_end(const Ticks& time); > > // thanks to Per Liden. > > > // > // > // > // Additional changes compared to webrev01 (delta) // > > webrev01 still allows a user to pass in a jlong (knowingly and/or unknowingly) for event.starttime() and event.endtime(). > For example: > > event.set_endtime(os::elapsed_counter()); // direct call using > os::elapsed_counter() > > This can be avoided by increasing encapsulation: > > src/share/vm/trace/traceEvent.hpp: > > set_starttime(const TracingTime& time) // remove default parameter and make protected > set_endtime(const TracingTime& time) // remove default parameter and make protected > > Now, the only visible external API for setting the start and/or endtime of an event is by passing a "Ticks" type (a compiler enforced constraint): > > Using the same example as above, now if attempting to pass a jlong, like a direct call using os::elapsed_counter(), this now yields (at compile time): > >> ..\..\src\share\vm\gc_implementation\shared\gcTraceSend.cpp(63): error C2248: 'TraceEvent::set_endtime' : cannot access protected member declared in class 'TraceEvent' > > > In order to make these functions protected, i have also had to update the class loader events in SystemDictionary and ClassLoaderDataGraph: > > share/vm/classfile/SystemDictionary.hpp: > > // remove include file: > - #34 #include "trace/traceTime.hpp" > > + #80 forward declare class Ticks; > > > // update the signature > - #640 static void post_class_load_event(const TracingTime& start_time, instanceKlassHandle k, > Handle initiating_loader); > > + #640 static void post_class_load_event(const Ticks& start_time, > + instanceKlassHandle k, > Handle initiating_loader); > > > > share/vm/classfile/SystemDictionary.cpp: > > // added include files > +#58 #include "utilities/macros.hpp" > +#59 #include "utilities/ticks.hpp" > > // removed old include file: > - #61 #include "trace/traceMacros.hpp" > > // updated type > - #601 TracingTime class_load_start_time = Tracing::time(); > + #601 Ticks class_load_start_time = Ticks::now(); > > // updated type > - #1009 TracingTime class_load_start_time = Tracing::time(); > + #1009 Ticks class_load_start_time = Ticks::now(); > > // updated signature > - #2668 void SystemDictionary::post_class_load_event(TracingTime > start_time, instanceKlassHandle k, Handle initiating_loader) > + #2668 void SystemDictionary::post_class_load_event(const Ticks& > + start_time, instanceKlassHandle k, Handle initiating_loader) > > // removed setting the endtime > - #2674 event.set_endtime(Tracing::time()); > > > src/share/vm/classfile/classLoaderData.hpp: > > // update include > - #36 #include "trace/traceTime.hpp" > + #36 #include "utilities/ticks.hpp" > > // updated type for _class_unload_time; > - #101 static TracingTime _class_unload_time; > + #101 static Ticks _class_unload_time; > > > src/share/vm/classfile/classLoaderData.cpp: > > + #65 #include "utilities/macros.hpp" > > // updated timestamp > - #757 _class_unload_time = Tracing::time(); > + #757 _class_unload_time = Ticks::now(); > > // updated type definition > - #835 TracingTime ClassLoaderDataGraph::_class_unload_time; > + #835 Ticks ClassLoaderDataGraph::_class_unload_time; > > > src/share/vm/trace/traceEventClasses.xls: > > // update the !INCLUDE_TRACE stubs > - #59 void set_starttime(jlong time) const {} > - #60 void set_endtime(jlong time) const {} > > + #59 void set_starttime(const Ticks& time) {} > + #59 void set_endtime(const Ticks& time) {} > > > Thanks > Markus > > > >> >> Greetings, >> >> Kindly asking for reviews for the following changeset: >> >> Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 >> >> *Description:* >> >> Currently, when working with counter based data, the primary data >> type representation in the VM are raw jlong's. jlong's are employed >> to represent both: >> >> 1. a single instance in time, for example a "now" timestamp 2. a time >> duration, a timespan, for example the duration between "now" - "then" >> >> Having a raw jlong type represent both of these shifts the >> responsibility to the programmer to always ensure the correct >> validity of the counter data, without any assistance either at >> compile time or at runtime. >> >> The event based tracing framework relies heavily on counter based >> data in order to keep track of time and timing related information >> and we have seen counter data errors where the representation sent to >> the tracing framework has submitted the wrong time, i.e. a timespan >> when a time instant was expected and vice versa. >> >> We should therefore add an alternative to jlongs for representing >> counter based data. We should enlist the help of the type system to >> enforce the correct data types at compile time as well as introduce >> strong runtime asserts in order to help with the correct usage of >> time and to reduce the number of potential bugs. >> >> I will therefore add two new types in src/share/vm/utilities: >> >> 1. "Ticks" - represents a single counter based timestamp, a single >> instance in time. >> 2. "Tickspan" - represents a counter based duration, a timespan, >> between two "Ticks" >> >> Please see the added files: >> >> -src/share/vm/utilities/ticks.hpp >> >> -src/share/vm/utilities/ticks.inline.hpp >> >> -src/share/vm/utilities/ticks.cpp >> >> I have also updated some of the existing event based tracing "event >> sites" to employ usage of these new types as well as updated a few >> places in the event based tracing framework implementation to >> accommodate these types. >> >> *Testing completed:* >> >> nsk.stress.testlist (UTE/Aurora) >> >> GC nightlies (Aurora) >> >> gc/gctests/* (UTE/Aurora) >> >> nsk.gc.testlist (UTE/Aurora) >> >> SpecJBB2013 (no regression) >> >> SpecJBB2005 (no regression) >> >> Kitchensink (locally Windows) runs for +> 9 days (still running.) >> >> Thanks in advance >> Markus >> From christos.kotselidis at oracle.com Thu Nov 21 11:40:11 2013 From: christos.kotselidis at oracle.com (Christos Kotselidis) Date: Thu, 21 Nov 2013 12:40:11 +0100 Subject: Possible bug in nmethod reloc verification/scanning in G1 Message-ID: Hi, I came across the following scenario, I already discussed with Thomas Schatzl, that I would like to share with you. There is a method: private static final HotSpotGraalRuntime instance = new HotSpotGraalRuntime(); public static HotSpotGraalRuntime runtime() { return instance; } The instance field is a constant oop in the code and the method is installed. At some stage there is a GC with post verification (including G1VerifyHeapRegionCodeRoots) that passes. Before the next GC cycle and during the mutation cycle, another method is being installed which causes the eviction of our method. Consequently our method is being made not_entrant and it is being patched with a jmp instruction at its verified entry point (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the oop to be overwritten by the jmp instruction. Furthemore, that oop was the only oop that was responsible for attaching this method to its correspondent HeapRegion. The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot verification starts (nmethod.cpp::oops_do). There is a logic there (which I also believe it may be buggy as I will explain later) that checks whether the method is not_entrant. If the method is not_entrant then the logic correctly assumes that the method has been already been patched and therefore starts scanning the relocs of the method in +5 bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This results in not scanning the single oop that was attaching this specific method to its heap region. The verification then correctly asserts by saying that "there is a method attached to this specific heap region with no oops pointing into it". Concerning the second bug in the method::oops_do logic, here is the code for manipulating the reloc starting address after a method has been patched: // If the method is not entrant or zombie then a JMP is plastered over the // first few bytes. If an oop in the old code was there, that oop // should not get GC'd. Skip the first few bytes of oops on // not-entrant methods. address low_boundary = verified_entry_point(); if (is_not_entrant()) { low_boundary += NativeJump::instruction_size; // %%% Note: On SPARC we patch only a 4-byte trap, not a full NativeJump. // (See comment above.) } The code above accounts only for the "is not entrant" scenario and not with the "is zombie" scenario. I hope I got the story right?what do you think? Thank you in advance Regards Christos -------------- next part -------------- An HTML attachment was scrubbed... URL: From thomas.schatzl at oracle.com Thu Nov 21 13:34:41 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Thu, 21 Nov 2013 14:34:41 +0100 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: References: Message-ID: <1385040881.2853.162.camel@cirrus> Hi, On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: > Hi, > > I came across the following scenario, I already discussed with Thomas > Schatzl, that I would like to share with you. > There is a method: > > private static final HotSpotGraalRuntime instance = new HotSpotGraalRuntime(); > > public static HotSpotGraalRuntime runtime() { > return instance; >} > The instance field is a constant oop in the code and the method is > installed. > At some stage there is a GC with post verification > (including G1VerifyHeapRegionCodeRoots) that passes. > Before the next GC cycle and during the mutation cycle, another method > is being installed which causes the eviction of our method. > Consequently our method is being made not_entrant and it is being > patched with a jmp instruction at its verified entry point > (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the oop > to be overwritten by the jmp instruction. Furthermore, that oop was > the only oop that was responsible for attaching this method to its > correspondent HeapRegion. > > The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot > verification starts (nmethod.cpp::oops_do). There is a logic there > (which I also believe it may be buggy as I will explain later) that > checks whether the method is not_entrant. If the method is not_entrant > then the logic correctly assumes that the method has been already been > patched and therefore starts scanning the relocs of the method in +5 > bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This > results in not scanning the single oop that was attaching this > specific method to its heap region. The verification then correctly > asserts by saying that "there is a method attached to this specific > heap region with no oops pointing into it". Thanks for finding this - I already filed a bug for that (https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if it matches your investigation. > > Concerning the second bug in the method::oops_do logic, here is the > code for manipulating the reloc starting address after a method has > been patched: > // If the method is not entrant or zombie then a JMP is plastered over >// the > // first few bytes. If an oop in the old code was there, that oop > // should not get GC'd. Skip the first few bytes of oops on > // not-entrant methods. > address low_boundary = verified_entry_point(); > if (is_not_entrant()) { > low_boundary += NativeJump::instruction_size; > // %%% Note: On SPARC we patch only a 4-byte trap, not a full > NativeJump. > // (See comment above.) > } > > The code above accounts only for the "is not entrant" scenario and not > with the "is zombie" scenario. nmethod::do_oops will not be called for zombie methods in the default case, so it does not matter. I.e. the default overload of oops_do(Closure* cl, bool zombie) is oops_do(cl, false); Also the first assert in oops_do() checks. > I hope I got the story right?what do you think? Yes, thanks for finding this issue (and keep investigating it). Thomas From christos.kotselidis at oracle.com Thu Nov 21 13:42:18 2013 From: christos.kotselidis at oracle.com (Christos Kotselidis) Date: Thu, 21 Nov 2013 14:42:18 +0100 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: <1385040881.2853.162.camel@cirrus> Message-ID: On 11/21/13 2:34 PM, "Thomas Schatzl" wrote: >Hi, > >On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: >> Hi, >> >> I came across the following scenario, I already discussed with Thomas >> Schatzl, that I would like to share with you. >> There is a method: >> >> private static final HotSpotGraalRuntime instance = new >>HotSpotGraalRuntime(); >> >> public static HotSpotGraalRuntime runtime() { >> return instance; >>} > >> The instance field is a constant oop in the code and the method is >> installed. >> At some stage there is a GC with post verification >> (including G1VerifyHeapRegionCodeRoots) that passes. >> Before the next GC cycle and during the mutation cycle, another method >> is being installed which causes the eviction of our method. >> Consequently our method is being made not_entrant and it is being >> patched with a jmp instruction at its verified entry point >> (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the oop >> to be overwritten by the jmp instruction. Furthermore, that oop was >> the only oop that was responsible for attaching this method to its >> correspondent HeapRegion. >> >> The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot >> verification starts (nmethod.cpp::oops_do). There is a logic there >> (which I also believe it may be buggy as I will explain later) that >> checks whether the method is not_entrant. If the method is not_entrant >> then the logic correctly assumes that the method has been already been >> patched and therefore starts scanning the relocs of the method in +5 >> bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This >> results in not scanning the single oop that was attaching this >> specific method to its heap region. The verification then correctly >> asserts by saying that "there is a method attached to this specific >> heap region with no oops pointing into it". > >Thanks for finding this - I already filed a bug for that >(https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if it >matches your investigation. >> >> Concerning the second bug in the method::oops_do logic, here is the >> code for manipulating the reloc starting address after a method has >> been patched: > >> // If the method is not entrant or zombie then a JMP is plastered over >>// the >> // first few bytes. If an oop in the old code was there, that oop >> // should not get GC'd. Skip the first few bytes of oops on >> // not-entrant methods. >> address low_boundary = verified_entry_point(); >> if (is_not_entrant()) { >> low_boundary += NativeJump::instruction_size; >> // %%% Note: On SPARC we patch only a 4-byte trap, not a full >> NativeJump. >> // (See comment above.) >> } >> >> The code above accounts only for the "is not entrant" scenario and not >> with the "is zombie" scenario. > >nmethod::do_oops will not be called for zombie methods in the default >case, so it does not matter. I.e. the default overload of >oops_do(Closure* cl, bool zombie) is oops_do(cl, false); When unregistering a method we call the oops_do allowing zombie methods (G1CollectedHeap::unregister_nmethod). That was causing a problem in my case and afteradding "|| is_zombie()", it got fixed. The bug report matches my conclusion. > >Also the first assert in oops_do() checks. > >> I hope I got the story right?what do you think? > >Yes, thanks for finding this issue (and keep investigating it). > >Thomas > > > Thanks Thomas Regards Christos > From thomas.schatzl at oracle.com Thu Nov 21 13:54:56 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Thu, 21 Nov 2013 14:54:56 +0100 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: References: Message-ID: <1385042096.2853.168.camel@cirrus> Hi, On Thu, 2013-11-21 at 14:42 +0100, Christos Kotselidis wrote: > On 11/21/13 2:34 PM, "Thomas Schatzl" wrote: > > >Hi, > > > >On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: > >> Hi, > >> > >> I came across the following scenario, I already discussed with Thomas > >> Schatzl, that I would like to share with you. > >> There is a method: > >> > >> private static final HotSpotGraalRuntime instance = new > >>HotSpotGraalRuntime(); > >> > >> public static HotSpotGraalRuntime runtime() { > >> return instance; > >>} > > > >> The instance field is a constant oop in the code and the method is > >> installed. > >> At some stage there is a GC with post verification > >> (including G1VerifyHeapRegionCodeRoots) that passes. > >> Before the next GC cycle and during the mutation cycle, another method > >> is being installed which causes the eviction of our method. > >> Consequently our method is being made not_entrant and it is being > >> patched with a jmp instruction at its verified entry point > >> (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the oop > >> to be overwritten by the jmp instruction. Furthermore, that oop was > >> the only oop that was responsible for attaching this method to its > >> correspondent HeapRegion. > >> > >> The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot > >> verification starts (nmethod.cpp::oops_do). There is a logic there > >> (which I also believe it may be buggy as I will explain later) that > >> checks whether the method is not_entrant. If the method is not_entrant > >> then the logic correctly assumes that the method has been already been > >> patched and therefore starts scanning the relocs of the method in +5 > >> bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This > >> results in not scanning the single oop that was attaching this > >> specific method to its heap region. The verification then correctly > >> asserts by saying that "there is a method attached to this specific > >> heap region with no oops pointing into it". > > > >Thanks for finding this - I already filed a bug for that > >(https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if it > >matches your investigation. > >> > >> Concerning the second bug in the method::oops_do logic, here is the > >> code for manipulating the reloc starting address after a method has > >> been patched: > > > >> // If the method is not entrant or zombie then a JMP is plastered over > >>// the > >> // first few bytes. If an oop in the old code was there, that oop > >> // should not get GC'd. Skip the first few bytes of oops on > >> // not-entrant methods. > >> address low_boundary = verified_entry_point(); > >> if (is_not_entrant()) { > >> low_boundary += NativeJump::instruction_size; > >> // %%% Note: On SPARC we patch only a 4-byte trap, not a full > >> NativeJump. > >> // (See comment above.) > >> } > >> > >> The code above accounts only for the "is not entrant" scenario and not > >> with the "is zombie" scenario. > > > >nmethod::do_oops will not be called for zombie methods in the default > >case, so it does not matter. I.e. the default overload of > >oops_do(Closure* cl, bool zombie) is oops_do(cl, false); > > When unregistering a method we call the oops_do allowing zombie methods > (G1CollectedHeap::unregister_nmethod). That was causing a problem in my > case and after adding "|| is_zombie()", it got fixed. I think you are right, we will need to fix that too as the oop map is not changed after overwriting the oop in the first few bytes. Thomas From david.holmes at oracle.com Thu Nov 21 13:57:00 2013 From: david.holmes at oracle.com (David Holmes) Date: Thu, 21 Nov 2013 23:57:00 +1000 Subject: RFR(M): 8028128: Add a type safe alternative for working with counter based data In-Reply-To: References: <061fa021-3b40-4161-aecd-a946c0ddde3e@default> <68fcba7b-b6a6-47f7-a785-2eba9a2631e5@default> <58a6b698-bf13-424a-9b95-deb676155b39@default> <528AC5A7.8070907@oracle.com> <583240ce-cf21-44d8-b1e9-4b53d547d6b9@default> <528D3373.2080000@oracle.com> Message-ID: <528E112C.5050406@oracle.com> On 21/11/2013 8:49 PM, Markus Gronlund wrote: > Hi David, > > Thanks for taking a look again. > > Once transitioned from the external API boundary, TracingTime is/can be used internally in the tracing framework. > I would like to keep this possibility, so I will leave it in. Ok. > I will considered this Reviewed if you don't disagree then? Yes. > Many thanks for your help again > You are welcome. :) David > Cheers > Markus > > > > -----Original Message----- > From: David Holmes > Sent: den 20 november 2013 23:11 > To: Markus Gronlund > Cc: serviceability-dev; hotspot-gc-dev at openjdk.java.net; hotspot-runtime-dev at openjdk.java.net > Subject: Re: RFR(M): 8028128: Add a type safe alternative for working with counter based data > > Hi Markus, > > I couldn't quite work out if TracingTime is obsolete after these changes? > > Otherwise I have no further comments. > > Thanks, > David > > On 20/11/2013 10:17 PM, Markus Gronlund wrote: >> Hi again, >> >> I have created an updated webrev02 for the feedback I have gotten so far. In addition, I have added a few improvements to the original suggestion. >> >> Updated Webrev02: >> http://cr.openjdk.java.net/~mgronlun/8028128/webrev02/ >> Original Webrev01: >> http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ >> Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 >> >> Thanks a lot for your help/patience in reviewing this large change - very much appreciated. >> >> Cheers >> Markus >> >> Description of deltas/updates to Webrev02 compared to Webrev01: >> >> // updates based on feedback >> >> utilities/ticks.inline.hpp >> >> // removed functions comparing against jlong(s) >> >> - #63 inline bool operator==(const Ticks& lhs, jlong compare_value) { >> - #64 return lhs.value() == compare_value; >> - #65 } >> >> - #89 inline bool operator!=(const Ticks& lhs, jlong compare_value) { >> - #90 return lhs.value() != compare_value; >> - #91 } >> >> // updated to gt signs for operator<= functions >> - #52 return !operator<(lhs, rhs); >> + #52 return !operator >(lhs, rhs); >> >> - #98 return !operator<(lhs,rhs); >> + #98 return !operator>(lhs,rhs); >> >> // thanks to Vitaly Davidovich. >> >> >> share/vm/gc_implementation/gcTimer.hpp >> >> // removed default parameter for report_gc_phase_* functions >> >> - #114 void report_gc_phase_start(const char* name, const Ticks& time >> = Ticks::now()); >> + #114 void report_gc_phase_start(const char* name, const Ticks& >> + time); >> >> - #115 void report_gc_phase_end(const Ticks& time = Ticks::now()); >> + #115 void report_gc_phase_end(const Ticks& time); >> >> - #145 void register_gc_phase_start(const char* name, const Ticks& >> time = Ticks::now()); >> + #145 void register_gc_phase_start(const char* name, const Ticks& >> + time); >> >> - #146 void register_gc_phase_end(const Ticks& time = Ticks::now()); >> + #146 void register_gc_phase_end(const Ticks& time); >> >> // thanks to Per Liden. >> >> >> // >> // >> // >> // Additional changes compared to webrev01 (delta) // >> >> webrev01 still allows a user to pass in a jlong (knowingly and/or unknowingly) for event.starttime() and event.endtime(). >> For example: >> >> event.set_endtime(os::elapsed_counter()); // direct call using >> os::elapsed_counter() >> >> This can be avoided by increasing encapsulation: >> >> src/share/vm/trace/traceEvent.hpp: >> >> set_starttime(const TracingTime& time) // remove default parameter and make protected >> set_endtime(const TracingTime& time) // remove default parameter and make protected >> >> Now, the only visible external API for setting the start and/or endtime of an event is by passing a "Ticks" type (a compiler enforced constraint): >> >> Using the same example as above, now if attempting to pass a jlong, like a direct call using os::elapsed_counter(), this now yields (at compile time): >> >>> ..\..\src\share\vm\gc_implementation\shared\gcTraceSend.cpp(63): error C2248: 'TraceEvent::set_endtime' : cannot access protected member declared in class 'TraceEvent' >> >> >> In order to make these functions protected, i have also had to update the class loader events in SystemDictionary and ClassLoaderDataGraph: >> >> share/vm/classfile/SystemDictionary.hpp: >> >> // remove include file: >> - #34 #include "trace/traceTime.hpp" >> >> + #80 forward declare class Ticks; >> >> >> // update the signature >> - #640 static void post_class_load_event(const TracingTime& start_time, instanceKlassHandle k, >> Handle initiating_loader); >> >> + #640 static void post_class_load_event(const Ticks& start_time, >> + instanceKlassHandle k, >> Handle initiating_loader); >> >> >> >> share/vm/classfile/SystemDictionary.cpp: >> >> // added include files >> +#58 #include "utilities/macros.hpp" >> +#59 #include "utilities/ticks.hpp" >> >> // removed old include file: >> - #61 #include "trace/traceMacros.hpp" >> >> // updated type >> - #601 TracingTime class_load_start_time = Tracing::time(); >> + #601 Ticks class_load_start_time = Ticks::now(); >> >> // updated type >> - #1009 TracingTime class_load_start_time = Tracing::time(); >> + #1009 Ticks class_load_start_time = Ticks::now(); >> >> // updated signature >> - #2668 void SystemDictionary::post_class_load_event(TracingTime >> start_time, instanceKlassHandle k, Handle initiating_loader) >> + #2668 void SystemDictionary::post_class_load_event(const Ticks& >> + start_time, instanceKlassHandle k, Handle initiating_loader) >> >> // removed setting the endtime >> - #2674 event.set_endtime(Tracing::time()); >> >> >> src/share/vm/classfile/classLoaderData.hpp: >> >> // update include >> - #36 #include "trace/traceTime.hpp" >> + #36 #include "utilities/ticks.hpp" >> >> // updated type for _class_unload_time; >> - #101 static TracingTime _class_unload_time; >> + #101 static Ticks _class_unload_time; >> >> >> src/share/vm/classfile/classLoaderData.cpp: >> >> + #65 #include "utilities/macros.hpp" >> >> // updated timestamp >> - #757 _class_unload_time = Tracing::time(); >> + #757 _class_unload_time = Ticks::now(); >> >> // updated type definition >> - #835 TracingTime ClassLoaderDataGraph::_class_unload_time; >> + #835 Ticks ClassLoaderDataGraph::_class_unload_time; >> >> >> src/share/vm/trace/traceEventClasses.xls: >> >> // update the !INCLUDE_TRACE stubs >> - #59 void set_starttime(jlong time) const {} >> - #60 void set_endtime(jlong time) const {} >> >> + #59 void set_starttime(const Ticks& time) {} >> + #59 void set_endtime(const Ticks& time) {} >> >> >> Thanks >> Markus >> >> >> >>> >>> Greetings, >>> >>> Kindly asking for reviews for the following changeset: >>> >>> Webrev: http://cr.openjdk.java.net/~mgronlun/8028128/webrev01/ >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8028128 >>> >>> *Description:* >>> >>> Currently, when working with counter based data, the primary data >>> type representation in the VM are raw jlong's. jlong's are employed >>> to represent both: >>> >>> 1. a single instance in time, for example a "now" timestamp 2. a time >>> duration, a timespan, for example the duration between "now" - "then" >>> >>> Having a raw jlong type represent both of these shifts the >>> responsibility to the programmer to always ensure the correct >>> validity of the counter data, without any assistance either at >>> compile time or at runtime. >>> >>> The event based tracing framework relies heavily on counter based >>> data in order to keep track of time and timing related information >>> and we have seen counter data errors where the representation sent to >>> the tracing framework has submitted the wrong time, i.e. a timespan >>> when a time instant was expected and vice versa. >>> >>> We should therefore add an alternative to jlongs for representing >>> counter based data. We should enlist the help of the type system to >>> enforce the correct data types at compile time as well as introduce >>> strong runtime asserts in order to help with the correct usage of >>> time and to reduce the number of potential bugs. >>> >>> I will therefore add two new types in src/share/vm/utilities: >>> >>> 1. "Ticks" - represents a single counter based timestamp, a single >>> instance in time. >>> 2. "Tickspan" - represents a counter based duration, a timespan, >>> between two "Ticks" >>> >>> Please see the added files: >>> >>> -src/share/vm/utilities/ticks.hpp >>> >>> -src/share/vm/utilities/ticks.inline.hpp >>> >>> -src/share/vm/utilities/ticks.cpp >>> >>> I have also updated some of the existing event based tracing "event >>> sites" to employ usage of these new types as well as updated a few >>> places in the event based tracing framework implementation to >>> accommodate these types. >>> >>> *Testing completed:* >>> >>> nsk.stress.testlist (UTE/Aurora) >>> >>> GC nightlies (Aurora) >>> >>> gc/gctests/* (UTE/Aurora) >>> >>> nsk.gc.testlist (UTE/Aurora) >>> >>> SpecJBB2013 (no regression) >>> >>> SpecJBB2005 (no regression) >>> >>> Kitchensink (locally Windows) runs for +> 9 days (still running.) >>> >>> Thanks in advance >>> Markus >>> From jwha at google.com Thu Nov 21 17:37:08 2013 From: jwha at google.com (Jungwoo Ha) Date: Thu, 21 Nov 2013 09:37:08 -0800 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: <528DDC56.5090109@oracle.com> References: <528DDC56.5090109@oracle.com> Message-ID: On Thu, Nov 21, 2013 at 2:11 AM, Bengt Rutisson wrote: > > Hi Jungwoo, > > Thanks for contributing this change. Nice work. > > First a couple general question. > > Why did you only make this change for CMS? Shouldn't the other collectors > benefit from this as well? You said you tried the other GCs as well. What > were the results for them? > The change will affect all collectors because it is setting ParalellGCThreads and ConcGCThreads. I mostly tested on CMS for convenience of evaluation and needs. Do we need the flag AdjustGCThreadsToCores? It seems like this is a good > change and it is always nice to reduce the number of flags we have. If you > feel unsure about the change it may be good to be able to disable it, but > in general I think it would be better to decide that this is the default > behavior and go with it. > I have no strong opinion. If you guys can confirm the improvements and feel like you don't need the flag, that would be ideal. > > os_linux_x86.cpp > > This is where the important part of your change is. I don't know enough > about Linux internals to validate the changes you have made there. I will > leave that out of my review and let others (Runtime team?) with more Linux > knowledge review it. > > > Some code comments: > > Since core_count() returns 0 for all platforms except linux_x86, couldn't > the following code be moved to a platform independent place? > > 758 int os::active_core_count() { > 759 if (os::core_count() <= 0) { > 760 os::set_core_count(os::active_processor_count()); > 761 } > 762 return os::core_count(); > 763 } > > That way this code would not have to be duplicated in all other platforms: > > 726 int os::active_core_count() { > 727 return os::active_processor_count(); > 728 } > > We could just always use os::active_core_count() and rely on the value it > returns. > Sounds good to me. > > > VM_Version::calc_parallel_worker_threads() > > 862 unsigned int ncpus = (unsigned int) os::active_core_count(); > 863 return (ncpus <= 8) ? ncpus : ncpus / 2; > > Isn't it strange that if we have 8 cores we get 8 parallel threads, but if > we have 12 cores we only get 6? Wouldn't it make more sense to treat this > limit as a max value, so: > > return (ncpus <= 8) ? ncpus : MAX2(8, ncpus / 2); > > I think that's better. > concurrentMarkSweepGeneration.cpp > > 639 if (AdjustGCThreadsToCores) { > 640 FLAG_SET_DEFAULT(ConcGCThreads, ParallelGCThreads / 2); > 641 } else { > 642 FLAG_SET_DEFAULT(ConcGCThreads, (3 + ParallelGCThreads) / 4); > 643 } > > This looks a little odd to me. Why do we add 3? That does not seem to > scale when we have a large number of parallel threads. Did you mean to > multiply by 3? > (3 + ParallelGCThreads) / 4 is the upstream default, and I didn't change it. ParallelGCThreads can be much smaller with the change, so I divided into 2 instead of 4. Also, do we really need to use a different calculation for the > ConcGCThreads? It would have been nice to be able to use the same logic for > both cases. Did you measure any performance difference in the two cases? > Maybe not. Most of the pause time is on the young generation in CMS. I have seen pause time reduction on old generation as well, but anyway that is small. As I mentioned earlier, ParallelGCThreads has changed when Hyperthreading or CPU mask is turned on. Hence using the same heuristics can cause too small ConcGCThreads. I'd like to use something like "os::active_core_counts() / 4" and make it independent of using ParallelGCThreads. Jungwoo -------------- next part -------------- An HTML attachment was scrubbed... URL: From vladimir.kozlov at oracle.com Thu Nov 21 18:31:26 2013 From: vladimir.kozlov at oracle.com (Vladimir Kozlov) Date: Thu, 21 Nov 2013 10:31:26 -0800 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: <1385042096.2853.168.camel@cirrus> References: <1385042096.2853.168.camel@cirrus> Message-ID: <528E517E.3020704@oracle.com> CC to compiler because it is about compiled nmethods and their state change. So it is interesting for us. Note, usually such methods are inlinied (accessor methods) and big methods have stack bang code at the beginning. Here is criteria used to generate stack bang: bool Compile::need_stack_bang(int frame_size_in_bytes) const { // Determine if we need to generate a stack overflow check. // Do it if the method is not a stub function and // has java calls or has frame size > vm_page_size/8. return (UseStackBanging && stub_function() == NULL && (has_java_calls() || frame_size_in_bytes > os::vm_page_size()>>3)); } In your case stack bang is not generated that is why you have embedded oop at the beginning of the code. We can mark such nmethods so it will be easier to see such nmethod when we need unregister them. And thank you for catching both problems. Thanks, Vladimir On 11/21/13 5:54 AM, Thomas Schatzl wrote: > Hi, > > On Thu, 2013-11-21 at 14:42 +0100, Christos Kotselidis wrote: >> On 11/21/13 2:34 PM, "Thomas Schatzl" wrote: >> >>> Hi, >>> >>> On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: >>>> Hi, >>>> >>>> I came across the following scenario, I already discussed with Thomas >>>> Schatzl, that I would like to share with you. >>>> There is a method: >>>> >>>> private static final HotSpotGraalRuntime instance = new >>>> HotSpotGraalRuntime(); >>>> >>>> public static HotSpotGraalRuntime runtime() { >>>> return instance; >>>> } >>> >>>> The instance field is a constant oop in the code and the method is >>>> installed. >>>> At some stage there is a GC with post verification >>>> (including G1VerifyHeapRegionCodeRoots) that passes. >>>> Before the next GC cycle and during the mutation cycle, another method >>>> is being installed which causes the eviction of our method. >>>> Consequently our method is being made not_entrant and it is being >>>> patched with a jmp instruction at its verified entry point >>>> (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the oop >>>> to be overwritten by the jmp instruction. Furthermore, that oop was >>>> the only oop that was responsible for attaching this method to its >>>> correspondent HeapRegion. >>>> >>>> The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot >>>> verification starts (nmethod.cpp::oops_do). There is a logic there >>>> (which I also believe it may be buggy as I will explain later) that >>>> checks whether the method is not_entrant. If the method is not_entrant >>>> then the logic correctly assumes that the method has been already been >>>> patched and therefore starts scanning the relocs of the method in +5 >>>> bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This >>>> results in not scanning the single oop that was attaching this >>>> specific method to its heap region. The verification then correctly >>>> asserts by saying that "there is a method attached to this specific >>>> heap region with no oops pointing into it". >>> >>> Thanks for finding this - I already filed a bug for that >>> (https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if it >>> matches your investigation. >>>> >>>> Concerning the second bug in the method::oops_do logic, here is the >>>> code for manipulating the reloc starting address after a method has >>>> been patched: >>> >>>> // If the method is not entrant or zombie then a JMP is plastered over >>>> // the >>>> // first few bytes. If an oop in the old code was there, that oop >>>> // should not get GC'd. Skip the first few bytes of oops on >>>> // not-entrant methods. >>>> address low_boundary = verified_entry_point(); >>>> if (is_not_entrant()) { >>>> low_boundary += NativeJump::instruction_size; >>>> // %%% Note: On SPARC we patch only a 4-byte trap, not a full >>>> NativeJump. >>>> // (See comment above.) >>>> } >>>> >>>> The code above accounts only for the "is not entrant" scenario and not >>>> with the "is zombie" scenario. >>> >>> nmethod::do_oops will not be called for zombie methods in the default >>> case, so it does not matter. I.e. the default overload of >>> oops_do(Closure* cl, bool zombie) is oops_do(cl, false); >> >> When unregistering a method we call the oops_do allowing zombie methods >> (G1CollectedHeap::unregister_nmethod). That was causing a problem in my >> case and after adding "|| is_zombie()", it got fixed. > > I think you are right, we will need to fix that too as the oop map is > not changed after overwriting the oop in the first few bytes. > > Thomas > > From john.coomes at oracle.com Thu Nov 21 20:05:20 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:05:20 +0000 Subject: hg: hsx/hotspot-gc: Added tag jdk8-b117 for changeset a4afb0a8d55e Message-ID: <20131121200520.56F286276D@hg.openjdk.java.net> Changeset: 0a6db1aac998 Author: cl Date: 2013-11-21 09:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/0a6db1aac998 Added tag jdk8-b117 for changeset a4afb0a8d55e ! .hgtags From john.coomes at oracle.com Thu Nov 21 20:05:39 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:05:39 +0000 Subject: hg: hsx/hotspot-gc/jaxp: Added tag jdk8-b117 for changeset c1d234d4f164 Message-ID: <20131121200549.6253D6276F@hg.openjdk.java.net> Changeset: e4e5069250e7 Author: cl Date: 2013-11-21 09:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/e4e5069250e7 Added tag jdk8-b117 for changeset c1d234d4f164 ! .hgtags From john.coomes at oracle.com Thu Nov 21 20:05:26 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:05:26 +0000 Subject: hg: hsx/hotspot-gc/corba: 4 new changesets Message-ID: <20131121200530.AFB2E6276E@hg.openjdk.java.net> Changeset: b99535e22efe Author: mchung Date: 2013-11-07 20:48 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/b99535e22efe 8027943: serial version of com.sun.corba.se.spi.orbutil.proxy.CompositeInvocationHandlerImpl changed in 7u45 Reviewed-by: msheppar, alanb, lancea ! src/share/classes/com/sun/corba/se/spi/orbutil/proxy/CompositeInvocationHandlerImpl.java Changeset: 4796555c4dc8 Author: lana Date: 2013-11-08 17:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/4796555c4dc8 Merge Changeset: e53d1ee4d2ae Author: lana Date: 2013-11-14 23:33 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/e53d1ee4d2ae Merge Changeset: d6820a414f18 Author: cl Date: 2013-11-21 09:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/d6820a414f18 Added tag jdk8-b117 for changeset e53d1ee4d2ae ! .hgtags From john.coomes at oracle.com Thu Nov 21 20:05:57 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:05:57 +0000 Subject: hg: hsx/hotspot-gc/jaxws: Added tag jdk8-b117 for changeset fe56ba456fd3 Message-ID: <20131121200604.B5C6962770@hg.openjdk.java.net> Changeset: 76a598cf50c4 Author: cl Date: 2013-11-21 09:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/76a598cf50c4 Added tag jdk8-b117 for changeset fe56ba456fd3 ! .hgtags From john.coomes at oracle.com Thu Nov 21 20:09:07 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:09:07 +0000 Subject: hg: hsx/hotspot-gc/jdk: 90 new changesets Message-ID: <20131121202949.DD8C362772@hg.openjdk.java.net> Changeset: f2ae86dba4bc Author: prr Date: 2013-11-13 11:59 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f2ae86dba4bc 8028206: sun/java2d/cmm/ProfileOp/SetDataTest.java fails Reviewed-by: bae, jchen ! src/share/native/sun/java2d/cmm/lcms/cmsio0.c ! test/sun/java2d/cmm/ProfileOp/SetDataTest.java Changeset: b691a6abf9e0 Author: lana Date: 2013-11-14 23:29 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b691a6abf9e0 Merge Changeset: 30766f910509 Author: malenkov Date: 2013-11-01 21:45 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/30766f910509 8026491: Typos in string literals Reviewed-by: alexsch, anthony ! src/macosx/classes/com/apple/laf/AquaFileChooserUI.java ! src/macosx/classes/com/apple/laf/resources/aqua.properties ! src/share/classes/com/sun/imageio/plugins/common/StandardMetadataFormatResources.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpSubBulkRequestHandler.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpSubNextRequestHandler.java ! src/share/classes/com/sun/jmx/snmp/daemon/SnmpSubRequestHandler.java ! src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java ! src/share/classes/com/sun/tools/script/shell/init.js ! src/share/classes/com/sun/tools/script/shell/messages.properties ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/javax/swing/KeyboardManager.java ! src/share/classes/javax/swing/SortingFocusTraversalPolicy.java ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/sun/awt/AppContext.java ! src/share/classes/sun/management/snmp/jvminstr/JVM_MANAGEMENT_MIB_IMPL.java ! src/share/classes/sun/misc/ExtensionDependency.java ! src/share/classes/sun/rmi/rmic/RMIGenerator.java ! src/share/classes/sun/security/jgss/krb5/InitialToken.java ! src/share/classes/sun/security/jgss/spnego/SpNegoContext.java ! src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java ! src/share/native/sun/security/pkcs11/wrapper/p11_util.c ! src/share/sample/nio/chatserver/ClientReader.java ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java ! src/windows/classes/sun/nio/ch/WindowsSelectorImpl.java ! src/windows/classes/sun/security/krb5/internal/tools/Klist.java ! src/windows/classes/sun/security/krb5/internal/tools/Ktab.java Changeset: b8eb21e93fa7 Author: yan Date: 2013-11-07 18:57 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b8eb21e93fa7 8025234: [javadoc] fix some errors in javax.swing.** Reviewed-by: alexsch, malenkov Contributed-by: Dmitry Ginzburg ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/Action.java ! src/share/classes/javax/swing/Box.java ! src/share/classes/javax/swing/BoxLayout.java ! src/share/classes/javax/swing/CellRendererPane.java ! src/share/classes/javax/swing/DefaultListSelectionModel.java ! src/share/classes/javax/swing/DesktopManager.java ! src/share/classes/javax/swing/GroupLayout.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JFileChooser.java ! src/share/classes/javax/swing/JLabel.java ! src/share/classes/javax/swing/JList.java ! src/share/classes/javax/swing/JMenu.java ! src/share/classes/javax/swing/JMenuBar.java ! src/share/classes/javax/swing/JTextField.java Changeset: 29f979efbabf Author: malenkov Date: 2013-11-08 14:09 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/29f979efbabf 8027648: Type of overridden property is resolved incorrectly Reviewed-by: alexsch ! src/share/classes/java/beans/IndexedPropertyDescriptor.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/javax/swing/tree/DefaultMutableTreeNode.java + test/java/beans/Introspector/Test8027648.java + test/java/beans/Introspector/Test8027905.java Changeset: 184f13eeed41 Author: lana Date: 2013-11-08 15:02 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/184f13eeed41 Merge - src/share/classes/java/lang/invoke/MagicLambdaImpl.java - src/share/demo/jfc/Notepad/resources/Notepad_fr.properties - src/share/demo/jfc/Notepad/resources/Notepad_sv.properties - test/java/net/NetworkInterface/MemLeakTest.java - test/jdk/lambda/vm/DefaultMethodsTest.java - test/sun/management/jmxremote/bootstrap/CustomLauncherTest.sh - test/sun/management/jmxremote/bootstrap/LocalManagementTest.sh - test/sun/tools/jstatd/jpsOutput1.awk - test/sun/tools/jstatd/jstatGcutilOutput1.awk - test/sun/tools/jstatd/jstatdDefaults.sh - test/sun/tools/jstatd/jstatdExternalRegistry.sh - test/sun/tools/jstatd/jstatdPort.sh - test/sun/tools/jstatd/jstatdServerName.sh - test/sun/tools/jstatd/jstatdUsage1.sh - test/sun/tools/jstatd/usage.out Changeset: 4bc2414624e2 Author: leonidr Date: 2013-11-12 20:02 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4bc2414624e2 8027972: [macosx] Provide a regression test for JDK-8007006 Reviewed-by: anthony + test/java/awt/MenuBar/8007006/bug8007006.java Changeset: 0242fce0f717 Author: serb Date: 2013-11-12 20:24 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0242fce0f717 8027696: Incorrect copyright header in the tests Reviewed-by: alanb, malenkov, mullan ! test/ProblemList.txt ! test/com/sun/jmx/remote/NotificationMarshalVersions/Client/Client.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Client/ConfigKey.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Client/TestNotification.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Server/ConfigKey.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Server/Server.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Server/Ste.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Server/SteMBean.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/Server/TestNotification.java ! test/com/sun/jmx/remote/NotificationMarshalVersions/TestSerializationMismatch.java ! test/com/sun/jndi/cosnaming/CNNameParser.java ! test/com/sun/jndi/cosnaming/IiopUrlIPv6.java ! test/demo/zipfs/ZipFSTester.java ! test/java/awt/AlphaComposite/TestAlphaCompositeForNaN.java ! test/java/awt/Choice/ChoiceKeyEventReaction/ChoiceKeyEventReaction.html ! test/java/awt/Choice/NonFocusablePopupMenuTest/NonFocusablePopupMenuTest.html ! test/java/awt/Component/F10TopToplevel/F10TopToplevel.html ! test/java/awt/Component/UpdatingBootTime/UpdatingBootTime.html ! test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html ! test/java/awt/DataFlavor/MissedHtmlAndRtfBug/NextFramePositionCalculator.java ! test/java/awt/DataFlavor/MissedHtmlAndRtfBug/SourcePanel.java ! test/java/awt/DataFlavor/MissedHtmlAndRtfBug/TargetPanel.java ! test/java/awt/EventDispatchThread/LoopRobustness/LoopRobustness.html ! test/java/awt/EventQueue/MainAppContext/MainAppContext.java ! test/java/awt/EventQueue/PostEventOrderingTest/PostEventOrderingTest.java ! test/java/awt/FileDialog/FileDialogReturnTest/FileDialogReturnTest.html ! test/java/awt/FileDialog/FileNameOverrideTest/FileNameOverrideTest.html ! test/java/awt/FileDialog/FileNameOverrideTest/FileNameOverrideTest.java ! test/java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.html ! test/java/awt/FileDialog/MultipleMode/MultipleMode.html ! test/java/awt/FileDialog/RegexpFilterTest/RegexpFilterTest.html ! test/java/awt/FileDialog/SaveFileNameOverrideTest/SaveFileNameOverrideTest.html ! test/java/awt/FileDialog/SaveFileNameOverrideTest/SaveFileNameOverrideTest.java ! test/java/awt/Focus/6981400/Test1.java ! test/java/awt/Focus/6981400/Test2.java ! test/java/awt/Focus/6981400/Test3.java ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.java ! test/java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.html ! test/java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java ! test/java/awt/Focus/FocusTraversalPolicy/InitialFTP.java ! test/java/awt/Focus/FocusTraversalPolicy/InitialFTP_AWT.java ! test/java/awt/Focus/FocusTraversalPolicy/InitialFTP_Swing.java ! test/java/awt/Focus/ModalBlockedStealsFocusTest/ModalBlockedStealsFocusTest.html ! test/java/awt/Focus/ToFrontFocusTest/ToFrontFocus.html ! test/java/awt/Focus/WindowInitialFocusTest/WindowInitialFocusTest.html ! test/java/awt/Frame/FrameSetSizeStressTest/FrameSetSizeStressTest.java ! test/java/awt/Frame/InitialMaximizedTest/InitialMaximizedTest.html ! test/java/awt/Frame/ShownOnPack/ShownOnPack.html ! test/java/awt/Graphics/DrawImageBG/SystemBgColorTest.java ! test/java/awt/Graphics2D/FillTexturePaint/FillTexturePaint.java ! test/java/awt/InputMethods/InputMethodsTest/InputMethodsTest.html ! test/java/awt/JAWT/JAWT.sh ! test/java/awt/JAWT/Makefile.cygwin ! test/java/awt/JAWT/Makefile.unix ! test/java/awt/JAWT/Makefile.win ! test/java/awt/JAWT/MyCanvas.java ! test/java/awt/JAWT/myfile.c ! test/java/awt/JAWT/myfile.cpp ! test/java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_AWT.java ! test/java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_Swing.java ! test/java/awt/KeyboardFocusmanager/TypeAhead/ButtonActionKeyTest/ButtonActionKeyTest.html ! test/java/awt/KeyboardFocusmanager/TypeAhead/MenuItemActivatedTest/MenuItemActivatedTest.html ! test/java/awt/KeyboardFocusmanager/TypeAhead/SubMenuShowTest/SubMenuShowTest.html ! test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html ! test/java/awt/List/SetFontTest/SetFontTest.html ! test/java/awt/Menu/NullMenuLabelTest/NullMenuLabelTest.java ! test/java/awt/Mouse/ExtraMouseClick/ExtraMouseClick.html ! test/java/awt/Mouse/MouseModifiersUnitTest/ExtraButtonDrag.java ! test/java/awt/Mouse/MouseModifiersUnitTest/ModifierPermutation.java ! test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java ! test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java ! test/java/awt/Mouse/TitleBarDoubleClick/TitleBarDoubleClick.html ! test/java/awt/Multiscreen/TranslucencyThrowsExceptionWhenFullScreen/TranslucencyThrowsExceptionWhenFullScreen.java ! test/java/awt/Multiscreen/WindowGCChangeTest/WindowGCChangeTest.html ! test/java/awt/PrintJob/Text/stringwidth.sh ! test/java/awt/Robot/AcceptExtraMouseButtons/AcceptExtraMouseButtons.java ! test/java/awt/Robot/ManualInstructions/ManualInstructions.java ! test/java/awt/Robot/RobotExtraButton/RobotExtraButton.java ! test/java/awt/ScrollPane/ScrollPanePreferredSize/ScrollPanePreferredSize.java ! test/java/awt/TextArea/MouseOverScrollbarWhenTyping/Test.java ! test/java/awt/TextArea/MouseOverScrollbarWhenTyping/Test1.java ! test/java/awt/TextArea/TextAreaCursorTest/HoveringAndDraggingTest.html ! test/java/awt/TextArea/TextAreaTwicePack/TextAreaTwicePack.java ! test/java/awt/TextArea/UsingWithMouse/SelectionAutoscrollTest.html ! test/java/awt/TextField/ScrollSelectionTest/ScrollSelectionTest.html ! test/java/awt/Toolkit/Headless/AWTEventListener/AWTListener.java ! test/java/awt/Toolkit/Headless/ExceptionContract/ExceptionContract.java ! test/java/awt/Toolkit/Headless/GetPrintJob/GetPrintJob.java ! test/java/awt/Toolkit/Headless/GetPrintJob/GetPrintJobHeadless.java ! test/java/awt/Toolkit/SecurityTest/SecurityTest2.java ! test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_1.java ! test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_2.java ! test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_3.java ! test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_4.java ! test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_5.java ! test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Disable.java ! test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java ! test/java/awt/Window/Grab/GrabTest.java ! test/java/awt/Window/TranslucentShapedFrameTest/TSFrame.java ! test/java/awt/Window/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java ! test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.sh ! test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/test.html ! test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.html ! test/java/awt/datatransfer/HTMLDataFlavors/ManualHTMLDataFlavorTest.html ! test/java/awt/dnd/Button2DragTest/Button2DragTest.html ! test/java/awt/dnd/DnDFileGroupDescriptor/DnDFileGroupDescriptor.html ! test/java/awt/dnd/DnDFileGroupDescriptor/DnDFileGroupDescriptor.java ! test/java/awt/dnd/DnDFileGroupDescriptor/DnDTarget.java ! test/java/awt/dnd/FileListBetweenJVMsTest/FileListBetweenJVMsTest.html ! test/java/awt/dnd/ImageDecoratedDnD/DnDSource.java ! test/java/awt/dnd/ImageDecoratedDnD/DnDTarget.java ! test/java/awt/dnd/ImageDecoratedDnD/ImageDecoratedDnD.html ! test/java/awt/dnd/ImageDecoratedDnD/ImageDecoratedDnD.java ! test/java/awt/dnd/ImageDecoratedDnD/ImageGenerator.java ! test/java/awt/dnd/ImageDecoratedDnD/MyCursor.java ! test/java/awt/dnd/ImageDecoratedDnDInOut/DnDSource.java ! test/java/awt/dnd/ImageDecoratedDnDInOut/DnDTarget.java ! test/java/awt/dnd/ImageDecoratedDnDInOut/ImageDecoratedDnDInOut.html ! test/java/awt/dnd/ImageDecoratedDnDInOut/ImageDecoratedDnDInOut.java ! test/java/awt/dnd/ImageDecoratedDnDInOut/ImageGenerator.java ! test/java/awt/dnd/ImageDecoratedDnDInOut/MyCursor.java ! test/java/awt/dnd/ImageDecoratedDnDNegative/DnDSource.java ! test/java/awt/dnd/ImageDecoratedDnDNegative/DnDTarget.java ! test/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.html ! test/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.java ! test/java/awt/dnd/ImageDecoratedDnDNegative/ImageGenerator.java ! test/java/awt/dnd/ImageDecoratedDnDNegative/MyCursor.java ! test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.html ! test/java/awt/event/InputEvent/ButtonArraysEquality/ButtonArraysEquality.java ! test/java/awt/event/KeyEvent/AcceleratorTest/AcceleratorTest.html ! test/java/awt/event/KeyEvent/AcceleratorTest/AcceleratorTest.java ! test/java/awt/event/KeyEvent/KeyReleasedInAppletTest/KeyReleasedInAppletTest.html ! test/java/awt/event/KeyEvent/KeyTyped/CtrlASCII.html ! test/java/awt/event/MouseEvent/AWTPanelSmoothWheel/AWTPanelSmoothWheel.html ! test/java/awt/event/MouseEvent/AcceptExtraButton/AcceptExtraButton.java ! test/java/awt/event/MouseEvent/CTORRestrictions/CTORRestrictions.java ! test/java/awt/event/MouseEvent/CTORRestrictions/CTORRestrictions_Disable.java ! test/java/awt/event/MouseEvent/CheckGetMaskForButton/CheckGetMaskForButton.java ! test/java/awt/event/MouseEvent/FrameMouseEventAbsoluteCoordsTest/FrameMouseEventAbsoluteCoordsTest.html ! test/java/awt/event/MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMouseEventAbsoluteCoordsTest.html ! test/java/awt/event/MouseEvent/MouseClickTest/MouseClickTest.html ! test/java/awt/event/MouseEvent/MouseWheelEventAbsoluteCoordsTest/MouseWheelEventAbsoluteCoordsTest.html ! test/java/awt/event/MouseEvent/RobotLWTest/RobotLWTest.html ! test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_2.html ! test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_3.html ! test/java/awt/event/OtherEvents/UngrabID/UngrabID.java ! test/java/awt/im/4490692/bug4490692.html ! test/java/awt/im/4959409/bug4959409.html ! test/java/awt/im/JTextFieldTest.html ! test/java/awt/image/BufferedImage/TinyScale.java ! test/java/awt/image/DrawImage/EABlitTest.java ! test/java/awt/print/PrinterJob/CustomPrintService/PrintServiceStub.java ! test/java/awt/print/PrinterJob/CustomPrintService/SetPrintServiceTest.java ! test/java/awt/print/bug8023392/bug8023392.html ! test/java/awt/print/bug8023392/bug8023392.java ! test/java/beans/Introspector/6380849/beans/FirstBean.java ! test/java/beans/Introspector/6380849/beans/FirstBeanBeanInfo.java ! test/java/beans/Introspector/6380849/beans/SecondBean.java ! test/java/beans/Introspector/6380849/beans/ThirdBean.java ! test/java/beans/Introspector/6380849/infos/SecondBeanBeanInfo.java ! test/java/beans/Introspector/6380849/infos/ThirdBeanBeanInfo.java ! test/java/beans/Introspector/6976577/test/Accessor.java ! test/java/beans/Introspector/7122138/pack/Sub.java ! test/java/beans/Introspector/7122138/pack/Super.java ! test/java/beans/XMLEncoder/6380849/Bean.java ! test/java/beans/XMLEncoder/6380849/BeanPersistenceDelegate.java ! test/java/io/FileInputStream/OpsAfterClose.java ! test/java/io/FileOutputStream/OpsAfterClose.java ! test/java/io/RandomAccessFile/OpsAfterClose.java ! test/java/lang/StringBuffer/BufferForwarding.java ! test/java/lang/StringBuilder/BuilderForwarding.java ! test/java/lang/instrument/RedefineBigClassApp.java ! test/java/lang/instrument/RetransformBigClass.sh ! test/java/lang/instrument/RetransformBigClassApp.java ! test/java/lang/invoke/AccessControlTest.java ! test/java/lang/invoke/BigArityTest.java ! test/java/lang/invoke/ClassValueTest.java ! test/java/lang/invoke/InvokeGenericTest.java ! test/java/lang/invoke/JavaDocExamplesTest.java ! test/java/lang/invoke/MethodHandlesTest.java ! test/java/lang/invoke/PermuteArgsTest.java ! test/java/lang/invoke/PrivateInvokeTest.java ! test/java/lang/invoke/RevealDirectTest.java ! test/java/lang/invoke/RicochetTest.java ! test/java/lang/invoke/TestCatchExceptionWithVarargs.java ! test/java/lang/invoke/ThrowExceptionsTest.java ! test/java/lang/invoke/remote/RemoteExample.java ! test/java/lang/ref/ReferenceEnqueuePending.java ! test/java/net/URLClassLoader/closetest/build.sh ! test/java/security/cert/CertPathBuilder/selfIssued/generate.sh ! test/java/security/cert/CertPathValidator/indirectCRL/generate.sh ! test/java/security/cert/CertPathValidator/nameConstraints/generate.sh ! test/java/security/cert/CertificateRevokedException/Basic.java ! test/java/util/Calendar/CldrFormatNamesTest.java ! test/java/util/Locale/LocaleEnhanceTest.java ! test/java/util/Locale/LocaleTestFmwk.java ! test/java/util/Locale/tools/EquivMapsGenerator.java ! test/java/util/TimeZone/Bug6912560.java ! test/java/util/TimeZone/CLDRDisplayNamesTest.java ! test/java/util/TimeZone/ListTimeZones.java ! test/java/util/TimeZone/OldIDMappingTest.java ! test/java/util/TimeZone/OldIDMappingTest.sh ! test/java/util/TimeZone/SetDefaultSecurityTest.java ! test/java/util/TimeZone/TimeZoneDatePermissionCheck.java ! test/java/util/TimeZone/TzIDOldMapping.java ! test/java/util/prefs/AddNodeChangeListener.java ! test/java/util/prefs/CheckUserPrefFirst.java ! test/java/util/prefs/CheckUserPrefLater.java ! test/java/util/regex/RegExTest.java ! test/java/util/spi/ResourceBundleControlProvider/providersrc/UserControlProvider.java ! test/java/util/zip/LargeZip.java ! test/java/util/zip/TotalInOut.java ! test/javax/imageio/plugins/gif/GifTransparencyTest.java ! test/javax/management/modelmbean/LoggingExceptionTest.java ! test/javax/management/remote/mandatory/connection/MultiThreadDeadLockTest.java ! test/javax/print/DialogMargins.java ! test/javax/print/StreamPrintingOrientation.java ! test/javax/print/applet/AppletPrintLookup.html ! test/javax/sound/midi/File/SMPTESequence.java ! test/javax/sound/midi/Gervill/AudioFloatConverter/GetFormat.java ! test/javax/sound/midi/Gervill/AudioFloatConverter/ToFloatArray.java ! test/javax/sound/midi/Gervill/AudioFloatFormatConverter/SkipTest.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/Available.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/Close.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/GetFormat.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/GetFrameLength.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/MarkSupported.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/Read.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/ReadFloatArray.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/ReadFloatArrayIntInt.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/Reset.java ! test/javax/sound/midi/Gervill/AudioFloatInputStream/Skip.java ! test/javax/sound/midi/Gervill/DLSSoundbankReader/TestGetSoundbankFile.java ! test/javax/sound/midi/Gervill/DLSSoundbankReader/TestGetSoundbankInputStream.java ! test/javax/sound/midi/Gervill/DLSSoundbankReader/TestGetSoundbankInputStream2.java ! test/javax/sound/midi/Gervill/DLSSoundbankReader/TestGetSoundbankUrl.java ! test/javax/sound/midi/Gervill/EmergencySoundbank/TestCreateSoundbank.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/GetInputStream.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/GetRoot.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/Load.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/LoadAll.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/NewModelByteBufferByteArray.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/NewModelByteBufferByteArrayIntInt.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/NewModelByteBufferFile.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/NewModelByteBufferFileLongLong.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/Available.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/Close.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/MarkReset.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/MarkSupported.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/Read.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/ReadByte.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/ReadByteIntInt.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/RandomFileInputStream/Skip.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/SubbufferLong.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/SubbufferLongLong.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/SubbufferLongLongBoolean.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/Unload.java ! test/javax/sound/midi/Gervill/ModelByteBuffer/WriteTo.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/GetAttenuation.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/GetChannels.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/GetLoopLength.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/GetLoopStart.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/GetPitchCorrection.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/NewModelByteBufferWavetableModelByteBuffer.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/NewModelByteBufferWavetableModelByteBufferAudioFormat.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/NewModelByteBufferWavetableModelByteBufferAudioFormatFloat.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/NewModelByteBufferWavetableModelByteBufferFloat.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/Open.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/OpenStream.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/Set8BitExtensionBuffer.java ! test/javax/sound/midi/Gervill/ModelByteBufferWavetable/SetLoopType.java ! test/javax/sound/midi/Gervill/ModelDestination/NewModelDestination.java ! test/javax/sound/midi/Gervill/ModelDestination/NewModelDestinationModelIdentifier.java ! test/javax/sound/midi/Gervill/ModelDestination/SetIdentifier.java ! test/javax/sound/midi/Gervill/ModelDestination/SetTransform.java ! test/javax/sound/midi/Gervill/ModelIdentifier/EqualsObject.java ! test/javax/sound/midi/Gervill/ModelIdentifier/NewModelIdentifierString.java ! test/javax/sound/midi/Gervill/ModelIdentifier/NewModelIdentifierStringInt.java ! test/javax/sound/midi/Gervill/ModelIdentifier/NewModelIdentifierStringString.java ! test/javax/sound/midi/Gervill/ModelIdentifier/NewModelIdentifierStringStringInt.java ! test/javax/sound/midi/Gervill/ModelIdentifier/SetInstance.java ! test/javax/sound/midi/Gervill/ModelIdentifier/SetObject.java ! test/javax/sound/midi/Gervill/ModelIdentifier/SetVariable.java ! test/javax/sound/midi/Gervill/ModelPerformer/GetOscillators.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetConnectionBlocks.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetDefaultConnectionsEnabled.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetExclusiveClass.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetKeyFrom.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetKeyTo.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetName.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetSelfNonExclusive.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetVelFrom.java ! test/javax/sound/midi/Gervill/ModelPerformer/SetVelTo.java ! test/javax/sound/midi/Gervill/ModelSource/NewModelSource.java ! test/javax/sound/midi/Gervill/ModelSource/NewModelSourceModelIdentifier.java ! test/javax/sound/midi/Gervill/ModelSource/NewModelSourceModelIdentifierBoolean.java ! test/javax/sound/midi/Gervill/ModelSource/NewModelSourceModelIdentifierBooleanBoolean.java ! test/javax/sound/midi/Gervill/ModelSource/NewModelSourceModelIdentifierBooleanBooleanInt.java ! test/javax/sound/midi/Gervill/ModelSource/NewModelSourceModelIdentifierModelTransform.java ! test/javax/sound/midi/Gervill/ModelSource/SetIdentifier.java ! test/javax/sound/midi/Gervill/ModelSource/SetTransform.java ! test/javax/sound/midi/Gervill/ModelStandardIndexedDirector/ModelStandardIndexedDirectorTest.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/NewModelStandardTransform.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/NewModelStandardTransformBoolean.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/NewModelStandardTransformBooleanBoolean.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/NewModelStandardTransformBooleanBooleanInt.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/SetDirection.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/SetPolarity.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/SetTransform.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/TransformAbsolute.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/TransformConcave.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/TransformConvex.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/TransformLinear.java ! test/javax/sound/midi/Gervill/ModelStandardTransform/TransformSwitch.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Available.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Close.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/GetFilePointer.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/GetSize.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/HasNextChunk.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Read.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadByte.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadByteArrayIntInt.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadInt.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadLong.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadShort.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadString.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadUnsignedByte.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadUnsignedInt.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/ReadUnsignedShort.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/Skip.java ! test/javax/sound/midi/Gervill/RiffReaderWriter/WriteOutputStream.java ! test/javax/sound/midi/Gervill/SF2SoundbankReader/TestGetSoundbankFile.java ! test/javax/sound/midi/Gervill/SF2SoundbankReader/TestGetSoundbankInputStream.java ! test/javax/sound/midi/Gervill/SF2SoundbankReader/TestGetSoundbankInputStream2.java ! test/javax/sound/midi/Gervill/SF2SoundbankReader/TestGetSoundbankUrl.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelInstrument.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelInstrumentIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelInstrumentIntIntIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelInstrumentIntIntIntIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformer.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerArray.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerArrayIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerArrayIntIntIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerArrayIntIntIntIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerIntIntIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/AddModelPerformerIntIntIntIntInt.java ! test/javax/sound/midi/Gervill/SimpleInstrument/Clear.java ! test/javax/sound/midi/Gervill/SimpleInstrument/SetName.java ! test/javax/sound/midi/Gervill/SimpleInstrument/SetPatch.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/AddInstrument.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/AddResource.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/GetInstrument.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/RemoveInstrument.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/SetDescription.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/SetName.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/SetVendor.java ! test/javax/sound/midi/Gervill/SimpleSoundbank/SetVersion.java ! test/javax/sound/midi/Gervill/SoftAudioBuffer/Array.java ! test/javax/sound/midi/Gervill/SoftAudioBuffer/Clear.java ! test/javax/sound/midi/Gervill/SoftAudioBuffer/Get.java ! test/javax/sound/midi/Gervill/SoftAudioBuffer/NewSoftAudioBuffer.java ! test/javax/sound/midi/Gervill/SoftAudioSynthesizer/DummySourceDataLine.java ! test/javax/sound/midi/Gervill/SoftAudioSynthesizer/GetFormat.java ! test/javax/sound/midi/Gervill/SoftAudioSynthesizer/GetPropertyInfo.java ! test/javax/sound/midi/Gervill/SoftAudioSynthesizer/Open.java ! test/javax/sound/midi/Gervill/SoftAudioSynthesizer/OpenStream.java ! test/javax/sound/midi/Gervill/SoftChannel/AllNotesOff.java ! test/javax/sound/midi/Gervill/SoftChannel/AllSoundOff.java ! test/javax/sound/midi/Gervill/SoftChannel/ChannelPressure.java ! test/javax/sound/midi/Gervill/SoftChannel/Controller.java ! test/javax/sound/midi/Gervill/SoftChannel/LocalControl.java ! test/javax/sound/midi/Gervill/SoftChannel/Mono.java ! test/javax/sound/midi/Gervill/SoftChannel/Mute.java ! test/javax/sound/midi/Gervill/SoftChannel/NoteOff.java ! test/javax/sound/midi/Gervill/SoftChannel/NoteOff2.java ! test/javax/sound/midi/Gervill/SoftChannel/NoteOn.java ! test/javax/sound/midi/Gervill/SoftChannel/NoteOverFlowTest.java ! test/javax/sound/midi/Gervill/SoftChannel/NoteOverFlowTest2.java ! test/javax/sound/midi/Gervill/SoftChannel/Omni.java ! test/javax/sound/midi/Gervill/SoftChannel/PitchBend.java ! test/javax/sound/midi/Gervill/SoftChannel/PolyPressure.java ! test/javax/sound/midi/Gervill/SoftChannel/ProgramAndBankChange.java ! test/javax/sound/midi/Gervill/SoftChannel/ProgramChange.java ! test/javax/sound/midi/Gervill/SoftChannel/ResetAllControllers.java ! test/javax/sound/midi/Gervill/SoftChannel/SoftTestUtils.java ! test/javax/sound/midi/Gervill/SoftChannel/Solo.java ! test/javax/sound/midi/Gervill/SoftCubicResampler/Interpolate.java ! test/javax/sound/midi/Gervill/SoftFilter/TestProcessAudio.java ! test/javax/sound/midi/Gervill/SoftLanczosResampler/Interpolate.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_mix.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_mix_mono.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_mix_mono_overdrive.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_mix_overdrive.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_normal.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_normal_mono.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_overdrive.java ! test/javax/sound/midi/Gervill/SoftLimiter/ProcessAudio_replace_overdrive_mono.java ! test/javax/sound/midi/Gervill/SoftLinearResampler/Interpolate.java ! test/javax/sound/midi/Gervill/SoftLinearResampler2/Interpolate.java ! test/javax/sound/midi/Gervill/SoftLowFrequencyOscillator/TestProcessControlLogic.java ! test/javax/sound/midi/Gervill/SoftPointResampler/Interpolate.java ! test/javax/sound/midi/Gervill/SoftProvider/GetDevice.java ! test/javax/sound/midi/Gervill/SoftReceiver/Close.java ! test/javax/sound/midi/Gervill/SoftReceiver/GetMidiDevice.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_ActiveSense.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_AllNotesOff.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_AllSoundOff.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_ChannelPressure.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_Controller.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_Mono.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_NoteOff.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_NoteOn.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_NoteOn_AllChannels.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_NoteOn_Delayed.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_NoteOn_Multiple.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_Omni.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_PitchBend.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_PolyPressure.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_ProgramChange.java ! test/javax/sound/midi/Gervill/SoftReceiver/Send_ResetAllControllers.java ! test/javax/sound/midi/Gervill/SoftReceiver/SoftTestUtils.java ! test/javax/sound/midi/Gervill/SoftSincResampler/Interpolate.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/Close.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/DummySourceDataLine.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetAvailableInstruments.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetAvailableInstruments2.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetChannels.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetDefaultSoundbank.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetDeviceInfo.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetLatency.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetLoadedInstruments.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetLoadedInstruments2.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetMaxPolyphony.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetMaxReceivers.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetMaxTransmitters.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetMicrosecondPosition.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetPropertyInfo.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetReceiver.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetReceiver2.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetReceivers.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetTransmitter.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetTransmitters.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/GetVoiceStatus.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/ImplicitOpenClose.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/IsOpen.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/IsSoundbankSupported.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/LoadAllInstruments.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/LoadInstrument.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/LoadInstruments.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/Open.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/OpenStream.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/RemapInstrument.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/TestDisableLoadDefaultSoundbank.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/TestPreciseTimestampRendering.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/TestRender1.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/UnloadAllInstruments.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/UnloadInstrument.java ! test/javax/sound/midi/Gervill/SoftSynthesizer/UnloadInstruments.java ! test/javax/sound/midi/Gervill/SoftTuning/GetName.java ! test/javax/sound/midi/Gervill/SoftTuning/GetTuning.java ! test/javax/sound/midi/Gervill/SoftTuning/GetTuningInt.java ! test/javax/sound/midi/Gervill/SoftTuning/Load1.java ! test/javax/sound/midi/Gervill/SoftTuning/Load2.java ! test/javax/sound/midi/Gervill/SoftTuning/Load4.java ! test/javax/sound/midi/Gervill/SoftTuning/Load5.java ! test/javax/sound/midi/Gervill/SoftTuning/Load6.java ! test/javax/sound/midi/Gervill/SoftTuning/Load7.java ! test/javax/sound/midi/Gervill/SoftTuning/Load8.java ! test/javax/sound/midi/Gervill/SoftTuning/Load9.java ! test/javax/sound/midi/Gervill/SoftTuning/NewSoftTuning.java ! test/javax/sound/midi/Gervill/SoftTuning/NewSoftTuningByteArray.java ! test/javax/sound/midi/Gervill/SoftTuning/NewSoftTuningPatch.java ! test/javax/sound/midi/Gervill/SoftTuning/NewSoftTuningPatchByteArray.java ! test/javax/sound/midi/Gervill/SoftTuning/RealTimeTuning.java ! test/javax/sound/midi/MidiDeviceConnectors/TestAllDevices.java ! test/javax/sound/midi/Sequencer/SequencerImplicitSynthOpen.java ! test/javax/sound/sampled/AudioFormat/Matches_NOT_SPECIFIED.java ! test/javax/sound/sampled/AudioFormat/PCM_FLOAT_support.java ! test/javax/sound/sampled/Clip/ClipSetPos.java ! test/javax/sound/sampled/DataLine/DataLine_ArrayIndexOutOfBounds.java ! test/javax/sound/sampled/DirectAudio/bug6400879.java ! test/javax/sound/sampled/FileWriter/AlawEncoderSync.java ! test/javax/sound/sampled/FileWriter/WriterCloseInput.java ! test/javax/swing/JCheckBox/4449413/bug4449413.html ! test/javax/swing/JColorChooser/Test4222508.html ! test/javax/swing/JColorChooser/Test4759306.html ! test/javax/swing/JColorChooser/Test4759934.html ! test/javax/swing/JColorChooser/Test4887836.html ! test/javax/swing/JColorChooser/Test6348456.html ! test/javax/swing/JColorChooser/Test6977726.html ! test/javax/swing/JComponent/4337267/bug4337267.java ! test/javax/swing/JComponent/6683775/bug6683775.java ! test/javax/swing/JEditorPane/4492274/test.html ! test/javax/swing/JEditorPane/6917744/test.html ! test/javax/swing/JEditorPane/bug4714674.java ! test/javax/swing/JFileChooser/6570445/bug6570445.java ! test/javax/swing/JFileChooser/6698013/bug6698013.html ! test/javax/swing/JFileChooser/6698013/bug6698013.java ! test/javax/swing/JFileChooser/6798062/bug6798062.html ! test/javax/swing/JInternalFrame/6726866/bug6726866.html ! test/javax/swing/JInternalFrame/6726866/bug6726866.java ! test/javax/swing/JSlider/4987336/bug4987336.html ! test/javax/swing/JSlider/6524424/bug6524424.html ! test/javax/swing/JSlider/6587742/bug6587742.html ! test/javax/swing/JSlider/6742358/bug6742358.html ! test/javax/swing/JTabbedPane/4310381/bug4310381.html ! test/javax/swing/JTree/4314199/bug4314199.html ! test/javax/swing/SwingUtilities/7170657/bug7170657.java ! test/javax/swing/border/Test4129681.html ! test/javax/swing/border/Test4243289.html ! test/javax/swing/border/Test4247606.html ! test/javax/swing/border/Test4252164.html ! test/javax/swing/border/Test4760089.html ! test/javax/swing/border/Test6910490.html ! test/javax/swing/border/Test7022041.java ! test/javax/swing/text/html/TableView/7030332/bug7030332.html ! test/sun/java2d/cmm/ColorConvertOp/ConstructorsNullTest/ConstructorsNullTest.html ! test/sun/nio/cs/EUC_TW_OLD.java ! test/sun/nio/cs/TestStringCoding.java ! test/sun/nio/cs/X11CNS11643.java ! test/sun/nio/cs/X11CNS11643P1.java ! test/sun/nio/cs/X11CNS11643P2.java ! test/sun/nio/cs/X11CNS11643P3.java ! test/sun/security/pkcs11/KeyStore/SecretKeysBasic.java ! test/sun/security/pkcs11/ec/TestECGenSpec.java ! test/sun/security/pkcs11/ec/TestKeyFactory.java ! test/sun/util/resources/Locale/Bug6275682.java ! test/tools/launcher/DiacriticTest.java ! test/vm/verifier/defaultMethods/DefaultMethodRegressionTests.java ! test/vm/verifier/defaultMethods/DefaultMethodRegressionTestsRun.java Changeset: d6fe4e451dfb Author: bagiras Date: 2013-11-13 20:16 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d6fe4e451dfb 8028283: Revert JavaDoc changes pushed for JDK-7068423 Reviewed-by: art, serb ! src/share/classes/java/awt/GraphicsDevice.java Changeset: 535f19dd3960 Author: pchelko Date: 2013-11-14 10:52 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/535f19dd3960 8028230: Behavior of SystemFlavorMap.getNativesForFlavor differ from that in Java 7 Reviewed-by: anthony, serb ! src/share/classes/java/awt/datatransfer/SystemFlavorMap.java + test/java/awt/datatransfer/DuplicatedNativesTest/DuplicatedNativesTest.java Changeset: 8d17ebcef958 Author: pchelko Date: 2013-11-14 11:42 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8d17ebcef958 8025440: [TEST_BUG] com/sun/awt/SecurityWarning/GetSizeShouldNotReturnZero.java failed since jdk8b108 Reviewed-by: anthony + test/com/sun/awt/SecurityWarning/CustomSecurityManager.java ! test/com/sun/awt/SecurityWarning/GetSizeShouldNotReturnZero.java + test/java/awt/regtesthelpers/CopyClassFile.java Changeset: ca0db77f6d6b Author: lana Date: 2013-11-14 23:32 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ca0db77f6d6b Merge Changeset: c35f6df5bce9 Author: sla Date: 2013-11-01 10:08 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c35f6df5bce9 8027692: Remove java/lang/management/MemoryMXBean/LowMemoryTest2.sh from ProblemList.txt Reviewed-by: stefank, alanb ! test/ProblemList.txt Changeset: c59ccad6eb72 Author: sla Date: 2013-11-01 15:10 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c59ccad6eb72 8027705: com/sun/jdi/JdbMethodExitTest.sh fails when a background thread is generating events. Reviewed-by: dcubed ! test/com/sun/jdi/JdbMethodExitTest.sh ! test/com/sun/jdi/ShellScaffold.sh Changeset: 6a6faa00acc4 Author: dxu Date: 2013-11-01 14:40 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6a6faa00acc4 8027624: com/sun/crypto/provider/KeyFactory/TestProviderLeak.java unstable again Reviewed-by: wetmore ! test/com/sun/crypto/provider/KeyFactory/TestProviderLeak.java Changeset: adcc01f5bc93 Author: jrose Date: 2013-11-02 20:08 -0700 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/adcc01f5bc93 8024635: Caching MethodType's descriptor string improves lambda linkage performance Summary: Better interpreted and compiled performance of operations in MethodType important to LambdaMetafactory. Reviewed-by: jrose, twisti, mchung Contributed-by: sergey.kuksenko at oracle.com ! src/share/classes/java/lang/invoke/MethodType.java Changeset: d19ab5da83cc Author: dholmes Date: 2013-11-04 06:58 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d19ab5da83cc 8025198: Intermittent test failure: java/util/concurrent/ThreadPoolExecutor/ThrowingTasks.java Reviewed-by: martin, dholmes Contributed-by: Tristan Yan ! makefiles/CompileLaunchers.gmk ! makefiles/lib/CoreLibraries.gmk ! src/share/bin/java.c ! test/java/util/concurrent/ThreadPoolExecutor/ThrowingTasks.java Changeset: 23982079ad49 Author: dholmes Date: 2013-11-04 07:39 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/23982079ad49 8027755: Anti-delta incorrect push for 8025198 Reviewed-by: alanb ! makefiles/CompileLaunchers.gmk ! makefiles/lib/CoreLibraries.gmk ! src/share/bin/java.c Changeset: 92fb6baaebc4 Author: bpb Date: 2013-11-04 08:05 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/92fb6baaebc4 8027625: test/java/math/BigInteger/ExtremeShiftingTests.java needs @run tag to specify heap size Summary: Add @run tag to specify heap size Reviewed-by: alanb, dxu ! test/java/math/BigInteger/ExtremeShiftingTests.java Changeset: 48449b5390fa Author: michaelm Date: 2013-11-04 17:47 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/48449b5390fa 8027687: The constructors of URLPermission class do not behave as described in javad Reviewed-by: chegar, mduigou ! src/share/classes/java/net/HostPortrange.java ! src/share/classes/java/net/URLPermission.java ! test/java/net/URLPermission/URLPermissionTest.java Changeset: 51b002381b35 Author: rfield Date: 2013-11-04 10:12 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/51b002381b35 7194897: JSR 292: Cannot create more than 16 instances of an anonymous class 8027681: Lambda serialization fails once reflection proxy generation kicks in Reviewed-by: ksrini, briangoetz, jfranck Contributed-by: joel.franck at oracle.com, brian.goetz at oracle.com, robert.field at oracle.com ! src/share/classes/sun/reflect/NativeConstructorAccessorImpl.java ! src/share/classes/sun/reflect/NativeMethodAccessorImpl.java ! src/share/classes/sun/reflect/misc/ReflectUtil.java + test/java/lang/invoke/lambda/RepetitiveLambdaSerialization.java ! test/java/util/stream/test/org/openjdk/tests/java/lang/invoke/SerializedLambdaTest.java + test/sun/reflect/AnonymousNewInstance/ManyNewInstanceAnonTest.java Changeset: 78a0dcde6b67 Author: alundblad Date: 2013-11-04 15:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/78a0dcde6b67 8016725: TEST_BUG: java/lang/reflect/Method/DefaultMethodModeling.java failing intermittently Summary: Moved DefaultMethodModeling.java to its own directory to avoid conflicts with Equals.java. Reviewed-by: darcy - test/java/lang/reflect/Method/DefaultMethodModeling.java + test/java/lang/reflect/Method/defaultMethodModeling/DefaultMethodModeling.java Changeset: 6d1f3ba68db2 Author: dxu Date: 2013-11-04 15:48 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6d1f3ba68db2 8027612: java/io/File/MaxPathLength.java fails intermittently in the clean-up stage Reviewed-by: chegar ! test/java/io/File/MaxPathLength.java Changeset: d5b3f83ffc40 Author: psandoz Date: 2013-11-05 12:08 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d5b3f83ffc40 8027712: DistinctOpTest fails for unordered test Reviewed-by: henryjen, alanb ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/DistinctOpTest.java Changeset: a8a044db575c Author: joehw Date: 2013-11-05 11:18 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a8a044db575c 8027860: [TEST_BUG] File not closed in javax/xml/jaxp/parsers/8022548/XOMParserTest.java Reviewed-by: alanb ! test/javax/xml/jaxp/parsers/8022548/XOMParserTest.java Changeset: 85fd2ae0a845 Author: mchung Date: 2013-11-05 17:33 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/85fd2ae0a845 8022208: Intermittent test failures in java/lang/Thread/ThreadStateTest.java 6944188: ThreadMXBean/ThreadStateTest.java fails intermittently Reviewed-by: dholmes, chegar + test/java/lang/Thread/ThreadStateController.java ! test/java/lang/Thread/ThreadStateTest.java + test/java/lang/management/ThreadMXBean/ThreadMXBeanStateTest.java - test/java/lang/management/ThreadMXBean/ThreadStateTest.java Changeset: 9c30cbc316e9 Author: mduigou Date: 2013-11-05 19:44 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9c30cbc316e9 8021309: replace test/Makefile jdk_* targets with jtreg groups 8015068: Use jtreg -exclude for handling problemList.txt exclusions Reviewed-by: jjg, smarks, chegar, alanb, dholmes ! .hgignore ! test/Makefile Changeset: 6ea1f9d8ec78 Author: dxu Date: 2013-11-06 13:25 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6ea1f9d8ec78 8025698: (fs) Typo in exception thrown by encode() in UnixPath.java Reviewed-by: dxu, mduigou, henryjen, weijun Contributed-by: ajuckel at gmail.com ! src/solaris/classes/sun/nio/fs/UnixPath.java Changeset: 81cbdd5876e8 Author: ksrini Date: 2013-11-06 11:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/81cbdd5876e8 8027227: [asm] generate CONSTANT_InterfaceMethodref for invoke{special/static) of non-abstract methods on ifaces Reviewed-by: ksrini, lagergren Contributed-by: ebruneton at free.fr, forax at univ-mlv.fr, john.r.rose at oracle.com, paul.sandoz at oracle.com ! src/share/classes/jdk/internal/org/objectweb/asm/ByteVector.java ! src/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java ! src/share/classes/jdk/internal/org/objectweb/asm/ClassWriter.java ! src/share/classes/jdk/internal/org/objectweb/asm/Handle.java ! src/share/classes/jdk/internal/org/objectweb/asm/MethodVisitor.java ! src/share/classes/jdk/internal/org/objectweb/asm/MethodWriter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/AdviceAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/AnalyzerAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/CodeSizeEvaluator.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/GeneratorAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/InstructionAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/JSRInlinerAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/LocalVariablesSorter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/RemappingMethodAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/RemappingSignatureAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/SerialVersionUIDAdder.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/StaticInitMerger.java ! src/share/classes/jdk/internal/org/objectweb/asm/commons/TryCatchBlockSorter.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/AnnotationNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/ClassNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/FieldNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/MethodInsnNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/MethodNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/TypeAnnotationNode.java ! src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Frame.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/ASMifier.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/CheckClassAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/CheckFieldAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/CheckMethodAdapter.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/Printer.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/Textifier.java ! src/share/classes/jdk/internal/org/objectweb/asm/util/TraceMethodVisitor.java ! src/share/classes/jdk/internal/org/objectweb/asm/version.txt Changeset: dbda97d6aa3a Author: ksrini Date: 2013-11-06 11:31 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/dbda97d6aa3a 8027232: Update j.l.invoke code generating class files to use ASM enhancements for invocation of non-abstract methods on ifaces Reviewed-by: ksrini, rfield Contributed-by: john.r.rose at oracle.com, paul.sandoz at oracle.com ! src/share/classes/java/lang/invoke/InnerClassLambdaMetafactory.java ! src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java ! src/share/classes/java/lang/invoke/TypeConvertingMethodAdapter.java + test/java/lang/invoke/lambda/LambdaAsm.java Changeset: f37d62e295c0 Author: chegar Date: 2013-11-07 08:04 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f37d62e295c0 8027822: ProblemList.txt Updates (11/2013) Reviewed-by: chegar, alanb Contributed-by: Amy Lu ! test/ProblemList.txt Changeset: 82b276590b85 Author: chegar Date: 2013-11-07 08:23 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/82b276590b85 8027961: Inet[4|6]Address native initializing code should check field/MethodID values Reviewed-by: michaelm, rriggs ! src/share/native/java/net/Inet4Address.c ! src/share/native/java/net/Inet6Address.c ! src/share/native/java/net/InetAddress.c ! src/solaris/native/java/net/Inet4AddressImpl.c ! src/solaris/native/java/net/Inet6AddressImpl.c ! src/windows/native/java/net/Inet4AddressImpl.c ! src/windows/native/java/net/Inet6AddressImpl.c Changeset: 88d1ed05a246 Author: michaelm Date: 2013-11-07 10:22 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/88d1ed05a246 8027881: test/java/net/URLPermission/nstest/LookupTest.java failing intermittently, output insufficient Reviewed-by: chegar ! test/java/net/URLPermission/URLPermissionTest.java ! test/java/net/URLPermission/nstest/LookupTest.java + test/java/net/URLPermission/nstest/lookup.sh - test/java/net/URLPermission/nstest/policy Changeset: 44fa6bf42846 Author: jfranck Date: 2013-11-07 13:33 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/44fa6bf42846 8027796: Refactor Core Reflection for Type Annotations Reviewed-by: psandoz ! src/share/classes/sun/reflect/annotation/AnnotatedTypeFactory.java ! src/share/classes/sun/reflect/annotation/TypeAnnotation.java ! src/share/classes/sun/reflect/annotation/TypeAnnotationParser.java Changeset: fb7abd509bd2 Author: naoto Date: 2013-11-07 10:03 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fb7abd509bd2 8027930: ResourceBundle test failures in fr locale Reviewed-by: smarks ! test/java/util/ResourceBundle/ResourceBundleTest.java ! test/java/util/ResourceBundle/getBaseBundleName/TestGetBaseBundleName.java Changeset: 04f071a95c29 Author: rriggs Date: 2013-11-07 20:56 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/04f071a95c29 8024458: DataInput.readDouble refers to "readlong" instead of "readLong" Summary: fix the typo Reviewed-by: lancea, chegar, dxu ! src/share/classes/java/io/DataInput.java Changeset: e10a182c973a Author: yhuang Date: 2013-11-07 22:30 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e10a182c973a 8027695: There should be a space before % sign in Swedish locale Reviewed-by: naoto ! src/share/classes/sun/text/resources/sv/FormatData_sv_SE.java ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: b5748857ef42 Author: jbachorik Date: 2013-11-08 08:47 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b5748857ef42 8007984: Null pointer dereference in jdk/linux-amd64/democlasses/demo/jvmti/heapTracker/src/java_crw_demo.c Reviewed-by: dholmes ! src/share/demo/jvmti/java_crw_demo/java_crw_demo.c Changeset: 8a4405fb40ba Author: ykantser Date: 2013-11-07 16:55 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8a4405fb40ba 8027752: sun/tools/jstatd/TestJstatdExternalRegistry.java: java.lang.SecurityException: attempt to add a Permission to a readonly Permissions object Reviewed-by: sla, jbachorik ! test/sun/tools/jstatd/JstatdTest.java Changeset: 41d7ce111bd8 Author: mchung Date: 2013-11-08 07:53 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/41d7ce111bd8 8027351: (ref) Private finalize method invoked in preference to protected superclass method Reviewed-by: alanb, dholmes, mr, plevart, psandoz ! makefiles/lib/CoreLibraries.gmk ! makefiles/mapfiles/libjava/mapfile-vers ! makefiles/mapfiles/libjava/reorder-sparc ! makefiles/mapfiles/libjava/reorder-sparcv9 ! makefiles/mapfiles/libjava/reorder-x86 ! src/share/classes/java/lang/System.java ! src/share/classes/java/lang/ref/Finalizer.java ! src/share/classes/sun/misc/JavaLangAccess.java ! src/share/classes/sun/misc/VM.java + test/java/lang/ref/FinalizeOverride.java Changeset: 3112729d6b74 Author: tyan Date: 2013-11-08 15:12 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3112729d6b74 8022963: java/net/NetworkInterface/Equals.java fails equality for Windows Teredo Interface Reviewed-by: chegar ! test/java/net/MulticastSocket/TestInterfaces.java ! test/java/net/NetworkInterface/Equals.java Changeset: 771c77b49bb6 Author: chegar Date: 2013-11-08 15:15 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/771c77b49bb6 8019834: InetAddress.getByName hangs for bad IPv6 literals Reviewed-by: alanb ! src/share/classes/java/net/InetAddress.java ! test/java/net/ipv6tests/BadIPv6Addresses.java Changeset: 1c9ba18198d5 Author: mchung Date: 2013-11-08 09:43 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1c9ba18198d5 8028069: (ref) Finalizer.c not deleted in the changeset for JDK-8027351 Reviewed-by: alanb - src/share/native/java/lang/ref/Finalizer.c Changeset: 46982ca895b4 Author: tyan Date: 2013-11-08 18:54 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/46982ca895b4 8023462: TEST_BUG: test/com/sun/net/httpserver/bugs/B6433018.java fails on slow/single core machine Reviewed-by: chegar ! test/com/sun/net/httpserver/bugs/B6433018.java Changeset: 40ca9e4866de Author: mchung Date: 2013-11-08 12:13 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/40ca9e4866de 8025985: com.sun.management.OSMBeanFactory should not be public Reviewed-by: alanb, erikj, ihse, jbachorik ! makefiles/lib/ServiceabilityLibraries.gmk ! makefiles/mapfiles/libmanagement/mapfile-vers + src/share/classes/sun/management/BaseOperatingSystemImpl.java ! src/share/classes/sun/management/ManagementFactoryHelper.java - src/share/classes/sun/management/OperatingSystemImpl.java - src/solaris/classes/com/sun/management/OSMBeanFactory.java - src/solaris/classes/com/sun/management/UnixOperatingSystem.java + src/solaris/classes/sun/management/OperatingSystemImpl.java - src/solaris/native/com/sun/management/LinuxOperatingSystem.c - src/solaris/native/com/sun/management/MacosxOperatingSystem.c - src/solaris/native/com/sun/management/SolarisOperatingSystem.c - src/solaris/native/com/sun/management/UnixOperatingSystem_md.c + src/solaris/native/sun/management/LinuxOperatingSystem.c + src/solaris/native/sun/management/MacosxOperatingSystem.c + src/solaris/native/sun/management/OperatingSystemImpl.c + src/solaris/native/sun/management/SolarisOperatingSystem.c - src/windows/classes/com/sun/management/OSMBeanFactory.java - src/windows/classes/com/sun/management/OperatingSystem.java + src/windows/classes/sun/management/OperatingSystemImpl.java - src/windows/native/com/sun/management/OperatingSystem_md.c + src/windows/native/sun/management/OperatingSystemImpl.c Changeset: 11376ad23e21 Author: darcy Date: 2013-11-08 12:19 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/11376ad23e21 8028076: Correct raw type lint warnings in core reflection implementation classes Reviewed-by: lancea, alanb ! src/share/classes/sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl.java ! src/share/classes/sun/reflect/generics/repository/GenericDeclRepository.java Changeset: 50df04934e86 Author: alanb Date: 2013-11-08 21:07 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/50df04934e86 8028074: InetAddress.getByName fails with UHE "invalid IPv6 address" if host name starts with a-f Reviewed-by: chegar ! src/share/classes/java/net/InetAddress.java Changeset: df2f7f288353 Author: rriggs Date: 2013-11-08 17:50 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/df2f7f288353 8028041: Serialized Form description of j.l.String is not consistent with the implementation Summary: Replaced incorrect description with reference to the serialization specification Reviewed-by: alanb, smarks ! src/share/classes/java/lang/String.java Changeset: a579e2f73bca Author: lana Date: 2013-11-08 17:36 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a579e2f73bca Merge ! src/share/classes/java/lang/invoke/MethodType.java ! src/solaris/classes/sun/nio/fs/UnixPath.java ! test/java/lang/Thread/ThreadStateTest.java Changeset: 9130770fb6e3 Author: alanb Date: 2013-11-09 16:46 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9130770fb6e3 8028044: [TEST_BUG] Calendar shell tests do not pass TESTVMOPTS Reviewed-by: dholmes, alanb Contributed-by: patrick.zhang at oracle.com ! test/java/util/Calendar/GenericTimeZoneNamesTest.sh ! test/java/util/Calendar/NarrowNamesTest.sh Changeset: 3add16c86970 Author: rriggs Date: 2013-11-09 14:30 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/3add16c86970 8028092: Lint cleanup of java.time.format Summary: correct declarations and add @SuppressWarnings Reviewed-by: darcy, lancea ! src/share/classes/java/time/format/DateTimeParseContext.java ! src/share/classes/java/time/format/Parsed.java Changeset: 0c75cc07d264 Author: jbachorik Date: 2013-11-10 20:05 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0c75cc07d264 6523160: RuntimeMXBean.getUptime() returns negative values Summary: RuntimeMXBean.getUptime() should be based on HR timers rather than on the OS time Reviewed-by: dholmes, sla ! make/java/management/mapfile-vers ! makefiles/mapfiles/libmanagement/mapfile-vers ! src/share/classes/sun/management/RuntimeImpl.java ! src/share/classes/sun/management/VMManagement.java ! src/share/classes/sun/management/VMManagementImpl.java ! src/share/javavm/export/jmm.h ! src/share/native/sun/management/VMManagementImpl.c ! test/java/lang/management/RuntimeMXBean/UpTime.java Changeset: 2525b91ca5a6 Author: alanb Date: 2013-11-11 08:36 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/2525b91ca5a6 8028099: Many com/sun/management/OperatingSystemMXBean tests failing with CCE (win) Reviewed-by: mchung ! src/windows/classes/sun/management/OperatingSystemImpl.java Changeset: 7304b3195212 Author: weijun Date: 2013-11-11 16:54 +0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7304b3195212 8027991: InputStream should be closed in sun.security.tools.jarsigner.Main Reviewed-by: xuelei ! src/share/classes/sun/security/tools/jarsigner/Main.java + test/sun/security/tools/jarsigner/CertChainUnclosed.java Changeset: b48eded97dff Author: chegar Date: 2013-11-11 10:33 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/b48eded97dff 8028102: All test targets, jdk/test/Makefile, fail on Windows Reviewed-by: mduigou ! test/Makefile Changeset: 0e47462f03a0 Author: michaelm Date: 2013-11-11 16:06 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0e47462f03a0 8028060: test/java/net/URLPermission/nstest/lookup.sh failing (win) Reviewed-by: alanb ! test/java/net/URLPermission/nstest/LookupTest.java ! test/java/net/URLPermission/nstest/lookup.sh Changeset: 59ff7957c26f Author: lancea Date: 2013-11-11 14:22 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/59ff7957c26f 8028149: Clean-up javac -Xlint warnings in com.sun.rowset and com.sun.rowset.internal Reviewed-by: darcy ! src/share/classes/com/sun/rowset/CachedRowSetImpl.java ! src/share/classes/com/sun/rowset/internal/BaseRow.java Changeset: 0cacac7f5c37 Author: sla Date: 2013-11-08 18:16 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0cacac7f5c37 8014506: Test of Jdp feature Reviewed-by: sla Contributed-by: Alex Schenkman + test/sun/management/jdp/ClientConnection.java + test/sun/management/jdp/DynamicLauncher.java ! test/sun/management/jdp/JdpClient.java + test/sun/management/jdp/JdpDefaultsTest.java ! test/sun/management/jdp/JdpDoSomething.java + test/sun/management/jdp/JdpOffTest.java + test/sun/management/jdp/JdpOffTestCase.java + test/sun/management/jdp/JdpOnTestCase.java + test/sun/management/jdp/JdpSpecificAddressTest.java ! test/sun/management/jdp/JdpTest.sh + test/sun/management/jdp/JdpTestCase.java + test/sun/management/jdp/JdpTestUtil.java + test/sun/management/jdp/JdpTestUtilTest.java ! test/sun/management/jdp/JdpUnitTest.java + test/sun/management/jdp/PacketTest.java + test/sun/management/jdp/PortAlreadyInUseTest.java + test/sun/management/jdp/README Changeset: 8e8e423fa3dc Author: sherman Date: 2013-11-11 14:35 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8e8e423fa3dc 8026330: java.util.Base64 urlEncoder should omit padding Summary: to add Encoder.withoutPadding() Reviewed-by: alanb ! src/share/classes/java/util/Base64.java ! test/java/util/Base64/TestBase64.java Changeset: c04e46dbfea8 Author: rfield Date: 2013-11-11 16:14 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c04e46dbfea8 8027803: test/sun/reflect/AnonymousNewInstance/ManyNewInstanceAnonTest.java fails Summary: fix NPE in test infrastructure Reviewed-by: ksrini, jfranck, alanb, rfield Contributed-by: alan.bateman at oracle.com ! test/lib/testlibrary/ClassFileInstaller.java Changeset: 9fcb07df1c92 Author: vlivanov Date: 2013-11-09 04:21 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9fcb07df1c92 8027823: catchException combinator fails with 9 argument target Reviewed-by: jrose ! src/share/classes/java/lang/invoke/MethodHandleImpl.java + test/java/lang/invoke/MethodHandles/TestCatchException.java Changeset: 41dcb0c2e194 Author: egahlin Date: 2013-11-12 14:52 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/41dcb0c2e194 8027209: javax/management/monitor/ThreadPoolAccTest.java fails intermittently Reviewed-by: sla, jbachorik ! test/javax/management/monitor/ThreadPoolAccTest.java Changeset: f6012ca3bdd3 Author: smarks Date: 2013-11-12 16:59 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f6012ca3bdd3 8028027: serialver should emit declaration with the 'private' modifier Reviewed-by: darcy, mchung, alanb, chegar ! src/share/classes/sun/tools/serialver/SerialVer.java Changeset: 4cff9f59644f Author: egahlin Date: 2013-11-12 17:40 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/4cff9f59644f 6543856: MonitorVmStartTerminate.sh fails intermittently Reviewed-by: sla, dholmes ! test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.java ! test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh ! test/sun/jvmstat/testlibrary/JavaProcess.java Changeset: d9f827e4d20c Author: egahlin Date: 2013-11-12 18:12 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/d9f827e4d20c 6849945: VM Periodic Task Thread CPU time = -1ns in HotspotThreadMBean.getInternalThreadCpuTimes() Reviewed-by: sla ! test/sun/management/HotspotThreadMBean/GetInternalThreads.java Changeset: 0c414ac10700 Author: alanb Date: 2013-11-12 17:37 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/0c414ac10700 8028208: (aio) Assertion in clearPendingIoMap when closing at around time file lock is acquired immediately (win) Reviewed-by: chegar ! src/windows/classes/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java ! test/ProblemList.txt Changeset: 69432cb5bca2 Author: darcy Date: 2013-11-12 09:44 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/69432cb5bca2 8028229: Fix more raw types lint warning in core libraries Reviewed-by: chegar, forax, lancea, alanb, jfranck ! src/share/classes/java/io/ObjectOutputStream.java ! src/share/classes/java/io/ObjectStreamClass.java ! src/share/classes/java/lang/reflect/Proxy.java ! src/share/classes/java/nio/file/TempFileHelper.java ! src/share/classes/java/util/IdentityHashMap.java ! src/share/classes/java/util/logging/Logger.java ! src/share/classes/java/util/logging/Logging.java ! src/share/classes/sun/misc/Cleaner.java ! src/share/classes/sun/misc/ProxyGenerator.java ! src/share/classes/sun/rmi/rmic/Main.java ! src/share/classes/sun/rmi/server/LoaderHandler.java ! src/share/classes/sun/rmi/server/UnicastServerRef.java ! src/share/classes/sun/rmi/server/Util.java Changeset: ebe27e1a2e2d Author: rriggs Date: 2013-11-12 14:03 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ebe27e1a2e2d 8028014: Doclint warning/error cleanup in javax.management Summary: Improve generated html by fixing doclint warnings Reviewed-by: sla, jbachorik ! src/share/classes/javax/management/AttributeList.java ! src/share/classes/javax/management/BooleanValueExp.java ! src/share/classes/javax/management/Descriptor.java ! src/share/classes/javax/management/DescriptorKey.java ! src/share/classes/javax/management/ImmutableDescriptor.java ! src/share/classes/javax/management/JMX.java ! src/share/classes/javax/management/MBeanFeatureInfo.java ! src/share/classes/javax/management/MBeanInfo.java ! src/share/classes/javax/management/MBeanServer.java ! src/share/classes/javax/management/MBeanServerConnection.java ! src/share/classes/javax/management/MBeanServerNotification.java ! src/share/classes/javax/management/MXBean.java ! src/share/classes/javax/management/NumericValueExp.java ! src/share/classes/javax/management/ObjectName.java ! src/share/classes/javax/management/PersistentMBean.java ! src/share/classes/javax/management/Query.java ! src/share/classes/javax/management/loading/MLet.java ! src/share/classes/javax/management/loading/MLetParser.java ! src/share/classes/javax/management/modelmbean/DescriptorSupport.java ! src/share/classes/javax/management/modelmbean/ModelMBeanAttributeInfo.java ! src/share/classes/javax/management/modelmbean/ModelMBeanConstructorInfo.java ! src/share/classes/javax/management/modelmbean/ModelMBeanInfo.java ! src/share/classes/javax/management/modelmbean/ModelMBeanNotificationBroadcaster.java ! src/share/classes/javax/management/modelmbean/ModelMBeanNotificationInfo.java ! src/share/classes/javax/management/modelmbean/ModelMBeanOperationInfo.java ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/javax/management/monitor/Monitor.java ! src/share/classes/javax/management/openmbean/ArrayType.java ! src/share/classes/javax/management/openmbean/CompositeDataInvocationHandler.java ! src/share/classes/javax/management/openmbean/CompositeType.java ! src/share/classes/javax/management/openmbean/OpenMBeanAttributeInfoSupport.java ! src/share/classes/javax/management/openmbean/OpenMBeanParameterInfoSupport.java ! src/share/classes/javax/management/openmbean/SimpleType.java ! src/share/classes/javax/management/openmbean/TabularType.java ! src/share/classes/javax/management/relation/Relation.java ! src/share/classes/javax/management/relation/RelationService.java ! src/share/classes/javax/management/relation/RelationServiceMBean.java ! src/share/classes/javax/management/relation/RelationSupport.java ! src/share/classes/javax/management/remote/JMXConnectionNotification.java ! src/share/classes/javax/management/remote/JMXConnector.java ! src/share/classes/javax/management/remote/JMXConnectorProvider.java ! src/share/classes/javax/management/remote/rmi/RMIConnectionImpl.java ! src/share/classes/javax/management/remote/rmi/RMIConnector.java ! src/share/classes/javax/management/remote/rmi/RMIConnectorServer.java ! src/share/classes/javax/management/remote/rmi/RMIServerImpl.java Changeset: c4c84b5a3dfa Author: alanb Date: 2013-11-13 07:43 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/c4c84b5a3dfa 8028239: test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh with NoClassDefFoundError Reviewed-by: mchung, egahlin ! test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.sh Changeset: 1158d504e39e Author: xuelei Date: 2013-11-13 01:14 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1158d504e39e 8023147: Test DisabledShortRSAKeys.java intermittent failed Reviewed-by: mullan ! test/sun/security/ssl/javax/net/ssl/TLSv12/DisabledShortRSAKeys.java Changeset: 30a3aefc4084 Author: dfuchs Date: 2013-11-13 10:50 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/30a3aefc4084 8026952: Test java/util/logging/LogManager/RootLogger/setLevel/TestRootLoggerLevel.java has wrong @bug id Summary: Trivial: change @bug 8023163 into @bug 8026499 Reviewed-by: mchung, alanb ! test/java/util/logging/LogManager/RootLogger/setLevel/TestRootLoggerLevel.java Changeset: 680ef14a2cc0 Author: jbachorik Date: 2013-11-13 13:12 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/680ef14a2cc0 8004126: TEST_BUG: com/sun/jdi/BadHandshakeTest.java fails intermittently Reviewed-by: dholmes, ykantser ! test/com/sun/jdi/BadHandshakeTest.java Changeset: ddaa9a8acaed Author: egahlin Date: 2013-11-13 15:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ddaa9a8acaed 6959636: testcase failing on windows javax/management/loading/LibraryLoader/LibraryLoaderTest.java Reviewed-by: sla, jbachorik ! test/ProblemList.txt ! test/javax/management/loading/LibraryLoader/LibraryLoaderTest.java Changeset: a42a416351b8 Author: ykantser Date: 2013-11-13 11:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a42a416351b8 8015497: Take new fixes from hotspot/test/testlibrary to jdk/test/lib/testlibrary Reviewed-by: sla + test/lib/testlibrary/AssertsTest.java + test/lib/testlibrary/OutputAnalyzerReportingTest.java + test/lib/testlibrary/jdk/testlibrary/InputArguments.java ! test/lib/testlibrary/jdk/testlibrary/JcmdBase.java - test/lib/testlibrary/jdk/testlibrary/JdkFinder.java ! test/lib/testlibrary/jdk/testlibrary/OutputAnalyzer.java ! test/lib/testlibrary/jdk/testlibrary/ProcessTools.java ! test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java Changeset: 7c55fecfae65 Author: mchung Date: 2013-11-13 07:49 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/7c55fecfae65 8028234: Remove unused methods in sun.misc.JavaAWTAccess Reviewed-by: art, dfuchs, lancea ! src/share/classes/sun/awt/AppContext.java ! src/share/classes/sun/misc/JavaAWTAccess.java ! test/java/util/logging/TestAppletLoggerContext.java Changeset: 70f1bed5e7fd Author: chegar Date: 2013-11-13 16:44 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/70f1bed5e7fd 8022213: Intermittent test failures in java/net/URLClassLoader Reviewed-by: dxu, alanb ! test/java/net/URLClassLoader/closetest/CloseTest.java ! test/java/net/URLClassLoader/closetest/Common.java ! test/java/net/URLClassLoader/closetest/GetResourceAsStream.java + test/lib/testlibrary/jdk/testlibrary/FileUtils.java Changeset: a493871959c2 Author: alanb Date: 2013-11-13 16:52 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a493871959c2 8028270: Files.readSymbolicLink calls AccessController directly so security manager can't grant the permission Reviewed-by: mchung, martin, chegar ! src/solaris/classes/sun/nio/fs/UnixFileSystemProvider.java ! src/windows/classes/sun/nio/fs/WindowsFileSystemProvider.java ! test/java/nio/file/Files/CheckPermissions.java Changeset: 256b3395346b Author: egahlin Date: 2013-11-13 18:41 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/256b3395346b 6954510: TEST_BUG: Testcase failure com/sun/jdi/BreakpointWithFullGC.sh Reviewed-by: sla, sspitsyn ! test/com/sun/jdi/BreakpointWithFullGC.sh Changeset: e6333788b117 Author: darcy Date: 2013-11-13 11:06 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/e6333788b117 8028300: Fix raw type lint warnings in java.util.concurrent Reviewed-by: chegar, martin ! src/share/classes/java/util/concurrent/ForkJoinPool.java ! src/share/classes/java/util/concurrent/ScheduledThreadPoolExecutor.java Changeset: 9e37caf07ce0 Author: sherman Date: 2013-11-13 11:26 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/9e37caf07ce0 8027645: Pattern.split() with positive lookahead 6559590: Pattern.compile(".*").split("") returns incorrect result Summary: updated spec/impl for these two corner cases Reviewed-by: alanb, psandoz ! src/share/classes/java/lang/String.java ! src/share/classes/java/util/regex/Pattern.java ! test/java/lang/String/Split.java ! test/java/util/regex/RegExTest.java Changeset: ea91826bc2e9 Author: emc Date: 2013-11-13 15:48 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ea91826bc2e9 8026884: test for fix of JDK-8021398 does not have @bug tag 8028021: @since 1.8 missing for certain methods in java.lang.reflect.Method in generated api docs Summary: two documentation fixes Reviewed-by: darcy ! src/share/classes/java/lang/reflect/Executable.java ! test/java/lang/reflect/Parameter/GetAnnotatedTypeTest.java Changeset: 1d790a56de4e Author: sherman Date: 2013-11-13 22:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/1d790a56de4e 8028321: Fix for String.split() empty input sequence/JDK-6559590 triggers regression Summary: to undo the change for 6559590 Reviewed-by: darcy ! src/share/classes/java/lang/String.java ! src/share/classes/java/util/regex/Pattern.java ! test/java/lang/String/Split.java ! test/java/util/regex/RegExTest.java Changeset: ecf85f4aecf0 Author: alanb Date: 2013-11-14 10:40 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/ecf85f4aecf0 8028343: More ProblemList.txt updates (11/2013) Reviewed-by: chegar ! test/ProblemList.txt Changeset: 83c768d6cb93 Author: jfranck Date: 2013-11-14 12:17 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/83c768d6cb93 8028055: (reflect) invoking Method/Constructor in anonymous classes breaks with -Dsun.reflect.noInflation=true Reviewed-by: briangoetz ! src/share/classes/sun/reflect/ReflectionFactory.java ! src/share/classes/sun/reflect/misc/ReflectUtil.java ! test/java/lang/invoke/lambda/RepetitiveLambdaSerialization.java ! test/sun/reflect/AnonymousNewInstance/ManyNewInstanceAnonTest.java Changeset: 65f7b83ab477 Author: sla Date: 2013-11-14 19:31 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/65f7b83ab477 8027765: Make exit codes and stdout/stderr printing from jmap/jinfo/jstack/jps consistent Reviewed-by: alanb, allwin, sspitsyn, mgronlun ! src/share/classes/sun/tools/jinfo/JInfo.java ! src/share/classes/sun/tools/jmap/JMap.java ! src/share/classes/sun/tools/jps/Jps.java ! src/share/classes/sun/tools/jstack/JStack.java Changeset: 59f46f135584 Author: hseigel Date: 2013-11-14 10:44 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/59f46f135584 8023041: The CDS classlist needs to be updated for JDK 8 Summary: Generate new classlists from JDK 8 classes Reviewed-by: alanb, coleenp, hseigel Contributed-by: ekaterina.pavlova at oracle.com ! make/tools/sharing/classlist.linux ! make/tools/sharing/classlist.macosx ! make/tools/sharing/classlist.solaris ! make/tools/sharing/classlist.windows Changeset: f893901ba29c Author: coleenp Date: 2013-11-14 14:01 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/f893901ba29c Merge Changeset: 40d0ccd00f87 Author: xuelei Date: 2013-11-14 16:08 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/40d0ccd00f87 8014266: regression test AsyncSSLSocketClose.java time out. Reviewed-by: xuelei Contributed-by: Rajan Halade ! test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLSocketImpl/AsyncSSLSocketClose.java Changeset: fc4ac66aa657 Author: lana Date: 2013-11-15 07:14 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/fc4ac66aa657 Merge ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java ! src/share/classes/sun/awt/AppContext.java - src/share/classes/sun/management/OperatingSystemImpl.java - src/share/native/java/lang/ref/Finalizer.c - src/solaris/classes/com/sun/management/OSMBeanFactory.java - src/solaris/classes/com/sun/management/UnixOperatingSystem.java - src/solaris/native/com/sun/management/LinuxOperatingSystem.c - src/solaris/native/com/sun/management/MacosxOperatingSystem.c - src/solaris/native/com/sun/management/SolarisOperatingSystem.c - src/solaris/native/com/sun/management/UnixOperatingSystem_md.c - src/windows/classes/com/sun/management/OSMBeanFactory.java - src/windows/classes/com/sun/management/OperatingSystem.java - src/windows/native/com/sun/management/OperatingSystem_md.c ! test/ProblemList.txt - test/java/lang/management/ThreadMXBean/ThreadStateTest.java - test/java/lang/reflect/Method/DefaultMethodModeling.java - test/java/net/URLPermission/nstest/policy ! test/java/util/regex/RegExTest.java - test/lib/testlibrary/jdk/testlibrary/JdkFinder.java Changeset: 8bc258c021a3 Author: cl Date: 2013-11-21 09:23 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/8bc258c021a3 Added tag jdk8-b117 for changeset fc4ac66aa657 ! .hgtags From john.coomes at oracle.com Thu Nov 21 20:34:25 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:34:25 +0000 Subject: hg: hsx/hotspot-gc/nashorn: 13 new changesets Message-ID: <20131121203444.7F48462777@hg.openjdk.java.net> Changeset: ae5f2130c3b9 Author: sundar Date: 2013-11-01 19:54 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/ae5f2130c3b9 8027700: function redeclaration checks missing for declaration binding instantiation Reviewed-by: jlaskey, lagergren ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/MapCreator.java ! src/jdk/nashorn/internal/ir/Symbol.java ! src/jdk/nashorn/internal/runtime/Property.java ! src/jdk/nashorn/internal/runtime/ScriptObject.java ! test/script/basic/JDK-8015355.js + test/script/basic/JDK-8027700.js Changeset: 98bab0cdd7bf Author: attila Date: 2013-11-01 15:36 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/98bab0cdd7bf 8027236: Ensure ScriptObject and ConsString aren't visible to Java Reviewed-by: lagergren, sundar ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/internal/objects/Global.java ! src/jdk/nashorn/internal/objects/NativeObject.java ! src/jdk/nashorn/internal/runtime/ConsString.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/linker/Bootstrap.java ! src/jdk/nashorn/internal/runtime/linker/BoundDynamicMethodLinker.java ! src/jdk/nashorn/internal/runtime/linker/JavaSuperAdapterLinker.java + src/jdk/nashorn/internal/runtime/linker/NashornBeansLinker.java ! src/jdk/nashorn/internal/runtime/linker/NashornStaticClassLinker.java + test/script/basic/JDK-8027236.js + test/script/basic/JDK-8027236.js.EXPECTED + test/src/jdk/nashorn/api/javaaccess/ConsStringTest.java Changeset: 144861e24260 Author: sundar Date: 2013-11-04 09:29 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/144861e24260 Merge Changeset: dcedc753fd09 Author: sundar Date: 2013-11-04 18:52 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/dcedc753fd09 8027753: Support ScriptObject to JSObject, ScriptObjectMirror, Map, Bindings auto-conversion as well as explicit wrap, unwrap Reviewed-by: jlaskey, hannesw, attila ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/api/scripting/ScriptUtils.java ! src/jdk/nashorn/internal/runtime/linker/NashornLinker.java + test/script/basic/JDK-8027753.js + test/script/basic/JDK-8027753.js.EXPECTED ! test/src/jdk/nashorn/api/scripting/ScriptEngineTest.java ! test/src/jdk/nashorn/api/scripting/Window.java Changeset: b0d4ef6fb2db Author: sundar Date: 2013-11-05 09:13 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b0d4ef6fb2db Merge Changeset: bda654c6d59c Author: kshefov Date: 2013-11-05 13:09 +0400 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/bda654c6d59c 8027708: NASHORN TEST: Create Nashorn test that draws image step-by-step using JavaFX canvas. Reviewed-by: jlaskey, lagergren ! make/build.xml ! make/project.properties ! test/script/jfx.js ! test/script/jfx/flyingimage.js ! test/script/jfx/flyingimage/flyingimage.png ! test/script/jfx/flyingimage/golden/linux.png ! test/script/jfx/flyingimage/golden/macosx.png ! test/script/jfx/flyingimage/golden/windows.png ! test/script/jfx/kaleidoscope.js ! test/script/jfx/kaleidoscope/golden/linux.png ! test/script/jfx/kaleidoscope/golden/macosx.png ! test/script/jfx/kaleidoscope/golden/windows.png + test/script/jfx/spread.js + test/script/jfx/spread/golden/linux.png + test/script/jfx/spread/golden/macosx.png + test/script/jfx/spread/golden/windows.png Changeset: 2f07b4234451 Author: sundar Date: 2013-11-07 17:26 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/2f07b4234451 8027828: ClassCastException when converting return value of a Java method to boolean Reviewed-by: jlaskey, attila ! src/jdk/nashorn/api/scripting/ScriptObjectMirror.java ! src/jdk/nashorn/api/scripting/ScriptUtils.java ! src/jdk/nashorn/internal/runtime/JSType.java ! src/jdk/nashorn/internal/runtime/linker/NashornBottomLinker.java + test/script/basic/JDK-8027828.js + test/script/basic/JDK-8027828.js.EXPECTED + test/script/basic/convert.js + test/script/basic/convert.js.EXPECTED ! test/src/jdk/nashorn/api/scripting/ScriptObjectMirrorTest.java Changeset: 3b794f364c77 Author: sundar Date: 2013-11-07 18:11 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/3b794f364c77 Merge Changeset: d091499d67fc Author: lana Date: 2013-11-08 17:39 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/d091499d67fc Merge Changeset: e65a98146b94 Author: attila Date: 2013-11-11 14:25 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/e65a98146b94 8028020: Function parameter as last expression in comma in return value causes bad type calculation Reviewed-by: jlaskey, lagergren, sundar ! src/jdk/nashorn/internal/codegen/Attr.java ! src/jdk/nashorn/internal/codegen/CodeGenerator.java + test/script/basic/JDK-8028020.js + test/script/basic/JDK-8028020.js.EXPECTED Changeset: 2f0f8d1d0753 Author: sundar Date: 2013-11-12 10:23 +0530 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/2f0f8d1d0753 Merge Changeset: 1db3d4e4d189 Author: lana Date: 2013-11-15 07:16 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/1db3d4e4d189 Merge Changeset: 8d014b039b44 Author: cl Date: 2013-11-21 09:23 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/8d014b039b44 Added tag jdk8-b117 for changeset 1db3d4e4d189 ! .hgtags From christos.kotselidis at oracle.com Thu Nov 21 20:46:15 2013 From: christos.kotselidis at oracle.com (Christos Kotselidis) Date: Thu, 21 Nov 2013 21:46:15 +0100 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: <528E517E.3020704@oracle.com> Message-ID: Thanks for the info. Yes, I cc'ed initially the compiler team but I guess the original email is pending for verification. Regards Christos On 11/21/13 7:31 PM, "Vladimir Kozlov" wrote: >CC to compiler because it is about compiled nmethods and their state >change. So it is interesting for us. > >Note, usually such methods are inlinied (accessor methods) and big >methods have stack bang code at the beginning. Here is criteria used to >generate stack bang: > >bool Compile::need_stack_bang(int frame_size_in_bytes) const { > // Determine if we need to generate a stack overflow check. > // Do it if the method is not a stub function and > // has java calls or has frame size > vm_page_size/8. > return (UseStackBanging && stub_function() == NULL && > (has_java_calls() || frame_size_in_bytes > >os::vm_page_size()>>3)); >} > >In your case stack bang is not generated that is why you have embedded >oop at the beginning of the code. >We can mark such nmethods so it will be easier to see such nmethod when >we need unregister them. > >And thank you for catching both problems. > >Thanks, >Vladimir > >On 11/21/13 5:54 AM, Thomas Schatzl wrote: >> Hi, >> >> On Thu, 2013-11-21 at 14:42 +0100, Christos Kotselidis wrote: >>> On 11/21/13 2:34 PM, "Thomas Schatzl" >>>wrote: >>> >>>> Hi, >>>> >>>> On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: >>>>> Hi, >>>>> >>>>> I came across the following scenario, I already discussed with Thomas >>>>> Schatzl, that I would like to share with you. >>>>> There is a method: >>>>> >>>>> private static final HotSpotGraalRuntime instance = new >>>>> HotSpotGraalRuntime(); >>>>> >>>>> public static HotSpotGraalRuntime runtime() { >>>>> return instance; >>>>> } >>>> >>>>> The instance field is a constant oop in the code and the method is >>>>> installed. >>>>> At some stage there is a GC with post verification >>>>> (including G1VerifyHeapRegionCodeRoots) that passes. >>>>> Before the next GC cycle and during the mutation cycle, another >>>>>method >>>>> is being installed which causes the eviction of our method. >>>>> Consequently our method is being made not_entrant and it is being >>>>> patched with a jmp instruction at its verified entry point >>>>> (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the >>>>>oop >>>>> to be overwritten by the jmp instruction. Furthermore, that oop was >>>>> the only oop that was responsible for attaching this method to its >>>>> correspondent HeapRegion. >>>>> >>>>> The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot >>>>> verification starts (nmethod.cpp::oops_do). There is a logic there >>>>> (which I also believe it may be buggy as I will explain later) that >>>>> checks whether the method is not_entrant. If the method is >>>>>not_entrant >>>>> then the logic correctly assumes that the method has been already >>>>>been >>>>> patched and therefore starts scanning the relocs of the method in +5 >>>>> bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This >>>>> results in not scanning the single oop that was attaching this >>>>> specific method to its heap region. The verification then correctly >>>>> asserts by saying that "there is a method attached to this specific >>>>> heap region with no oops pointing into it". >>>> >>>> Thanks for finding this - I already filed a bug for that >>>> (https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if it >>>> matches your investigation. >>>>> >>>>> Concerning the second bug in the method::oops_do logic, here is the >>>>> code for manipulating the reloc starting address after a method has >>>>> been patched: >>>> >>>>> // If the method is not entrant or zombie then a JMP is plastered >>>>>over >>>>> // the >>>>> // first few bytes. If an oop in the old code was there, that oop >>>>> // should not get GC'd. Skip the first few bytes of oops on >>>>> // not-entrant methods. >>>>> address low_boundary = verified_entry_point(); >>>>> if (is_not_entrant()) { >>>>> low_boundary += NativeJump::instruction_size; >>>>> // %%% Note: On SPARC we patch only a 4-byte trap, not a full >>>>> NativeJump. >>>>> // (See comment above.) >>>>> } >>>>> >>>>> The code above accounts only for the "is not entrant" scenario and >>>>>not >>>>> with the "is zombie" scenario. >>>> >>>> nmethod::do_oops will not be called for zombie methods in the default >>>> case, so it does not matter. I.e. the default overload of >>>> oops_do(Closure* cl, bool zombie) is oops_do(cl, false); >>> >>> When unregistering a method we call the oops_do allowing zombie methods >>> (G1CollectedHeap::unregister_nmethod). That was causing a problem in my >>> case and after adding "|| is_zombie()", it got fixed. >> >> I think you are right, we will need to fix that too as the oop map is >> not changed after overwriting the oop in the first few bytes. >> >> Thomas >> >> From tao.mao at oracle.com Thu Nov 21 22:30:15 2013 From: tao.mao at oracle.com (Tao Mao) Date: Thu, 21 Nov 2013 14:30:15 -0800 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <5286DCDB.9070904@oracle.com> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> <5286DCDB.9070904@oracle.com> Message-ID: <528E8977.1060202@oracle.com> Hi, New webrev uploaded http://cr.openjdk.java.net/~tamao/8027915/webrev.02/ Note that FlagsValue.java file was first introduced in JDK-6521376 (http://cr.openjdk.java.net/~tamao/6521376/webrev.05/). It was reviewed but could not be pushed due to the current development phase. and, getFlagLongValue() is not used here. Thanks. Tao On 11/15/13 6:47 PM, Tao Mao wrote: > Hi all, > > JDK8 cr. Need quick reviews to check it in. Thank you. > > new webrev: > http://cr.openjdk.java.net/~tamao/8027915/webrev.01/ > > Please see comments inline. > > Thanks. > Tao > > On 11/13/13 2:58 AM, Thomas Schatzl wrote: >> Hi Tao, >> >> thanks for picking this up. >> >> On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >>> Hi all, >>> >>> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >>> sparcv9 >>> https://bugs.openjdk.java.net/browse/JDK-8027915 >>> >>> webrev: >>> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ >> Some notes: >> >> + // bug 8027915& 8027960: compensate for some cases of large pages >> >> I do not think it is a good idea to mention bug numbers in the tests: >> we can always get this information from the repository. > Removed. >> >> Also I think the problem is not large pages, but how the collectors >> align the spaces and generations. >> >> + if (gcflag.equals("-XX:+UseParallelOldGC")) { >> >> I think it would be better to check for general use of parallel GC >> instead of only the parallel old implementation - I think both do the >> same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when >> invoking the VM. I.e. let the getMinInitialMaxHeap() method return the >> collector type used by parsing the output of -XX:+PrintFlagsFinal (which >> needs to be added). > Done. Look for "parallelGC". > >> I am not sure if that is needed though, see below. >> >> + int numberOfSpaces = 4; >> + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * >> v.minAlignment); >> >> I believe this is not correct in the general case. The formula used in >> the VM (for generational collectors) is: >> >> expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) >> >> where >> >> smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); >> smallestPossibleHeapSize = align_size_up(smallest_new_size + // >> probably better named smallest_young_size >> >> align_size_up(_space_alignment, _gen_alignment), // old gen >> _heap_alignment); // >> align for heap size >> >> The change needs to get the space alignment for that from the VM for >> this. > Quoted from my last response: > > " > I know the internal alignment mechanism in VM code here. But, as > philosophy of testing, I don't like the idea to match up exactly every > line of code "in the box", because the code may be wrong in one way or > another especially when changes around it are introduced later. > > Rather, a test should test what it believes VM needs to do. With that, > it may catch other potential bugs in future. So, I'd rather keep the > test simple and non-intrusive (into the code). > " >> >> Recently the "minAlignment" and "maxAlignment" members of >> CollectorPolicy changed to spaceAlignment and heapAlignment. Is it >> possible to adapt the naming in the test? This seems to be an >> oversight in reviews for the earlier patch that changed that in the >> Hotspot code. > Changed in whitebox.cpp. >> >> After introducing all this to the test, there is no need for special >> casing parallel gc too. In case of G1 it should be sufficient to set >> space alignment and gen alignment to the same value. >> >>> changeset: >>> Modified the test code so that it can deal with the case of using >>> large pages. >>> >>> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >>> mentioned in the CR is dealt with in a new CR JDK-8028254. >> You are correct, it is a slightly different but similar issue: I think >> min and initial heap size are now (or always have been, did not look) >> aligned to the heap alignment (formerly maxAlignment). >> >> The test now aligns the expected min/initial heap sizes to minAlignment >> only, which is wrong. >> >> Thanks, >> Thomas >> >> >> From john.coomes at oracle.com Thu Nov 21 20:33:00 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 21 Nov 2013 20:33:00 +0000 Subject: hg: hsx/hotspot-gc/langtools: 18 new changesets Message-ID: <20131121203407.50FC962775@hg.openjdk.java.net> Changeset: cc80c03c41e4 Author: vromero Date: 2013-11-01 19:08 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/cc80c03c41e4 8027660: javac crash while creating LVT entry for a local variable defined in an inner block Reviewed-by: jjg Contributed-by: vicente.romero at oracle.com, jan.lahoda at oracle.com ! src/share/classes/com/sun/tools/javac/jvm/Code.java ! test/tools/javac/flow/LVTHarness.java + test/tools/javac/flow/tests/TestCaseLocalInInnerBlock.java Changeset: 8b4e1421a9b7 Author: jlahoda Date: 2013-11-01 21:43 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/8b4e1421a9b7 8027310: Annotation Processor crashes with NPE Summary: JCAnnotation.attribute is null when annotation type is unavailable Reviewed-by: jjg, jfranck ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/processing/errors/CrashOnNonExistingAnnotation/Processor.java + test/tools/javac/processing/errors/CrashOnNonExistingAnnotation/Source.java Changeset: 106b8fa32d71 Author: cl Date: 2013-11-04 17:38 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/106b8fa32d71 8025844: Need test to provide coverage for new DocumentationTool.Location enum Reviewed-by: jjg + test/tools/javadoc/api/basic/DocumentationToolLocationTest.java Changeset: 658861d1b36e Author: cl Date: 2013-11-04 18:04 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/658861d1b36e 8027411: javap tonga tests cleanup: write a java program to test invalid options -h and -b Reviewed-by: jjg + test/tools/javap/InvalidOptions.java Changeset: 126dc007ba3f Author: cl Date: 2013-11-04 18:51 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/126dc007ba3f 8027530: javap tonga tests cleanup: test -public, -protected, -package, -private options Reviewed-by: jjg + test/tools/javap/AccessModifiers.java Changeset: 75c8cde12ab6 Author: jlahoda Date: 2013-11-06 17:48 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/75c8cde12ab6 8027281: Incorrect invokespecial generated for JCK lang EXPR/expr636/expr63602m* tests Summary: When invoking interface default method via a superclass, use the direct superclass in the reference. Reviewed-by: vromero, dlsmith, jjg ! src/share/classes/com/sun/tools/javac/comp/Lower.java + test/tools/javac/defaultMethods/super/TestDirectSuperInterfaceInvoke.java Changeset: e39bd9401ea5 Author: darcy Date: 2013-11-07 20:11 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/e39bd9401ea5 8027730: Fix release-8 type visitors to support intersection types Reviewed-by: jjg, jlahoda, sogoel ! src/share/classes/javax/lang/model/util/SimpleTypeVisitor8.java ! src/share/classes/javax/lang/model/util/TypeKindVisitor8.java + test/tools/javac/processing/model/util/TestIntersectionTypeVisitors.java Changeset: 21294feaf311 Author: lana Date: 2013-11-08 17:39 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/21294feaf311 Merge Changeset: 6e0f31d61e56 Author: jlahoda Date: 2013-11-09 15:24 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/6e0f31d61e56 8027142: Invokedynamic instructions don't get line number table entries Summary: When emitting invokedynamic instruction, write pendingStatPos, if set, into the LineNumberTable. Invokedynamic itself does not set the pendingStatPos. Reviewed-by: jjg, jrose, ksrini, vromero ! src/share/classes/com/sun/tools/javac/jvm/Code.java ! test/tools/javac/T8019486/WrongLNTForLambdaTest.java ! test/tools/javac/lambda/TestInvokeDynamic.java Changeset: 4788eb38cac5 Author: emc Date: 2013-11-11 09:47 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/4788eb38cac5 8027439: Compile-time error in the case of ((Integer[] & Serializable)new Integer[1]).getClass() 8027253: javac illegally accepts array as bound Summary: backing out change allowing arrays in intersection types Reviewed-by: vromero ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties - test/tools/javac/ArraysInIntersections.java - test/tools/javac/InferArraysInIntersections.java - test/tools/javac/diags/examples/InterfaceOrArrayExpected.java ! test/tools/javac/generics/typevars/6680106/T6680106.out Changeset: f3ca12d680f3 Author: jfranck Date: 2013-11-11 17:26 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/f3ca12d680f3 8027375: javac asserts on nested erroneous annotations Summary: make sure JCAnnotation trees have type != null before annotation processing Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Annotate.java + test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.java + test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.out Changeset: f90d88913c5f Author: sogoel Date: 2013-11-13 16:36 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/f90d88913c5f 8025113: Convert 7 tools TryWithResources tests to jtreg format Reviewed-by: darcy, jjg + test/tools/javac/TryWithResources/ResDeclOutsideTry.java + test/tools/javac/TryWithResources/ResDeclOutsideTry.out + test/tools/javac/TryWithResources/ResInNestedExpr.java + test/tools/javac/TryWithResources/ResourceNameConflict.java + test/tools/javac/TryWithResources/ResourceNameConflict.out + test/tools/javac/TryWithResources/ResourceRedecl.java + test/tools/javac/TryWithResources/ResourceRedecl.out + test/tools/javac/TryWithResources/ResourceShadow.java + test/tools/javac/TryWithResources/TestTwr09.java Changeset: 24eaf41a3974 Author: emc Date: 2013-11-14 12:32 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/24eaf41a3974 8028282: Remove @ignore from test langtools/test/tools/javac/T7042623.java Summary: Remove @ignore from test Reviewed-by: jjg ! test/tools/javac/T7042623.java Changeset: e79d6425f1c4 Author: vromero Date: 2013-11-14 19:28 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/e79d6425f1c4 8026963: type annotations code crashes for code with erroneous trees Reviewed-by: jjg, jlahoda ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java + test/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.out Changeset: 5ae66d372d57 Author: bpatel Date: 2013-11-14 13:47 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/5ae66d372d57 8025524: javadoc does not correctly locate constructors for nested classes Reviewed-by: jjg ! src/share/classes/com/sun/tools/javadoc/ConstructorDocImpl.java ! test/com/sun/javadoc/testAnchorNames/TestAnchorNames.java + test/com/sun/javadoc/testConstructors/TestConstructors.java + test/com/sun/javadoc/testConstructors/pkg1/Outer.java ! test/tools/javadoc/generics/genericInnerAndOuter/expected.out Changeset: d4cbb671de1c Author: vromero Date: 2013-11-15 11:08 +0000 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/d4cbb671de1c 8026231: Look at 'static' flag when checking method references Reviewed-by: jjg, dlsmith ! src/share/classes/com/sun/tools/javac/code/Kinds.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! test/tools/javac/lambda/MethodReference22.java ! test/tools/javac/lambda/MethodReference22.out ! test/tools/javac/lambda/MethodReference51.java ! test/tools/javac/lambda/MethodReference68.out + test/tools/javac/lambda/MethodReference73.java + test/tools/javac/lambda/MethodReference73.out ! test/tools/javac/lambda/TargetType60.java ! test/tools/javac/lambda/TargetType60.out Changeset: 19de039a03a6 Author: lana Date: 2013-11-15 07:15 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/19de039a03a6 Merge - test/tools/javac/ArraysInIntersections.java - test/tools/javac/InferArraysInIntersections.java - test/tools/javac/diags/examples/InterfaceOrArrayExpected.java Changeset: 4fd6a7ff8c06 Author: cl Date: 2013-11-21 09:23 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/4fd6a7ff8c06 Added tag jdk8-b117 for changeset 19de039a03a6 ! .hgtags From igor.veresov at oracle.com Fri Nov 22 00:35:57 2013 From: igor.veresov at oracle.com (Igor Veresov) Date: Thu, 21 Nov 2013 16:35:57 -0800 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: References: Message-ID: <9983CCF3-3DE6-4D2F-935C-8F80E7B8CE06@oracle.com> Christos, This must be a Graal-emitted method that fails. C1 & C2 take special care to emit enough bytes in the prologue to make space for the jump instruction of the patch. Graal should do the same. The method in the example: static final Object someobject = new Integer(0xdeadbabe); final static Object getSomeObject() { return someobject; } Looks like this with C2: 0x000000011185d440: sub $0x18,%rsp 0x000000011185d447: mov %rbp,0x10(%rsp) ;*synchronization entry ; - X::getSomeObject at -1 (line 6) 0x000000011185d44c: movabs $0x74006b240,%rax ; {oop(a 'java/lang/Integer' = -559039810)} 0x000000011185d456: add $0x10,%rsp 0x000000011185d45a: pop %rbp 0x000000011185d45b: test %eax,-0x246a461(%rip) # 0x000000010f3f3000 ; {poll_return} 0x000000011185d461: retq Notice a long version of the sub instruction allocating the frame, that's on purpose, to make sure that jump will fit. See MacroAssembler::verified_entry() in macroAssembler_x86.cpp. C1, respectively generates either a stack bang (always!): 0x0000000110fa5e20: mov %eax,-0x16000(%rsp) 0x0000000110fa5e27: push %rbp 0x0000000110fa5e28: sub $0x30,%rsp ;*getstatic someobject ; - X::getSomeObject at 0 (line 6) ;; block B0 [0, 3] 0x0000000110fa5e2c: movabs $0x74006b428,%rax ; {oop(a 'java/lang/Integer' = -559039810)} 0x0000000110fa5e36: add $0x30,%rsp 0x0000000110fa5e3a: pop %rbp 0x0000000110fa5e3b: test %eax,-0x262fd41(%rip) # 0x000000010e976100 ; {poll_return} 0x0000000110fa5e41: retq Or if you turn stack bangs off it puts a 5-byte nop (to accommodate for the jump): 0x00000001080a1f20: nopl 0x0(%rax,%rax,1) 0x00000001080a1f25: push %rbp 0x00000001080a1f26: sub $0x30,%rsp ;*getstatic someobject ; - X::getSomeObject at 0 (line 6) ;; block B0 [0, 3] 0x00000001080a1f2a: movabs $0x74006b428,%rax ; {oop(a 'java/lang/Integer' = -559039810)} 0x00000001080a1f34: add $0x30,%rsp 0x00000001080a1f38: pop %rbp 0x00000001080a1f39: test %eax,-0x24dde3f(%rip) # 0x0000000105bc4100 ; {poll_return} 0x00000001080a1f3f: retq igor On Nov 21, 2013, at 12:46 PM, Christos Kotselidis wrote: > Thanks for the info. Yes, I cc'ed initially the compiler team but I guess > the original email is pending for verification. > > Regards > > Christos > > On 11/21/13 7:31 PM, "Vladimir Kozlov" wrote: > >> CC to compiler because it is about compiled nmethods and their state >> change. So it is interesting for us. >> >> Note, usually such methods are inlinied (accessor methods) and big >> methods have stack bang code at the beginning. Here is criteria used to >> generate stack bang: >> >> bool Compile::need_stack_bang(int frame_size_in_bytes) const { >> // Determine if we need to generate a stack overflow check. >> // Do it if the method is not a stub function and >> // has java calls or has frame size > vm_page_size/8. >> return (UseStackBanging && stub_function() == NULL && >> (has_java_calls() || frame_size_in_bytes > >> os::vm_page_size()>>3)); >> } >> >> In your case stack bang is not generated that is why you have embedded >> oop at the beginning of the code. >> We can mark such nmethods so it will be easier to see such nmethod when >> we need unregister them. >> >> And thank you for catching both problems. >> >> Thanks, >> Vladimir >> >> On 11/21/13 5:54 AM, Thomas Schatzl wrote: >>> Hi, >>> >>> On Thu, 2013-11-21 at 14:42 +0100, Christos Kotselidis wrote: >>>> On 11/21/13 2:34 PM, "Thomas Schatzl" >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: >>>>>> Hi, >>>>>> >>>>>> I came across the following scenario, I already discussed with Thomas >>>>>> Schatzl, that I would like to share with you. >>>>>> There is a method: >>>>>> >>>>>> private static final HotSpotGraalRuntime instance = new >>>>>> HotSpotGraalRuntime(); >>>>>> >>>>>> public static HotSpotGraalRuntime runtime() { >>>>>> return instance; >>>>>> } >>>>> >>>>>> The instance field is a constant oop in the code and the method is >>>>>> installed. >>>>>> At some stage there is a GC with post verification >>>>>> (including G1VerifyHeapRegionCodeRoots) that passes. >>>>>> Before the next GC cycle and during the mutation cycle, another >>>>>> method >>>>>> is being installed which causes the eviction of our method. >>>>>> Consequently our method is being made not_entrant and it is being >>>>>> patched with a jmp instruction at its verified entry point >>>>>> (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the >>>>>> oop >>>>>> to be overwritten by the jmp instruction. Furthermore, that oop was >>>>>> the only oop that was responsible for attaching this method to its >>>>>> correspondent HeapRegion. >>>>>> >>>>>> The next GC cycle (Pre-verification) comes and the HeapRegionCodeRoot >>>>>> verification starts (nmethod.cpp::oops_do). There is a logic there >>>>>> (which I also believe it may be buggy as I will explain later) that >>>>>> checks whether the method is not_entrant. If the method is >>>>>> not_entrant >>>>>> then the logic correctly assumes that the method has been already >>>>>> been >>>>>> patched and therefore starts scanning the relocs of the method in +5 >>>>>> bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This >>>>>> results in not scanning the single oop that was attaching this >>>>>> specific method to its heap region. The verification then correctly >>>>>> asserts by saying that "there is a method attached to this specific >>>>>> heap region with no oops pointing into it". >>>>> >>>>> Thanks for finding this - I already filed a bug for that >>>>> (https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if it >>>>> matches your investigation. >>>>>> >>>>>> Concerning the second bug in the method::oops_do logic, here is the >>>>>> code for manipulating the reloc starting address after a method has >>>>>> been patched: >>>>> >>>>>> // If the method is not entrant or zombie then a JMP is plastered >>>>>> over >>>>>> // the >>>>>> // first few bytes. If an oop in the old code was there, that oop >>>>>> // should not get GC'd. Skip the first few bytes of oops on >>>>>> // not-entrant methods. >>>>>> address low_boundary = verified_entry_point(); >>>>>> if (is_not_entrant()) { >>>>>> low_boundary += NativeJump::instruction_size; >>>>>> // %%% Note: On SPARC we patch only a 4-byte trap, not a full >>>>>> NativeJump. >>>>>> // (See comment above.) >>>>>> } >>>>>> >>>>>> The code above accounts only for the "is not entrant" scenario and >>>>>> not >>>>>> with the "is zombie" scenario. >>>>> >>>>> nmethod::do_oops will not be called for zombie methods in the default >>>>> case, so it does not matter. I.e. the default overload of >>>>> oops_do(Closure* cl, bool zombie) is oops_do(cl, false); >>>> >>>> When unregistering a method we call the oops_do allowing zombie methods >>>> (G1CollectedHeap::unregister_nmethod). That was causing a problem in my >>>> case and after adding "|| is_zombie()", it got fixed. >>> >>> I think you are right, we will need to fix that too as the oop map is >>> not changed after overwriting the oop in the first few bytes. >>> >>> Thomas >>> >>> > > From christos.kotselidis at oracle.com Fri Nov 22 00:45:35 2013 From: christos.kotselidis at oracle.com (Christos Kotselidis) Date: Fri, 22 Nov 2013 01:45:35 +0100 Subject: Possible bug in nmethod reloc verification/scanning in G1 In-Reply-To: <9983CCF3-3DE6-4D2F-935C-8F80E7B8CE06@oracle.com> Message-ID: Hi Igor, Correct, this is a Graal emitted method which I am pretty sure we do not guarantee the 5 byte invariant for the patching? Thanks for the info. Christos On 11/22/13 1:35 AM, "Igor Veresov" wrote: >Christos, > >This must be a Graal-emitted method that fails. C1 & C2 take special care >to emit enough bytes in the prologue to make space for the jump >instruction of the patch. Graal should do the same. > >The method in the example: > >static final Object someobject = new Integer(0xdeadbabe); > final static Object getSomeObject() { > return someobject; > } > >Looks like this with C2: > 0x000000011185d440: sub $0x18,%rsp > 0x000000011185d447: mov %rbp,0x10(%rsp) ;*synchronization entry > ; - X::getSomeObject at -1 >(line 6) > > 0x000000011185d44c: movabs $0x74006b240,%rax ; {oop(a >'java/lang/Integer' = -559039810)} > 0x000000011185d456: add $0x10,%rsp > 0x000000011185d45a: pop %rbp > 0x000000011185d45b: test %eax,-0x246a461(%rip) # 0x000000010f3f3000 > ; {poll_return} > 0x000000011185d461: retq > >Notice a long version of the sub instruction allocating the frame, that's >on purpose, to make sure that jump will fit. See >MacroAssembler::verified_entry() in macroAssembler_x86.cpp. > >C1, respectively generates either a stack bang (always!): > 0x0000000110fa5e20: mov %eax,-0x16000(%rsp) > 0x0000000110fa5e27: push %rbp > 0x0000000110fa5e28: sub $0x30,%rsp ;*getstatic someobject > ; - X::getSomeObject at 0 >(line 6) > > ;; block B0 [0, 3] > > 0x0000000110fa5e2c: movabs $0x74006b428,%rax ; {oop(a >'java/lang/Integer' = -559039810)} > 0x0000000110fa5e36: add $0x30,%rsp > 0x0000000110fa5e3a: pop %rbp > 0x0000000110fa5e3b: test %eax,-0x262fd41(%rip) # 0x000000010e976100 > ; {poll_return} > 0x0000000110fa5e41: retq > >Or if you turn stack bangs off it puts a 5-byte nop (to accommodate for >the jump): > > 0x00000001080a1f20: nopl 0x0(%rax,%rax,1) > 0x00000001080a1f25: push %rbp > 0x00000001080a1f26: sub $0x30,%rsp ;*getstatic someobject > ; - X::getSomeObject at 0 >(line 6) > > ;; block B0 [0, 3] > > 0x00000001080a1f2a: movabs $0x74006b428,%rax ; {oop(a >'java/lang/Integer' = -559039810)} > 0x00000001080a1f34: add $0x30,%rsp > 0x00000001080a1f38: pop %rbp > 0x00000001080a1f39: test %eax,-0x24dde3f(%rip) # 0x0000000105bc4100 > ; {poll_return} > 0x00000001080a1f3f: retq > > >igor > >On Nov 21, 2013, at 12:46 PM, Christos Kotselidis > wrote: > >> Thanks for the info. Yes, I cc'ed initially the compiler team but I >>guess >> the original email is pending for verification. >> >> Regards >> >> Christos >> >> On 11/21/13 7:31 PM, "Vladimir Kozlov" >>wrote: >> >>> CC to compiler because it is about compiled nmethods and their state >>> change. So it is interesting for us. >>> >>> Note, usually such methods are inlinied (accessor methods) and big >>> methods have stack bang code at the beginning. Here is criteria used to >>> generate stack bang: >>> >>> bool Compile::need_stack_bang(int frame_size_in_bytes) const { >>> // Determine if we need to generate a stack overflow check. >>> // Do it if the method is not a stub function and >>> // has java calls or has frame size > vm_page_size/8. >>> return (UseStackBanging && stub_function() == NULL && >>> (has_java_calls() || frame_size_in_bytes > >>> os::vm_page_size()>>3)); >>> } >>> >>> In your case stack bang is not generated that is why you have embedded >>> oop at the beginning of the code. >>> We can mark such nmethods so it will be easier to see such nmethod when >>> we need unregister them. >>> >>> And thank you for catching both problems. >>> >>> Thanks, >>> Vladimir >>> >>> On 11/21/13 5:54 AM, Thomas Schatzl wrote: >>>> Hi, >>>> >>>> On Thu, 2013-11-21 at 14:42 +0100, Christos Kotselidis wrote: >>>>> On 11/21/13 2:34 PM, "Thomas Schatzl" >>>>> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> On Thu, 2013-11-21 at 12:40 +0100, Christos Kotselidis wrote: >>>>>>> Hi, >>>>>>> >>>>>>> I came across the following scenario, I already discussed with >>>>>>>Thomas >>>>>>> Schatzl, that I would like to share with you. >>>>>>> There is a method: >>>>>>> >>>>>>> private static final HotSpotGraalRuntime instance = new >>>>>>> HotSpotGraalRuntime(); >>>>>>> >>>>>>> public static HotSpotGraalRuntime runtime() { >>>>>>> return instance; >>>>>>> } >>>>>> >>>>>>> The instance field is a constant oop in the code and the method is >>>>>>> installed. >>>>>>> At some stage there is a GC with post verification >>>>>>> (including G1VerifyHeapRegionCodeRoots) that passes. >>>>>>> Before the next GC cycle and during the mutation cycle, another >>>>>>> method >>>>>>> is being installed which causes the eviction of our method. >>>>>>> Consequently our method is being made not_entrant and it is being >>>>>>> patched with a jmp instruction at its verified entry point >>>>>>> (nmethod.cpp::make_not_entrant_or_zombie). The patching causes the >>>>>>> oop >>>>>>> to be overwritten by the jmp instruction. Furthermore, that oop was >>>>>>> the only oop that was responsible for attaching this method to its >>>>>>> correspondent HeapRegion. >>>>>>> >>>>>>> The next GC cycle (Pre-verification) comes and the >>>>>>>HeapRegionCodeRoot >>>>>>> verification starts (nmethod.cpp::oops_do). There is a logic there >>>>>>> (which I also believe it may be buggy as I will explain later) that >>>>>>> checks whether the method is not_entrant. If the method is >>>>>>> not_entrant >>>>>>> then the logic correctly assumes that the method has been already >>>>>>> been >>>>>>> patched and therefore starts scanning the relocs of the method in >>>>>>>+5 >>>>>>> bytes (for x86)/+4 bytes (for SPARC) (as the comment states). This >>>>>>> results in not scanning the single oop that was attaching this >>>>>>> specific method to its heap region. The verification then correctly >>>>>>> asserts by saying that "there is a method attached to this specific >>>>>>> heap region with no oops pointing into it". >>>>>> >>>>>> Thanks for finding this - I already filed a bug for that >>>>>> (https://bugs.openjdk.java.net/browse/JDK-8028736). Please check if >>>>>>it >>>>>> matches your investigation. >>>>>>> >>>>>>> Concerning the second bug in the method::oops_do logic, here is the >>>>>>> code for manipulating the reloc starting address after a method has >>>>>>> been patched: >>>>>> >>>>>>> // If the method is not entrant or zombie then a JMP is plastered >>>>>>> over >>>>>>> // the >>>>>>> // first few bytes. If an oop in the old code was there, that oop >>>>>>> // should not get GC'd. Skip the first few bytes of oops on >>>>>>> // not-entrant methods. >>>>>>> address low_boundary = verified_entry_point(); >>>>>>> if (is_not_entrant()) { >>>>>>> low_boundary += NativeJump::instruction_size; >>>>>>> // %%% Note: On SPARC we patch only a 4-byte trap, not a full >>>>>>> NativeJump. >>>>>>> // (See comment above.) >>>>>>> } >>>>>>> >>>>>>> The code above accounts only for the "is not entrant" scenario and >>>>>>> not >>>>>>> with the "is zombie" scenario. >>>>>> >>>>>> nmethod::do_oops will not be called for zombie methods in the >>>>>>default >>>>>> case, so it does not matter. I.e. the default overload of >>>>>> oops_do(Closure* cl, bool zombie) is oops_do(cl, false); >>>>> >>>>> When unregistering a method we call the oops_do allowing zombie >>>>>methods >>>>> (G1CollectedHeap::unregister_nmethod). That was causing a problem in >>>>>my >>>>> case and after adding "|| is_zombie()", it got fixed. >>>> >>>> I think you are right, we will need to fix that too as the oop map is >>>> not changed after overwriting the oop in the first few bytes. >>>> >>>> Thomas >>>> >>>> >> >> > From bengt.rutisson at oracle.com Fri Nov 22 12:33:34 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Fri, 22 Nov 2013 13:33:34 +0100 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: References: <528DDC56.5090109@oracle.com> Message-ID: <528F4F1E.7060309@oracle.com> Hi Jungwoo, On 2013-11-21 18:37, Jungwoo Ha wrote: > > > On Thu, Nov 21, 2013 at 2:11 AM, Bengt Rutisson > > wrote: > > > Hi Jungwoo, > > Thanks for contributing this change. Nice work. > > First a couple general question. > > Why did you only make this change for CMS? Shouldn't the other > collectors benefit from this as well? You said you tried the other > GCs as well. What were the results for them? > > > The change will affect all collectors because it is setting > ParalellGCThreads and ConcGCThreads. > I mostly tested on CMS for convenience of evaluation and needs. Right. Sorry, I missed that ParallelGCThreads is initialized by Abstract_VM_Version::parallel_worker_threads() that you now override. So, you are right, this change will affect all collectors. But doesn't that mean that you need to do the same changes for ConcGCThreads for G1 as you do for CMS? > > Do we need the flag AdjustGCThreadsToCores? It seems like this is > a good change and it is always nice to reduce the number of flags > we have. If you feel unsure about the change it may be good to be > able to disable it, but in general I think it would be better to > decide that this is the default behavior and go with it. > > > I have no strong opinion. If you guys can confirm the improvements and > feel like you don't need the flag, that would be ideal. Yes, this is an interesting dilemma. Personally I don't think I have the cycles right now to do any performance testing of this fix. But I assume that you don't have access to enough machines and benchmarks to test this properly on all supported platforms. I'll bring this up internally to see if there is any process for handling this type of situation... Since your change is for Linux only and you have done the measurements there, I'm fine with your results. I would prefer skipping the AdjustGCThreadsToCores flag based on the data you provided. Especially since we can still set ParallelGCThreads explicitly on the command line if we need to work around a regression somewhere. > > os_linux_x86.cpp > > This is where the important part of your change is. I don't know > enough about Linux internals to validate the changes you have made > there. I will leave that out of my review and let others (Runtime > team?) with more Linux knowledge review it. > > > Some code comments: > > Since core_count() returns 0 for all platforms except linux_x86, > couldn't the following code be moved to a platform independent place? > > 758 int os::active_core_count() { > 759 if (os::core_count() <= 0) { > 760 os::set_core_count(os::active_processor_count()); > 761 } > 762 return os::core_count(); > 763 } > > That way this code would not have to be duplicated in all other > platforms: > > 726 int os::active_core_count() { > 727 return os::active_processor_count(); > 728 } > > We could just always use os::active_core_count() and rely on the > value it returns. > > > Sounds good to me. Good. > > > VM_Version::calc_parallel_worker_threads() > > 862 unsigned int ncpus = (unsigned int) os::active_core_count(); > 863 return (ncpus <= 8) ? ncpus : ncpus / 2; > > Isn't it strange that if we have 8 cores we get 8 parallel > threads, but if we have 12 cores we only get 6? Wouldn't it make > more sense to treat this limit as a max value, so: > > return (ncpus <= 8) ? ncpus : MAX2(8, ncpus / 2); > > > I think that's better. Good. :) > > > concurrentMarkSweepGeneration.cpp > > 639 if (AdjustGCThreadsToCores) { > 640 FLAG_SET_DEFAULT(ConcGCThreads, ParallelGCThreads / 2); > 641 } else { > 642 FLAG_SET_DEFAULT(ConcGCThreads, (3 + > ParallelGCThreads) / 4); > 643 } > > This looks a little odd to me. Why do we add 3? That does not seem > to scale when we have a large number of parallel threads. Did you > mean to multiply by 3? > > > (3 + ParallelGCThreads) / 4 is the upstream default, and I didn't > change it. > ParallelGCThreads can be much smaller with the change, so I divided > into 2 instead of 4. Sorry, I looked too quickly at the diff. You're right of course... > > Also, do we really need to use a different calculation for the > ConcGCThreads? It would have been nice to be able to use the same > logic for both cases. Did you measure any performance difference > in the two cases? > > > Maybe not. Most of the pause time is on the young generation in CMS. I > have seen pause time reduction on old generation as well, but anyway > that is small. > As I mentioned earlier, ParallelGCThreads has changed when > Hyperthreading or CPU mask is turned on. Hence using the same > heuristics can cause too small ConcGCThreads. > I'd like to use something like "os::active_core_counts() / 4" and make > it independent of using ParallelGCThreads. Yes, I think it sounds like a good idea to decouple ParallelGCThreads and ConcGCThreads. Maybe we should do that as a separate change and just leave any chagnes to ConcGCThreads out of this patch? Thanks, Bengt > > Jungwoo -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Fri Nov 22 16:55:34 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 22 Nov 2013 08:55:34 -0800 Subject: Request for review: 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on sparcv9 In-Reply-To: <528E8977.1060202@oracle.com> References: <5282CF67.6020508@oracle.com> <1384340336.2822.80.camel@cirrus> <5286DCDB.9070904@oracle.com> <528E8977.1060202@oracle.com> Message-ID: <528F8C86.4040004@oracle.com> Tao, Looks good. Jon On 11/21/2013 2:30 PM, Tao Mao wrote: > Hi, > > New webrev uploaded http://cr.openjdk.java.net/~tamao/8027915/webrev.02/ > > Note that FlagsValue.java file was first introduced in JDK-6521376 > (http://cr.openjdk.java.net/~tamao/6521376/webrev.05/). It was > reviewed but could not be pushed due to the current development phase. > and, getFlagLongValue() is not used here. > > Thanks. > Tao > > On 11/15/13 6:47 PM, Tao Mao wrote: >> Hi all, >> >> JDK8 cr. Need quick reviews to check it in. Thank you. >> >> new webrev: >> http://cr.openjdk.java.net/~tamao/8027915/webrev.01/ >> >> Please see comments inline. >> >> Thanks. >> Tao >> >> On 11/13/13 2:58 AM, Thomas Schatzl wrote: >>> Hi Tao, >>> >>> thanks for picking this up. >>> >>> On Tue, 2013-11-12 at 17:01 -0800, Tao Mao wrote: >>>> Hi all, >>>> >>>> 8027915: TestParallelHeapSizeFlags fails with unexpected heap size on >>>> sparcv9 >>>> https://bugs.openjdk.java.net/browse/JDK-8027915 >>>> >>>> webrev: >>>> http://cr.openjdk.java.net/~tamao/8027915/webrev.00/ >>> Some notes: >>> >>> + // bug 8027915& 8027960: compensate for some cases of large pages >>> >>> I do not think it is a good idea to mention bug numbers in the tests: >>> we can always get this information from the repository. >> Removed. >>> >>> Also I think the problem is not large pages, but how the collectors >>> align the spaces and generations. >>> >>> + if (gcflag.equals("-XX:+UseParallelOldGC")) { >>> >>> I think it would be better to check for general use of parallel GC >>> instead of only the parallel old implementation - I think both do the >>> same heap sizing. I.e. whether the flag -XX:+UseParallelGC is set when >>> invoking the VM. I.e. let the getMinInitialMaxHeap() method return the >>> collector type used by parsing the output of -XX:+PrintFlagsFinal >>> (which >>> needs to be added). >> Done. Look for "parallelGC". >> >>> I am not sure if that is needed though, see below. >>> >>> + int numberOfSpaces = 4; >>> + expectedHeapSize = Math.max(expectedHeapSize, numberOfSpaces * >>> v.minAlignment); >>> >>> I believe this is not correct in the general case. The formula used in >>> the VM (for generational collectors) is: >>> >>> expectedHeapSize = Math.max(expectedHeapSize, smallestPossibleHeapSize) >>> >>> where >>> >>> smallestNewSize = align_size_up(3 * _space_alignment, _gen_alignment); >>> smallestPossibleHeapSize = align_size_up(smallest_new_size + // >>> probably better named smallest_young_size >>> align_size_up(_space_alignment, _gen_alignment), // old gen >>> _heap_alignment); // >>> align for heap size >>> >>> The change needs to get the space alignment for that from the VM for >>> this. >> Quoted from my last response: >> >> " >> I know the internal alignment mechanism in VM code here. But, as >> philosophy of testing, I don't like the idea to match up exactly >> every line of code "in the box", because the code may be wrong in one >> way or another especially when changes around it are introduced later. >> >> Rather, a test should test what it believes VM needs to do. With >> that, it may catch other potential bugs in future. So, I'd rather >> keep the test simple and non-intrusive (into the code). >> " >>> >>> Recently the "minAlignment" and "maxAlignment" members of >>> CollectorPolicy changed to spaceAlignment and heapAlignment. Is it >>> possible to adapt the naming in the test? This seems to be an >>> oversight in reviews for the earlier patch that changed that in the >>> Hotspot code. >> Changed in whitebox.cpp. >>> >>> After introducing all this to the test, there is no need for special >>> casing parallel gc too. In case of G1 it should be sufficient to set >>> space alignment and gen alignment to the same value. >>> >>>> changeset: >>>> Modified the test code so that it can deal with the case of using >>>> large pages. >>>> >>>> *Note another failure of gc/arguments/TestMinInitialErgonomics.java >>>> mentioned in the CR is dealt with in a new CR JDK-8028254. >>> You are correct, it is a slightly different but similar issue: I think >>> min and initial heap size are now (or always have been, did not look) >>> aligned to the heap alignment (formerly maxAlignment). >>> >>> The test now aligns the expected min/initial heap sizes to minAlignment >>> only, which is wrong. >>> >>> Thanks, >>> Thomas >>> >>> >>> From jon.masamitsu at oracle.com Fri Nov 22 17:48:31 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 22 Nov 2013 09:48:31 -0800 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: <528F4F1E.7060309@oracle.com> References: <528DDC56.5090109@oracle.com> <528F4F1E.7060309@oracle.com> Message-ID: <528F98EF.1090407@oracle.com> On 11/22/2013 4:33 AM, Bengt Rutisson wrote: > > >> >> Do we need the flag AdjustGCThreadsToCores? It seems like this is >> a good change and it is always nice to reduce the number of flags >> we have. If you feel unsure about the change it may be good to be >> able to disable it, but in general I think it would be better to >> decide that this is the default behavior and go with it. >> >> >> I have no strong opinion. If you guys can confirm the improvements >> and feel like you don't need the flag, that would be ideal. > > Yes, this is an interesting dilemma. Personally I don't think I have > the cycles right now to do any performance testing of this fix. But I > assume that you don't have access to enough machines and benchmarks to > test this properly on all supported platforms. I'll bring this up > internally to see if there is any process for handling this type of > situation... > > Since your change is for Linux only and you have done the measurements > there, I'm fine with your results. I would prefer skipping the > AdjustGCThreadsToCores flag based on the data you provided. Especially > since we can still set ParallelGCThreads explicitly on the command > line if we need to work around a regression somewhere. I fully expect to need the AdjustGCThreadsToCores flag on Sparc so I would prefer it be left in. Make it an experimental flag to make it easier to remove later 1405experimental(bool, AdjustGCThreadsToCores, true, \ 1406 "Create GC worker threads with respect to the number of physical "\ 1407 "cores available from the CPU mask. Ignores hardware threads") \ 1408 We do have the ParallelGCThreads flag to workaround regressions but users don't know what value is currently set by the ergonomics so won't know what value to use for ParallelGCThreads to workaround a regression. Jon -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Fri Nov 22 23:51:36 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 22 Nov 2013 15:51:36 -0800 Subject: Fwd: Re: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: References: Message-ID: <528FEE08.3070004@oracle.com> Jungwoo, I forwarded the webrev to the runtime mailing list and got this back. In case you are not on that mailing list, here it is. Jon -------- Original Message -------- Subject: Re: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. Date: Fri, 22 Nov 2013 09:58:18 -0800 From: Brandon Mitchell To: Jon Masamitsu CC: hotspot-runtime-dev at openjdk.java.net On Fri, Nov 22, 2013 at 9:24 AM, Jon Masamitsu > wrote: This is a contribution regarding the number of GC worker threads to use. Part of the change queries /proc on linux to get the number of active cores on the platform. The changes are in http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp.frames.html Can someone familiar with this code take a look to see if it is reasonable and done in a way that is consistent with other /proc queries. /sys/devices/system/cpu/cpu/topology/thread_siblings_list might be somewhat easier to parse for this information. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Sat Nov 23 01:54:47 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 22 Nov 2013 17:54:47 -0800 Subject: Request for review (small) 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 violates Con,servation Principle" assert Message-ID: <52900AE7.8040109@oracle.com> 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 violates Con servation Principle" assert CompactibleFreeListSpace:: par_get_chunk_of_blocks() replenishes the free list of a given size by splitting a larger chunk. The code searched for a block that was large enough to split. If a large enough chunk was found it was removed from the dictionary and a split death was recorded. If the remainder after splitting would be too small, that block was returned to the dictionary but forgot to fix the split death accounting The fix was to move the split death accounting to the point where it was known that the chunk would not be put back into the dictionary. There was also code moved which did the accounting for the _unallocated_block (updated it to account for the allocation which could change _unallocated_block). The fix http://cr.openjdk.java.net/~jmasa/8026303/webrev.00/ A small amount of code refactoring was done and is in a second webrev (along with the fix above). Both changes will be put back together. http://cr.openjdk.java.net/~jmasa/8026303/webrev_cleanup.00/ Thanks. Jon From alejandro.murillo at oracle.com Sat Nov 23 04:10:27 2013 From: alejandro.murillo at oracle.com (alejandro.murillo at oracle.com) Date: Sat, 23 Nov 2013 04:10:27 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 16 new changesets Message-ID: <20131123041104.ADE19627D1@hg.openjdk.java.net> Changeset: 55be5aac78e2 Author: cl Date: 2013-11-21 09:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/55be5aac78e2 Added tag jdk8-b117 for changeset f573d00213b7 ! .hgtags Changeset: 570aaefce624 Author: morris Date: 2013-11-18 12:26 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/570aaefce624 8028319: ConflictingDefaultsTest.testReabstract spins when running with -mode invoke and -Xcomp Summary: Change _abstract_method_handler to return AbstractMethodError i2c, c2i and c2iv entries. Reviewed-by: kvn, vlivanov ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp Changeset: 938e1e64e28f Author: anoll Date: 2013-11-14 19:27 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/938e1e64e28f 8028306: nsk stress tests, CodeCache fills, then safepoint asserts Summary: Move handle_full_code_cache() out of block that forbids safepoints Reviewed-by: kvn, iveresov ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/runtime/sweeper.cpp Changeset: fca8f4799229 Author: roland Date: 2013-11-20 12:46 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/fca8f4799229 8028308: nsk regression, assert(obj->is_oop()) failed: not an oop Summary: rbp not restored when stack overflow is thrown from deopt/uncommon trap blobs Reviewed-by: kvn, iveresov ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp + test/compiler/uncommontrap/TestStackBangRbp.java Changeset: cdf20166ec45 Author: minqi Date: 2013-11-13 16:24 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/cdf20166ec45 8025632: Remove all references to MagicLambdaImpl from Hotspot Summary: MagicLambdaImpl was removed from jdk side, this should be done in vm side too Reviewed-by: coleenp, hseigel, rdurbin ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/reflection.cpp ! test/compiler/jsr292/ConcurrentClassLoadingTest.java Changeset: 3edddbff4865 Author: minqi Date: 2013-11-13 16:35 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/3edddbff4865 Merge Changeset: b03f33670080 Author: sla Date: 2013-11-14 19:30 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/b03f33670080 6606002: jinfo doesn't detect dynamic vm flags changing Reviewed-by: coleenp, jbachorik, sspitsyn ! agent/src/share/classes/sun/jvm/hotspot/tools/JInfo.java Changeset: 5280822ddfcd Author: sla Date: 2013-11-14 20:03 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/5280822ddfcd 6626412: jstack using SA prints some info messages into err stream Reviewed-by: coleenp, farvidsson, jbachorik, dsamersoff, sspitsyn ! agent/src/share/classes/sun/jvm/hotspot/tools/Tool.java Changeset: 438fe38c63c8 Author: mgronlun Date: 2013-11-15 21:39 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/438fe38c63c8 Merge ! src/share/vm/runtime/globals.hpp Changeset: d61a1a166f44 Author: coleenp Date: 2013-11-15 17:20 -0500 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/d61a1a166f44 8028347: Rewriter::scan_method asserts with array oob in RT_Baseline Summary: Fix reversing rewriting for invokespecial Reviewed-by: jrose, hseigel ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/interpreter/rewriter.hpp Changeset: 0b9ea9a72436 Author: sla Date: 2013-11-18 10:20 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/0b9ea9a72436 8027630: SIGSEGV in const char*Klass::external_name() Reviewed-by: coleenp, sspitsyn, mgronlun ! src/share/vm/classfile/metadataOnStackMark.cpp ! src/share/vm/services/threadService.cpp ! src/share/vm/services/threadService.hpp Changeset: 396564992823 Author: sgabdura Date: 2013-11-18 08:21 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/396564992823 8028341: PSR:FUNC: SCOPE PARAMETER MISSING FROM THE -XX:+PRINTFLAGSFINAL Reviewed-by: dcubed, sla ! src/share/vm/runtime/globals.cpp Changeset: aa933e6b061d Author: mgronlun Date: 2013-11-22 20:26 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/aa933e6b061d Merge Changeset: abad3b2d905d Author: amurillo Date: 2013-11-22 13:34 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/abad3b2d905d Merge Changeset: c9f439732b18 Author: amurillo Date: 2013-11-22 13:34 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/c9f439732b18 Added tag hs25-b60 for changeset abad3b2d905d ! .hgtags Changeset: e51d73189692 Author: amurillo Date: 2013-11-22 13:42 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/e51d73189692 8028815: new hotspot build - hs25-b61 Reviewed-by: jcoomes ! make/hotspot_version From jon.masamitsu at oracle.com Sat Nov 23 07:01:50 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 22 Nov 2013 23:01:50 -0800 Subject: Request for review (small) 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 violates Con,servation Principle" assert In-Reply-To: <52900AE7.8040109@oracle.com> References: <52900AE7.8040109@oracle.com> Message-ID: <529052DE.2050405@oracle.com> I'm withdrawing this review request until further notice. On 11/22/2013 5:54 PM, Jon Masamitsu wrote: > 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 > violates Con > servation Principle" assert > > CompactibleFreeListSpace:: par_get_chunk_of_blocks() replenishes > the free list of a given size by splitting a larger chunk. The code > searched for a block that was large enough to split. If a large enough > chunk was found it was removed from the dictionary and a split death > was recorded. If the remainder after splitting would be too small, that > block was returned to the dictionary but forgot to fix the split death > accounting > > The fix was to move the split death accounting to the point where > it was known that the chunk would not be put back into the dictionary. > There was also code moved which did the accounting for the > _unallocated_block (updated it to account for the allocation which > could change _unallocated_block). > > The fix > > http://cr.openjdk.java.net/~jmasa/8026303/webrev.00/ > > A small amount of code refactoring was done and is in > a second webrev (along with the fix above). Both changes > will be put back together. > > http://cr.openjdk.java.net/~jmasa/8026303/webrev_cleanup.00/ > > Thanks. > > Jon > > > From ysr1729 at gmail.com Sat Nov 23 22:58:25 2013 From: ysr1729 at gmail.com (Srinivas Ramakrishna) Date: Sat, 23 Nov 2013 14:58:25 -0800 Subject: Request for review (small) 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 violates Con, servation Principle" assert In-Reply-To: <529052DE.2050405@oracle.com> References: <52900AE7.8040109@oracle.com> <529052DE.2050405@oracle.com> Message-ID: On Fri, Nov 22, 2013 at 11:01 PM, Jon Masamitsu wrote: > I'm withdrawing this review request until further notice. Jon, I know you withdrew to give this further thought, but IIRC, the thing to do here might be to record the return as a split birth, rather than to fix up the split death. At least that was my mental model for the demand tracking. Will look at yr changes when you provide a new webrev. At this time I only read yr descripition below, but did not look at the webrev. thanks! -- ramki > > On 11/22/2013 5:54 PM, Jon Masamitsu wrote: > >> 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 >> violates Con >> servation Principle" assert >> >> CompactibleFreeListSpace:: par_get_chunk_of_blocks() replenishes >> the free list of a given size by splitting a larger chunk. The code >> searched for a block that was large enough to split. If a large enough >> chunk was found it was removed from the dictionary and a split death >> was recorded. If the remainder after splitting would be too small, that >> block was returned to the dictionary but forgot to fix the split death >> accounting >> >> The fix was to move the split death accounting to the point where >> it was known that the chunk would not be put back into the dictionary. >> There was also code moved which did the accounting for the >> _unallocated_block (updated it to account for the allocation which >> could change _unallocated_block). >> >> The fix >> >> http://cr.openjdk.java.net/~jmasa/8026303/webrev.00/ >> >> A small amount of code refactoring was done and is in >> a second webrev (along with the fix above). Both changes >> will be put back together. >> >> http://cr.openjdk.java.net/~jmasa/8026303/webrev_cleanup.00/ >> >> Thanks. >> >> Jon >> >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Mon Nov 25 05:55:51 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Sun, 24 Nov 2013 21:55:51 -0800 Subject: Request for review (small) 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 violates Con,servation Principle" assert In-Reply-To: <52900AE7.8040109@oracle.com> References: <52900AE7.8040109@oracle.com> Message-ID: <5292E667.5050008@oracle.com> I fixed a bug in the cleanup changes and updated the webrev. This is ready for review. Thanks. Jon On 11/22/2013 5:54 PM, Jon Masamitsu wrote: > 8026303: CMS: JVM intermittently crashes with "FreeList of size 258 > violates Con > servation Principle" assert > > CompactibleFreeListSpace:: par_get_chunk_of_blocks() replenishes > the free list of a given size by splitting a larger chunk. The code > searched for a block that was large enough to split. If a large enough > chunk was found it was removed from the dictionary and a split death > was recorded. If the remainder after splitting would be too small, that > block was returned to the dictionary but forgot to fix the split death > accounting > > The fix was to move the split death accounting to the point where > it was known that the chunk would not be put back into the dictionary. > There was also code moved which did the accounting for the > _unallocated_block (updated it to account for the allocation which > could change _unallocated_block). > > The fix > > http://cr.openjdk.java.net/~jmasa/8026303/webrev.00/ > > A small amount of code refactoring was done and is in > a second webrev (along with the fix above). Both changes > will be put back together. > > http://cr.openjdk.java.net/~jmasa/8026303/webrev_cleanup.00/ > > Thanks. > > Jon > > > From bengt.rutisson at oracle.com Mon Nov 25 07:48:56 2013 From: bengt.rutisson at oracle.com (Bengt Rutisson) Date: Mon, 25 Nov 2013 08:48:56 +0100 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: <528F98EF.1090407@oracle.com> References: <528DDC56.5090109@oracle.com> <528F4F1E.7060309@oracle.com> <528F98EF.1090407@oracle.com> Message-ID: <529300E8.1030106@oracle.com> On 11/22/13 6:48 PM, Jon Masamitsu wrote: > > On 11/22/2013 4:33 AM, Bengt Rutisson wrote: >> >> >>> >>> Do we need the flag AdjustGCThreadsToCores? It seems like this >>> is a good change and it is always nice to reduce the number of >>> flags we have. If you feel unsure about the change it may be >>> good to be able to disable it, but in general I think it would >>> be better to decide that this is the default behavior and go >>> with it. >>> >>> >>> I have no strong opinion. If you guys can confirm the improvements >>> and feel like you don't need the flag, that would be ideal. >> >> Yes, this is an interesting dilemma. Personally I don't think I have >> the cycles right now to do any performance testing of this fix. But I >> assume that you don't have access to enough machines and benchmarks >> to test this properly on all supported platforms. I'll bring this up >> internally to see if there is any process for handling this type of >> situation... >> >> Since your change is for Linux only and you have done the >> measurements there, I'm fine with your results. I would prefer >> skipping the AdjustGCThreadsToCores flag based on the data you >> provided. Especially since we can still set ParallelGCThreads >> explicitly on the command line if we need to work around a regression >> somewhere. > > I fully expect to need the AdjustGCThreadsToCores flag on Sparc so I > would prefer > it be left in. Can you explain why this will be particularly needed on Sparc? I assume you mean Linux/Sparc since the Solaris implementation is not changed by this patch. If we think this is not a good change for Sparc, then maybe we should not do it there... > Make it an experimental flag to make it easier to remove later > 1405experimental(bool, AdjustGCThreadsToCores, true, \ > 1406 "Create GC worker threads with respect to the number of physical "\ > 1407 "cores available from the CPU mask. Ignores hardware threads") \ > 1408 > Yes, this is a bit better, but I still don't fully understand why we want to keep the old behavior under a flag. More comments on that below. > We do have the ParallelGCThreads flag to workaround regressions but > users don't > know what value is currently set by the ergonomics so won't know what > value > to use for ParallelGCThreads to workaround a regression. It is not too hard to come up with the "old" default value for ParallelGCThreads. We know what the logic was so if just get processor information from the machine we can figure it out and in worst case we can ask a customer to run with an older version of the JDK and do "PrintFlagsFinal | grep ParallelGCThreads". I'm not going to insist that we remove the AdjustGCThreadsToCores flag. We can keep it if you feel it is important. Personally I just think the cost of having it is higher than the benefit. We have extra code to support, more complex logic to take into account when debugging and we most likely will not test with this flag enabled so bugs may creep in without us noticing. Bengt > > Jon -------------- next part -------------- An HTML attachment was scrubbed... URL: From erik.helin at oracle.com Mon Nov 25 14:00:55 2013 From: erik.helin at oracle.com (Erik Helin) Date: Mon, 25 Nov 2013 15:00:55 +0100 Subject: RFR (S): 8026043: add regression test for JDK-8000831 In-Reply-To: <527A6A4C.3060606@oracle.com> References: <525425FC.4050907@oracle.com> <52582315.2030508@oracle.com> <5258234A.7070208@oracle.com> <525825D0.50407@oracle.com> <525BC6DB.9090200@oracle.com> <20131018145942.GB4344@ehelin-thinkpad> <526154B5.3040806@oracle.com> <52663A13.3010100@oracle.com> <527A6A4C.3060606@oracle.com> Message-ID: <52935817.7030009@oracle.com> Filipp, On 2013-11-06 17:11, Filipp Zhinkin wrote: > Hi, > > may I have a review on it? Overall, the test looks fine. Only three small comments: - Could you @run main/samevm? I think that you can actually remove @run tag, since AFAIK the default action for jtreg is: @run main/samevm NameOfTest - The method ProcessTools.createVerboseJavaProcessBuilder is not available yet (it is in one of your other changes), can you use the existing ProcessTools.createJavaProcessBuilder for now? - Could you make the garbage variable public? Thanks for writing new tests! Erik > Thanks, > Filipp. > > On 10/22/2013 12:40 PM, Filipp Zhinkin wrote: >> Hi, >> >> I've done following changes: >> - @build tag removed; >> - 'garbage' array is now static field; >> - added heap-sizing flags to avoid failures with options passed via >> 'test.java.opts'. >> >> Updated webrev: http://cr.openjdk.java.net/~kshefov/8026043/webrev.02/ >> >> Thanks, >> Filipp. >> >> On 10/18/2013 07:33 PM, Filipp Zhinkin wrote: >>> Hi Erik, >>> >>> thank you for watching at it! >>> >>> On 10/18/2013 06:59 PM, Erik Helin wrote: >>>> Hi Filipp, >>>> >>>> thanks for adding new tests, really appreciate it! >>>> >>>> I have a couple of comments/questions about this test: >>>> - Do you really need a @build tag? >>> No, I don't. >>>> - Could you please provide a comment above each regex with an example >>>> that shows what the regex matches? >>> Yes, sure. >>>> - This test will only run with the default GC (since no GC is >>>> specified). What do you think about additional run targets testing >>>> various GC combinations? >>> The idea was to pass all VM options including different GC's via >>> test.java.opts property. >>> It makes test more flexible and allow us to test not only some fixed >>> subset of GC combinations. >>>> - Have you tried running the test with -Xcomp? The reason I'm asking is >>>> because I'm afraid that the compiler might be able to realize >>>> that the >>>> GarbageProducer main method isn't doing anything. >>> Yes, I've tried and that object allocation was not optimized out, >>> but I agree with you, "garbage" should be static. >>>> >>>> One thing that usually solves this is having garbage as a public >>>> static variable in the class. >>>> - Are you using GarbageProducer since you want to trigger young GCs? If >>>> so, why only tests young GCs? Would the test works just as well >>>> using >>>> System.gc() to tests full GCs? >>> In fact, test running with MaxHeapSize=5m, so both minor and full GC >>> happens. >>> But there is another issue then - I forgot to set up other heap >>> sizing options, >>> so test will fail when someone start if with, for example, -Xms10m. >>> >>> I'll fix that. >>> >>> Thanks, >>> Filipp. >>>> Thanks, >>>> Erik >>>> >>>> On 2013-10-14, Filipp Zhinkin wrote: >>>>> Hi, >>>>> >>>>> I've refactored options parsing, here is updated webrev: >>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.01/ >>>>> >>>>> Note that I'm using ProcessTools.createVerboseJavaProcessBuilder >>>>> from 8026047 >>>>> to make sure that VM output will not be suppressed or redirected to >>>>> file. >>>>> >>>>> Thanks, >>>>> Filipp. >>>>> >>>>> On 10/11/2013 08:22 PM, Tao Mao wrote: >>>>>> Ok, thank you for heads-up. Then, I'll await your webrev update. >>>>>> >>>>>> Thanks. >>>>>> Tao >>>>>> >>>>>> On 10/11/13 9:11 AM, Filipp Zhinkin wrote: >>>>>>> Hi Tao, >>>>>>> >>>>>>> Sorry for typo. You're right, the correct one is >>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/. >>>>>>> >>>>>>> And I'll refactor it in the same way as fix for 8026047. >>>>>>> >>>>>>> Thanks, >>>>>>> Filipp. >>>>>>> >>>>>>> On 10/11/2013 08:11 PM, Tao Mao wrote: >>>>>>>> Hi Filipp, >>>>>>>> >>>>>>>> FYI, it has a wrong webrev. I guess it should be >>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/ >>>>>>>> >>>>>>>> Thanks. >>>>>>>> Tao >>>>>>>> >>>>>>>> On 10/8/13 8:34 AM, Filipp Zhinkin wrote: >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> I would like to get couple review on test, that cover issue >>>>>>>>> fixed by 8000831 - Heap verification output >>>>>>>>> incorrect/incomplete. >>>>>>>>> >>>>>>>>> Test verifies that options VerifyBeforeGC and >>>>>>>>> VerifyAfterGCemit appropriate output if they are turned on >>>>>>>>> and never >>>>>>>>> emit corrupted output as it was before 8000831 fixed. >>>>>>>>> >>>>>>>>> Bug ID: https://bugs.openjdk.java.net/browse/JDK-8026043 >>>>>>>>> Webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.00/ >>>>>>>>> Testing: manual on local host, automated on various platforms. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Filipp. >>> >> > From jon.masamitsu at oracle.com Mon Nov 25 16:39:25 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 25 Nov 2013 08:39:25 -0800 Subject: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: <529300E8.1030106@oracle.com> References: <528DDC56.5090109@oracle.com> <528F4F1E.7060309@oracle.com> <528F98EF.1090407@oracle.com> <529300E8.1030106@oracle.com> Message-ID: <52937D3D.8090501@oracle.com> On 11/24/13 11:48 PM, Bengt Rutisson wrote: > On 11/22/13 6:48 PM, Jon Masamitsu wrote: >> >> On 11/22/2013 4:33 AM, Bengt Rutisson wrote: >>> >>> >>>> >>>> Do we need the flag AdjustGCThreadsToCores? It seems like this >>>> is a good change and it is always nice to reduce the number of >>>> flags we have. If you feel unsure about the change it may be >>>> good to be able to disable it, but in general I think it would >>>> be better to decide that this is the default behavior and go >>>> with it. >>>> >>>> >>>> I have no strong opinion. If you guys can confirm the improvements >>>> and feel like you don't need the flag, that would be ideal. >>> >>> Yes, this is an interesting dilemma. Personally I don't think I have >>> the cycles right now to do any performance testing of this fix. But >>> I assume that you don't have access to enough machines and >>> benchmarks to test this properly on all supported platforms. I'll >>> bring this up internally to see if there is any process for handling >>> this type of situation... >>> >>> Since your change is for Linux only and you have done the >>> measurements there, I'm fine with your results. I would prefer >>> skipping the AdjustGCThreadsToCores flag based on the data you >>> provided. Especially since we can still set ParallelGCThreads >>> explicitly on the command line if we need to work around a >>> regression somewhere. >> >> I fully expect to need the AdjustGCThreadsToCores flag on Sparc so I >> would prefer >> it be left in. > > Can you explain why this will be particularly needed on Sparc? I > assume you mean Linux/Sparc since the Solaris implementation is not > changed by this patch. If we think this is not a good change for > Sparc, then maybe we should not do it there... I say that for two reasons. In the past I've seen performance results that show that some application running on solaris benefit from using all the hardware threads there are for GC. Incrementally adding 1 more GC worker always decreases GC pauses. That is definitely not true for all applications. Niagara already is a special case (uses the 5/16's rule instead of the 5/8's rule) so I expect that it will be different. > >> Make it an experimental flag to make it easier to remove later >> 1405experimental(bool, AdjustGCThreadsToCores, true, \ >> 1406 "Create GC worker threads with respect to the number of physical "\ >> 1407 "cores available from the CPU mask. Ignores hardware threads") \ >> 1408 >> > > Yes, this is a bit better, but I still don't fully understand why we > want to keep the old behavior under a flag. More comments on that below. > >> We do have the ParallelGCThreads flag to workaround regressions but >> users don't >> know what value is currently set by the ergonomics so won't know what >> value >> to use for ParallelGCThreads to workaround a regression. > > It is not too hard to come up with the "old" default value for > ParallelGCThreads. We know what the logic was so if just get processor > information from the machine we can figure it out and in worst case we > can ask a customer to run with an older version of the JDK and do > "PrintFlagsFinal | grep ParallelGCThreads". True but if there is a general category of workloads where the old default is better, there will be many, many calls from users who see an increase in GC pauses and have not idea why. > > I'm not going to insist that we remove the AdjustGCThreadsToCores > flag. We can keep it if you feel it is important. Personally I just > think the cost of having it is higher than the benefit. We have extra > code to support, more complex logic to take into account when > debugging and we most likely will not test with this flag enabled so > bugs may creep in without us noticing. We don't have the data yet to know if we need AdjustGCThreadsToCores on other platforms. Actually, I don't know if we have the data to say that we don't need the flag on linux. It may be workload dependent. It will make it easier to do the comparisons if we have a flag. If you think we should do the implementation on the other platforms and the performance testing before first integration, that's a reasonable way to do it. Jon > > Bengt > >> >> Jon > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Mon Nov 25 16:47:24 2013 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Mon, 25 Nov 2013 08:47:24 -0800 Subject: Fwd: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: <5292EA0C.2000703@oracle.com> References: <528F934A.6050903@oracle.com> <5292B3A7.8020409@oracle.com> <5292EA0C.2000703@oracle.com> Message-ID: <52937F1C.70203@oracle.com> Looping in hotspot-gc-dev to the discussion. David Holmes raised the question of this enhancement only being implemented (in effect) and tested on linux systems. The contributor works in a linux shop. What should we require for an enhancement? At Oracle we try hard to implement uniformly on all platforms. No we don't always succeed but we have it on our minds. We have a potential contribution that has shown benefit on a wide variety of applications in linux environment so we are considering it. There is no guarantee that the GC team here has the time to fill out the implementation on other platforms. I would hate to think that that would block a good enhancement but, as I said, we like to have uniform support on all platforms if possible. I really don't know where this is going. I know we're not going to make all of the people happy all of the time, but if you want to say something about this, please do. Thanks. Jon On 11/24/13 10:11 PM, Jon Masamitsu wrote: > David, > > Thanks for taking a look at this. > > On 11/24/2013 6:19 PM, David Holmes wrote: >> Hi Jon, >> >> On 23/11/2013 3:24 AM, Jon Masamitsu wrote: >>> This is a contribution regarding the number of GC worker threads to >>> use. Part of the change queries /proc on linux to get the number of >>> active cores on the platform. The changes are in >>> >>> http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp.frames.html >>> >>> >>> Can someone familiar with this code take a look to see >>> if it is reasonable and done in a way that is consistent >>> with other /proc queries. >> >> I can't comment on that specifically but I do have reservations about >> this proposed patch. >> >> First we have a general problem that "active processor count" doesn't >> take into account the various resource management mechanisms that can >> limit the actual "processors" available to the VM when it is running. >> I would prefer to see that general problem solved. It also isn't >> clear to me that the sched_getaffinity usage will correctly reflect >> the use of tasksets/cpusets. (Note on solaris we try to handle some >> of these mechanisms eg pbind and psrsets but still don't handle >> resource pools.) > > Is there any work being done on the general problem? I also would > like to see this solved. I've always thought of it as runtime code that > GC uses. Do you see it as a GC responsibility? > >> >> Second, this feeds into future work on NUMA-awareness that will >> likely need a more sophisticated set of API's. > > Can you explain more? > >> >> Third I dislike that this is only really addressing linux-x86 and >> leaving the other platforms to default to cores==processors. That >> just causes unnecessary divergence in platform functionality. > > This is an interesting question with regard to open jdk contributions. > Yes, Oracle should do its best to implement on all platforms but > Google is a linux x86 shop and I personally don't expect them to > implement > and performance test on all the supported platforms. Should we be > making > that a requirement for open jdk contributions? > >> >> This is too late for JDK 8 and I think we will be doing more complete >> work in this area during JDK 9 development. > > Agreed that it is too late for jdk8. I would think it would be > suitable for an > 8 update, however. What is coming in jdk9 that affects this? > > Jon > >> >> Thanks, >> David >> ----- >> >>> Thanks. >>> >>> >>> -------- Original Message -------- >>> Subject: Better default for ParallelGCThreads and ConcGCThreads by >>> using number of physical cores and CPU mask. >>> Date: Tue, 19 Nov 2013 15:35:22 -0800 >>> From: Jungwoo Ha >>> To: hotspot-gc-dev at openjdk.java.net >>> >>> >>> >>> Hi, >>> >>> I am sending this webrev for the review. >>> (On behalf of Jon Masamitsu, it is upload here) >>> http://cr.openjdk.java.net/~jmasa/8028554/webrev.00/ >>> >>> >>> The feature is a new heuristics to calculate the default >>> ParallelGCThreads and ConGCThreads. >>> In x86, hyperthreading is generally bad for GC because of the cache >>> contention. >>> Hence, using all the hyper-threaded cores will slow down the overall GC >>> performance. >>> Current hotspot reads the number of processors that the Linux reports, >>> which treats all hyper-threaded cores equally. >>> Second problem is that when cpu mask is set, not all the cores are >>> available for the GC. >>> >>> The patch improves the heuristics by evaluating the actual available >>> physical cores >>> from the proc filesystem and the CPU mask, and use that as the basis >>> for >>> calculating the ParallelGCThreads and ConcGCThreads. >>> >>> The improvements of GC pause time is significant. We evaluated on >>> Nehalem, Westmere, Sandybridge as well as several AMD processors. We >>> also evaluated on various CPU mask configuration and single/dual socket >>> configurations. >>> In almost all cases, there were speed up in GC pause time by 10~50%. >>> >>> We primarily use CMS collector for the evaluation, but we also >>> tested on >>> other GCs as well. >>> Please take a look and let me know if this patch can be accepted. >>> >>> Thanks, >>> Jungwoo Ha >>> >>> >>> > From filipp.zhinkin at oracle.com Tue Nov 26 09:48:18 2013 From: filipp.zhinkin at oracle.com (Filipp Zhinkin) Date: Tue, 26 Nov 2013 13:48:18 +0400 Subject: RFR (S): 8026043: add regression test for JDK-8000831 In-Reply-To: <52935817.7030009@oracle.com> References: <525425FC.4050907@oracle.com> <52582315.2030508@oracle.com> <5258234A.7070208@oracle.com> <525825D0.50407@oracle.com> <525BC6DB.9090200@oracle.com> <20131018145942.GB4344@ehelin-thinkpad> <526154B5.3040806@oracle.com> <52663A13.3010100@oracle.com> <527A6A4C.3060606@oracle.com> <52935817.7030009@oracle.com> Message-ID: <52946E62.7030306@oracle.com> Eric, thanks for looking at it! I've fixed all issues that you've listed below. Here is updated webrev: http://cr.openjdk.java.net/~kshefov/8026043/webrev.03/ Thanks, Filipp. On 11/25/2013 06:00 PM, Erik Helin wrote: > Filipp, > > On 2013-11-06 17:11, Filipp Zhinkin wrote: >> Hi, >> >> may I have a review on it? > > Overall, the test looks fine. Only three small comments: > - Could you @run main/samevm? I think that you can actually remove @run > tag, since AFAIK the default action for jtreg is: > @run main/samevm NameOfTest > - The method ProcessTools.createVerboseJavaProcessBuilder is not > available yet (it is in one of your other changes), can you use the > existing ProcessTools.createJavaProcessBuilder for now? > - Could you make the garbage variable public? > > Thanks for writing new tests! > Erik > >> Thanks, >> Filipp. >> >> On 10/22/2013 12:40 PM, Filipp Zhinkin wrote: >>> Hi, >>> >>> I've done following changes: >>> - @build tag removed; >>> - 'garbage' array is now static field; >>> - added heap-sizing flags to avoid failures with options passed via >>> 'test.java.opts'. >>> >>> Updated webrev: http://cr.openjdk.java.net/~kshefov/8026043/webrev.02/ >>> >>> Thanks, >>> Filipp. >>> >>> On 10/18/2013 07:33 PM, Filipp Zhinkin wrote: >>>> Hi Erik, >>>> >>>> thank you for watching at it! >>>> >>>> On 10/18/2013 06:59 PM, Erik Helin wrote: >>>>> Hi Filipp, >>>>> >>>>> thanks for adding new tests, really appreciate it! >>>>> >>>>> I have a couple of comments/questions about this test: >>>>> - Do you really need a @build tag? >>>> No, I don't. >>>>> - Could you please provide a comment above each regex with an example >>>>> that shows what the regex matches? >>>> Yes, sure. >>>>> - This test will only run with the default GC (since no GC is >>>>> specified). What do you think about additional run targets testing >>>>> various GC combinations? >>>> The idea was to pass all VM options including different GC's via >>>> test.java.opts property. >>>> It makes test more flexible and allow us to test not only some fixed >>>> subset of GC combinations. >>>>> - Have you tried running the test with -Xcomp? The reason I'm >>>>> asking is >>>>> because I'm afraid that the compiler might be able to realize >>>>> that the >>>>> GarbageProducer main method isn't doing anything. >>>> Yes, I've tried and that object allocation was not optimized out, >>>> but I agree with you, "garbage" should be static. >>>>> >>>>> One thing that usually solves this is having garbage as a public >>>>> static variable in the class. >>>>> - Are you using GarbageProducer since you want to trigger young >>>>> GCs? If >>>>> so, why only tests young GCs? Would the test works just as well >>>>> using >>>>> System.gc() to tests full GCs? >>>> In fact, test running with MaxHeapSize=5m, so both minor and full GC >>>> happens. >>>> But there is another issue then - I forgot to set up other heap >>>> sizing options, >>>> so test will fail when someone start if with, for example, -Xms10m. >>>> >>>> I'll fix that. >>>> >>>> Thanks, >>>> Filipp. >>>>> Thanks, >>>>> Erik >>>>> >>>>> On 2013-10-14, Filipp Zhinkin wrote: >>>>>> Hi, >>>>>> >>>>>> I've refactored options parsing, here is updated webrev: >>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.01/ >>>>>> >>>>>> Note that I'm using ProcessTools.createVerboseJavaProcessBuilder >>>>>> from 8026047 >>>>>> to make sure that VM output will not be suppressed or redirected to >>>>>> file. >>>>>> >>>>>> Thanks, >>>>>> Filipp. >>>>>> >>>>>> On 10/11/2013 08:22 PM, Tao Mao wrote: >>>>>>> Ok, thank you for heads-up. Then, I'll await your webrev update. >>>>>>> >>>>>>> Thanks. >>>>>>> Tao >>>>>>> >>>>>>> On 10/11/13 9:11 AM, Filipp Zhinkin wrote: >>>>>>>> Hi Tao, >>>>>>>> >>>>>>>> Sorry for typo. You're right, the correct one is >>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/. >>>>>>>> >>>>>>>> And I'll refactor it in the same way as fix for 8026047. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Filipp. >>>>>>>> >>>>>>>> On 10/11/2013 08:11 PM, Tao Mao wrote: >>>>>>>>> Hi Filipp, >>>>>>>>> >>>>>>>>> FYI, it has a wrong webrev. I guess it should be >>>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/ >>>>>>>>> >>>>>>>>> Thanks. >>>>>>>>> Tao >>>>>>>>> >>>>>>>>> On 10/8/13 8:34 AM, Filipp Zhinkin wrote: >>>>>>>>>> Hi, >>>>>>>>>> >>>>>>>>>> I would like to get couple review on test, that cover issue >>>>>>>>>> fixed by 8000831 - Heap verification output >>>>>>>>>> incorrect/incomplete. >>>>>>>>>> >>>>>>>>>> Test verifies that options VerifyBeforeGC and >>>>>>>>>> VerifyAfterGCemit appropriate output if they are turned on >>>>>>>>>> and never >>>>>>>>>> emit corrupted output as it was before 8000831 fixed. >>>>>>>>>> >>>>>>>>>> Bug ID: https://bugs.openjdk.java.net/browse/JDK-8026043 >>>>>>>>>> Webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.00/ >>>>>>>>>> Testing: manual on local host, automated on various platforms. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Filipp. >>>> >>> >> From erik.helin at oracle.com Tue Nov 26 10:32:13 2013 From: erik.helin at oracle.com (Erik Helin) Date: Tue, 26 Nov 2013 11:32:13 +0100 Subject: RFR (S): 8026043: add regression test for JDK-8000831 In-Reply-To: <52946E62.7030306@oracle.com> References: <525425FC.4050907@oracle.com> <52582315.2030508@oracle.com> <5258234A.7070208@oracle.com> <525825D0.50407@oracle.com> <525BC6DB.9090200@oracle.com> <20131018145942.GB4344@ehelin-thinkpad> <526154B5.3040806@oracle.com> <52663A13.3010100@oracle.com> <527A6A4C.3060606@oracle.com> <52935817.7030009@oracle.com> <52946E62.7030306@oracle.com> Message-ID: <529478AD.60200@oracle.com> Filipp, this looks good, thanks for the test! Erik On 2013-11-26 10:48, Filipp Zhinkin wrote: > Eric, > > thanks for looking at it! > > I've fixed all issues that you've listed below. > Here is updated webrev: > http://cr.openjdk.java.net/~kshefov/8026043/webrev.03/ > > Thanks, > Filipp. > > On 11/25/2013 06:00 PM, Erik Helin wrote: >> Filipp, >> >> On 2013-11-06 17:11, Filipp Zhinkin wrote: >>> Hi, >>> >>> may I have a review on it? >> >> Overall, the test looks fine. Only three small comments: >> - Could you @run main/samevm? I think that you can actually remove @run >> tag, since AFAIK the default action for jtreg is: >> @run main/samevm NameOfTest >> - The method ProcessTools.createVerboseJavaProcessBuilder is not >> available yet (it is in one of your other changes), can you use the >> existing ProcessTools.createJavaProcessBuilder for now? >> - Could you make the garbage variable public? >> >> Thanks for writing new tests! >> Erik >> >>> Thanks, >>> Filipp. >>> >>> On 10/22/2013 12:40 PM, Filipp Zhinkin wrote: >>>> Hi, >>>> >>>> I've done following changes: >>>> - @build tag removed; >>>> - 'garbage' array is now static field; >>>> - added heap-sizing flags to avoid failures with options passed via >>>> 'test.java.opts'. >>>> >>>> Updated webrev: http://cr.openjdk.java.net/~kshefov/8026043/webrev.02/ >>>> >>>> Thanks, >>>> Filipp. >>>> >>>> On 10/18/2013 07:33 PM, Filipp Zhinkin wrote: >>>>> Hi Erik, >>>>> >>>>> thank you for watching at it! >>>>> >>>>> On 10/18/2013 06:59 PM, Erik Helin wrote: >>>>>> Hi Filipp, >>>>>> >>>>>> thanks for adding new tests, really appreciate it! >>>>>> >>>>>> I have a couple of comments/questions about this test: >>>>>> - Do you really need a @build tag? >>>>> No, I don't. >>>>>> - Could you please provide a comment above each regex with an example >>>>>> that shows what the regex matches? >>>>> Yes, sure. >>>>>> - This test will only run with the default GC (since no GC is >>>>>> specified). What do you think about additional run targets testing >>>>>> various GC combinations? >>>>> The idea was to pass all VM options including different GC's via >>>>> test.java.opts property. >>>>> It makes test more flexible and allow us to test not only some fixed >>>>> subset of GC combinations. >>>>>> - Have you tried running the test with -Xcomp? The reason I'm >>>>>> asking is >>>>>> because I'm afraid that the compiler might be able to realize >>>>>> that the >>>>>> GarbageProducer main method isn't doing anything. >>>>> Yes, I've tried and that object allocation was not optimized out, >>>>> but I agree with you, "garbage" should be static. >>>>>> >>>>>> One thing that usually solves this is having garbage as a public >>>>>> static variable in the class. >>>>>> - Are you using GarbageProducer since you want to trigger young >>>>>> GCs? If >>>>>> so, why only tests young GCs? Would the test works just as well >>>>>> using >>>>>> System.gc() to tests full GCs? >>>>> In fact, test running with MaxHeapSize=5m, so both minor and full GC >>>>> happens. >>>>> But there is another issue then - I forgot to set up other heap >>>>> sizing options, >>>>> so test will fail when someone start if with, for example, -Xms10m. >>>>> >>>>> I'll fix that. >>>>> >>>>> Thanks, >>>>> Filipp. >>>>>> Thanks, >>>>>> Erik >>>>>> >>>>>> On 2013-10-14, Filipp Zhinkin wrote: >>>>>>> Hi, >>>>>>> >>>>>>> I've refactored options parsing, here is updated webrev: >>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.01/ >>>>>>> >>>>>>> Note that I'm using ProcessTools.createVerboseJavaProcessBuilder >>>>>>> from 8026047 >>>>>>> to make sure that VM output will not be suppressed or redirected to >>>>>>> file. >>>>>>> >>>>>>> Thanks, >>>>>>> Filipp. >>>>>>> >>>>>>> On 10/11/2013 08:22 PM, Tao Mao wrote: >>>>>>>> Ok, thank you for heads-up. Then, I'll await your webrev update. >>>>>>>> >>>>>>>> Thanks. >>>>>>>> Tao >>>>>>>> >>>>>>>> On 10/11/13 9:11 AM, Filipp Zhinkin wrote: >>>>>>>>> Hi Tao, >>>>>>>>> >>>>>>>>> Sorry for typo. You're right, the correct one is >>>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/. >>>>>>>>> >>>>>>>>> And I'll refactor it in the same way as fix for 8026047. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Filipp. >>>>>>>>> >>>>>>>>> On 10/11/2013 08:11 PM, Tao Mao wrote: >>>>>>>>>> Hi Filipp, >>>>>>>>>> >>>>>>>>>> FYI, it has a wrong webrev. I guess it should be >>>>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/ >>>>>>>>>> >>>>>>>>>> Thanks. >>>>>>>>>> Tao >>>>>>>>>> >>>>>>>>>> On 10/8/13 8:34 AM, Filipp Zhinkin wrote: >>>>>>>>>>> Hi, >>>>>>>>>>> >>>>>>>>>>> I would like to get couple review on test, that cover issue >>>>>>>>>>> fixed by 8000831 - Heap verification output >>>>>>>>>>> incorrect/incomplete. >>>>>>>>>>> >>>>>>>>>>> Test verifies that options VerifyBeforeGC and >>>>>>>>>>> VerifyAfterGCemit appropriate output if they are turned on >>>>>>>>>>> and never >>>>>>>>>>> emit corrupted output as it was before 8000831 fixed. >>>>>>>>>>> >>>>>>>>>>> Bug ID: https://bugs.openjdk.java.net/browse/JDK-8026043 >>>>>>>>>>> Webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.00/ >>>>>>>>>>> Testing: manual on local host, automated on various platforms. >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Filipp. >>>>> >>>> >>> > From filipp.zhinkin at oracle.com Tue Nov 26 12:19:49 2013 From: filipp.zhinkin at oracle.com (Filipp Zhinkin) Date: Tue, 26 Nov 2013 16:19:49 +0400 Subject: RFR (S): 8026043: add regression test for JDK-8000831 In-Reply-To: <529478AD.60200@oracle.com> References: <525425FC.4050907@oracle.com> <52582315.2030508@oracle.com> <5258234A.7070208@oracle.com> <525825D0.50407@oracle.com> <525BC6DB.9090200@oracle.com> <20131018145942.GB4344@ehelin-thinkpad> <526154B5.3040806@oracle.com> <52663A13.3010100@oracle.com> <527A6A4C.3060606@oracle.com> <52935817.7030009@oracle.com> <52946E62.7030306@oracle.com> <529478AD.60200@oracle.com> Message-ID: <529491E5.7080205@oracle.com> Erik, thanks for review! Are there any other volunteers to review it? :) Filipp. On 11/26/2013 02:32 PM, Erik Helin wrote: > Filipp, > > this looks good, thanks for the test! > > Erik > > On 2013-11-26 10:48, Filipp Zhinkin wrote: >> Eric, >> >> thanks for looking at it! >> >> I've fixed all issues that you've listed below. >> Here is updated webrev: >> http://cr.openjdk.java.net/~kshefov/8026043/webrev.03/ >> >> Thanks, >> Filipp. >> >> On 11/25/2013 06:00 PM, Erik Helin wrote: >>> Filipp, >>> >>> On 2013-11-06 17:11, Filipp Zhinkin wrote: >>>> Hi, >>>> >>>> may I have a review on it? >>> >>> Overall, the test looks fine. Only three small comments: >>> - Could you @run main/samevm? I think that you can actually remove @run >>> tag, since AFAIK the default action for jtreg is: >>> @run main/samevm NameOfTest >>> - The method ProcessTools.createVerboseJavaProcessBuilder is not >>> available yet (it is in one of your other changes), can you use the >>> existing ProcessTools.createJavaProcessBuilder for now? >>> - Could you make the garbage variable public? >>> >>> Thanks for writing new tests! >>> Erik >>> >>>> Thanks, >>>> Filipp. >>>> >>>> On 10/22/2013 12:40 PM, Filipp Zhinkin wrote: >>>>> Hi, >>>>> >>>>> I've done following changes: >>>>> - @build tag removed; >>>>> - 'garbage' array is now static field; >>>>> - added heap-sizing flags to avoid failures with options passed via >>>>> 'test.java.opts'. >>>>> >>>>> Updated webrev: >>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.02/ >>>>> >>>>> Thanks, >>>>> Filipp. >>>>> >>>>> On 10/18/2013 07:33 PM, Filipp Zhinkin wrote: >>>>>> Hi Erik, >>>>>> >>>>>> thank you for watching at it! >>>>>> >>>>>> On 10/18/2013 06:59 PM, Erik Helin wrote: >>>>>>> Hi Filipp, >>>>>>> >>>>>>> thanks for adding new tests, really appreciate it! >>>>>>> >>>>>>> I have a couple of comments/questions about this test: >>>>>>> - Do you really need a @build tag? >>>>>> No, I don't. >>>>>>> - Could you please provide a comment above each regex with an >>>>>>> example >>>>>>> that shows what the regex matches? >>>>>> Yes, sure. >>>>>>> - This test will only run with the default GC (since no GC is >>>>>>> specified). What do you think about additional run targets >>>>>>> testing >>>>>>> various GC combinations? >>>>>> The idea was to pass all VM options including different GC's via >>>>>> test.java.opts property. >>>>>> It makes test more flexible and allow us to test not only some fixed >>>>>> subset of GC combinations. >>>>>>> - Have you tried running the test with -Xcomp? The reason I'm >>>>>>> asking is >>>>>>> because I'm afraid that the compiler might be able to realize >>>>>>> that the >>>>>>> GarbageProducer main method isn't doing anything. >>>>>> Yes, I've tried and that object allocation was not optimized out, >>>>>> but I agree with you, "garbage" should be static. >>>>>>> >>>>>>> One thing that usually solves this is having garbage as a public >>>>>>> static variable in the class. >>>>>>> - Are you using GarbageProducer since you want to trigger young >>>>>>> GCs? If >>>>>>> so, why only tests young GCs? Would the test works just as well >>>>>>> using >>>>>>> System.gc() to tests full GCs? >>>>>> In fact, test running with MaxHeapSize=5m, so both minor and full GC >>>>>> happens. >>>>>> But there is another issue then - I forgot to set up other heap >>>>>> sizing options, >>>>>> so test will fail when someone start if with, for example, -Xms10m. >>>>>> >>>>>> I'll fix that. >>>>>> >>>>>> Thanks, >>>>>> Filipp. >>>>>>> Thanks, >>>>>>> Erik >>>>>>> >>>>>>> On 2013-10-14, Filipp Zhinkin wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> I've refactored options parsing, here is updated webrev: >>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.01/ >>>>>>>> >>>>>>>> Note that I'm using ProcessTools.createVerboseJavaProcessBuilder >>>>>>>> from 8026047 >>>>>>>> to make sure that VM output will not be suppressed or >>>>>>>> redirected to >>>>>>>> file. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Filipp. >>>>>>>> >>>>>>>> On 10/11/2013 08:22 PM, Tao Mao wrote: >>>>>>>>> Ok, thank you for heads-up. Then, I'll await your webrev update. >>>>>>>>> >>>>>>>>> Thanks. >>>>>>>>> Tao >>>>>>>>> >>>>>>>>> On 10/11/13 9:11 AM, Filipp Zhinkin wrote: >>>>>>>>>> Hi Tao, >>>>>>>>>> >>>>>>>>>> Sorry for typo. You're right, the correct one is >>>>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/. >>>>>>>>>> >>>>>>>>>> And I'll refactor it in the same way as fix for 8026047. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Filipp. >>>>>>>>>> >>>>>>>>>> On 10/11/2013 08:11 PM, Tao Mao wrote: >>>>>>>>>>> Hi Filipp, >>>>>>>>>>> >>>>>>>>>>> FYI, it has a wrong webrev. I guess it should be >>>>>>>>>>> http://cr.openjdk.java.net/~kshefov/8026043/webrev.00/ >>>>>>>>>>> >>>>>>>>>>> Thanks. >>>>>>>>>>> Tao >>>>>>>>>>> >>>>>>>>>>> On 10/8/13 8:34 AM, Filipp Zhinkin wrote: >>>>>>>>>>>> Hi, >>>>>>>>>>>> >>>>>>>>>>>> I would like to get couple review on test, that cover issue >>>>>>>>>>>> fixed by 8000831 - Heap verification output >>>>>>>>>>>> incorrect/incomplete. >>>>>>>>>>>> >>>>>>>>>>>> Test verifies that options VerifyBeforeGC and >>>>>>>>>>>> VerifyAfterGCemit appropriate output if they are turned on >>>>>>>>>>>> and never >>>>>>>>>>>> emit corrupted output as it was before 8000831 fixed. >>>>>>>>>>>> >>>>>>>>>>>> Bug ID: https://bugs.openjdk.java.net/browse/JDK-8026043 >>>>>>>>>>>> Webrev: http://cr.openjdk.java.net/~kshefov/8026047/webrev.00/ >>>>>>>>>>>> Testing: manual on local host, automated on various platforms. >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> Filipp. >>>>>> >>>>> >>>> >> From aph at redhat.com Tue Nov 26 09:23:49 2013 From: aph at redhat.com (Andrew Haley) Date: Tue, 26 Nov 2013 09:23:49 +0000 Subject: Fwd: Better default for ParallelGCThreads and ConcGCThreads by using number of physical cores and CPU mask. In-Reply-To: <52937F1C.70203@oracle.com> References: <528F934A.6050903@oracle.com> <5292B3A7.8020409@oracle.com> <5292EA0C.2000703@oracle.com> <52937F1C.70203@oracle.com> Message-ID: <529468A5.30708@redhat.com> On 11/25/2013 04:47 PM, Jon Masamitsu wrote: > There is no guarantee that the GC team here has the time to fill out > the implementation on other platforms. I would hate to think that > that would block a good enhancement but, as I said, we like to have > uniform support on all platforms if possible. Sure, but if the people we have don't have the time to fill out the implementation on other platforms, then uniform support on all platforms isn't possible. In an increasingly heterogeneous community it's inevitable that some platforms will be attended to first because you have to start somewhere. This is a consequence of more people doing different things on more platforms; it's not a bad thing, it's a mark of the success of OpenJDK. Andrew. From mikael.gerdin at oracle.com Tue Nov 26 14:55:55 2013 From: mikael.gerdin at oracle.com (mikael.gerdin at oracle.com) Date: Tue, 26 Nov 2013 14:55:55 +0000 Subject: hg: hsx/hotspot-gc/hotspot: 8027675: Full collections with Serial slower in JDK 8 compared to 7u40 Message-ID: <20131126145601.A09F162866@hg.openjdk.java.net> Changeset: 55a0da3d420b Author: sjohanss Date: 2013-11-26 14:35 +0100 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/55a0da3d420b 8027675: Full collections with Serial slower in JDK 8 compared to 7u40 Summary: Reduced the number of calls to follow_class_loader and instead marked and pushed the klass holder directly. Also removed unneeded calls to adjust_klass. Reviewed-by: coleenp, jmasa, mgerdin, tschatzl ! src/share/vm/gc_implementation/shared/markSweep.cpp ! src/share/vm/gc_implementation/shared/markSweep.hpp ! src/share/vm/gc_implementation/shared/markSweep.inline.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceMirrorKlass.cpp ! src/share/vm/oops/objArrayKlass.cpp From vladimir.kozlov at oracle.com Thu Nov 28 02:49:14 2013 From: vladimir.kozlov at oracle.com (Vladimir Kozlov) Date: Wed, 27 Nov 2013 18:49:14 -0800 Subject: Preliminary review for 8028107: Kitchensink crashed with EAV In-Reply-To: <5296A1A0.2010908@oracle.com> References: <5296A1A0.2010908@oracle.com> Message-ID: <5296AF2A.8090806@oracle.com> Additional note. The code does "lock" nmethod (which is actually the field nm:_lock_count increment): nmethod* callee_nm = callee_method->code(); nmethodLocker nl_callee(callee_nm); but unloading code does not check it (is_locked_by_vm()) because it is too late anyway. John Rose suggested to modify nmethodLocker to put related metadata (method, klass) or JavaMirror into thread's handles area (or other reachable from GC place) so that such nmethods will be reachable during GC and be strong roots. It will prevent GC modify nmethod state when a java thread works with nmethod. Thanks, Vladimir On 11/27/13 5:51 PM, Vladimir Kozlov wrote: > https://bugs.openjdk.java.net/browse/JDK-8028107 > > It is very rare case. Last time it was 1 year ago: > > https://bugs.openjdk.java.net/browse/JDK-7199505 > > nmethod unloading (nmethod::make_unloaded()) happens only during safepoint when it contains pointers (embedded or in oop > map, relocation info) to dead java objects (see nmethod::can_unload()). > > It can only happens when a nmethod is NOT on call stack. GCs have path over nmethods on stack and they are treated as > strong roots. Igor and I looked on GC code and verified it. > > I instrumented nmethod::make_unloaded() to see if we may unloading nmethods on stack and ran kitchensink for few day. No > failures. > > The only place left is compiled inline caches. We DO clean up them at the end of safepoint if unloading happens: > > if (is_in_use()) { > // Transitioning directly from live to unloaded -- so > // we need to force a cache clean-up; remember this > // for later on. > CodeCache::set_needs_cache_clean(true); > } > > But there is only place where we may create new compiledIC after safepoint when we are resolving call from compiled > code: SharedRuntime::resolve_sub_helper(). > > In this method we record nmethod in local var: > > CompiledICInfo virtual_call_info; > > CompiledIC::compute_monomorphic_entry(callee_method, h_klass, > is_optimized, static_bound, virtual_call_info, > CHECK_(methodHandle())); > > then we take a lock (which is safepoint): > > // grab lock, check for deoptimization and potentially patch caller > { > MutexLocker ml_patch(CompiledIC_lock); > > and then create compiledIC based on info in CompiledICInfo: > > CompiledIC* inline_cache = CompiledIC_before(caller_nm, caller_frame.pc()); > if (inline_cache->is_clean()) { > inline_cache->set_to_monomorphic(virtual_call_info); > } > > at this point nmethod could be unloaded already during above lock/safepoint. But call site is patched and will be used > to call this nmethod. > > Note, we can't compute entry point under the same lock because: > > // Compute entry points. This might require generation of C2I converter > // frames, so we cannot be holding any locks here. Furthermore, the > // computation of the entry points is independent of patching the call. > > > Please, comment or find any flaws in my logic. The bug is impossible to reproduce. > > I am suggesting next fix. > > src/share/vm/runtime/sharedRuntime.cpp > @@ -1258,12 +1258,14 @@ > > // Now that we are ready to patch if the Method* was redefined then > // don't update call site and let the caller retry. > - > - if (!callee_method->is_old()) { > + // Don't update call site if nmethod was unloaded during safepoint > + // which may happened during locking above. > + if (!callee_method->is_old() && (callee_method->code() == callee_nm)) { > #ifdef ASSERT > // We must not try to patch to jump to an already unloaded method. > if (dest_entry_point != 0) { > - assert(CodeCache::find_blob(dest_entry_point) != NULL, > + CodeBlob* cb = CodeCache::find_blob(dest_entry_point); > + assert((cb != NULL) && cb->is_nmethod() && ((nmethod*)cb)->is_in_use(), > "should not unload nmethod while locked"); > } > #endif > > > Thanks, > Vladimir From mikael.gerdin at oracle.com Thu Nov 28 09:39:32 2013 From: mikael.gerdin at oracle.com (Mikael Gerdin) Date: Thu, 28 Nov 2013 10:39:32 +0100 Subject: Preliminary review for 8028107: Kitchensink crashed with EAV In-Reply-To: <5296AF2A.8090806@oracle.com> References: <5296A1A0.2010908@oracle.com> <5296AF2A.8090806@oracle.com> Message-ID: <14914221.uuAyT6pDiS@mgerdin03> Vladimir, On Wednesday 27 November 2013 18.49.14 Vladimir Kozlov wrote: > Additional note. The code does "lock" nmethod (which is actually the field > nm:_lock_count increment): > > nmethod* callee_nm = callee_method->code(); > nmethodLocker nl_callee(callee_nm); > > but unloading code does not check it (is_locked_by_vm()) because it is too > late anyway. > > John Rose suggested to modify nmethodLocker to put related metadata (method, > klass) or JavaMirror into thread's handles area (or other reachable from GC > place) so that such nmethods will be reachable during GC and be strong > roots. It will prevent GC modify nmethod state when a java thread works > with nmethod. I read through your original explanation below and from a GC perspective your explanation seems plausible. I don't really know how compiledICs work, but it is possible that an nmethod can be unloaded at a safepoint if any of the objects it references are not live. I've had problems with this when working on class unloading for G1 previously. I don't think it would be enough to create handles for the nmethod's metadata since the GC does not actually follow any pointers to find nmethods. As far as I understand from the sources nmethod unloading is _forced_ if any java object which is embedded in an nmethod is dead. If you want to make sure that the nmethod is not unloaded then you would need to register your nmethod to a global list and change all the gc code to call oops_do on the nmethods on this list with the correct closures, basically some sort of nmethod handle stack. I'd prefer to avoid this approach since it will add more complexity to GC root scanning and would further complicate class unloading for G1. I would also like to add that since this nmethod is the only referent of the java object that caused the unloading it is highly likely that it will be unloaded at the next full gc unless it's on a thread stack. Keeping the nmethod alive here seems to only delay the inevitable. /Mikael > > Thanks, > Vladimir > > On 11/27/13 5:51 PM, Vladimir Kozlov wrote: > > https://bugs.openjdk.java.net/browse/JDK-8028107 > > > > It is very rare case. Last time it was 1 year ago: > > > > https://bugs.openjdk.java.net/browse/JDK-7199505 > > > > nmethod unloading (nmethod::make_unloaded()) happens only during safepoint > > when it contains pointers (embedded or in oop map, relocation info) to > > dead java objects (see nmethod::can_unload()). > > > > It can only happens when a nmethod is NOT on call stack. GCs have path > > over nmethods on stack and they are treated as strong roots. Igor and I > > looked on GC code and verified it. > > > > I instrumented nmethod::make_unloaded() to see if we may unloading > > nmethods on stack and ran kitchensink for few day. No failures. > > > > The only place left is compiled inline caches. We DO clean up them at the end of safepoint if unloading happens: > > if (is_in_use()) { > > > > // Transitioning directly from live to unloaded -- so > > // we need to force a cache clean-up; remember this > > // for later on. > > CodeCache::set_needs_cache_clean(true); > > > > } > > > > But there is only place where we may create new compiledIC after safepoint > > when we are resolving call from compiled code: > > SharedRuntime::resolve_sub_helper(). > > > > In this method we record nmethod in local var: > > CompiledICInfo virtual_call_info; > > > > CompiledIC::compute_monomorphic_entry(callee_method, h_klass, > > > > is_optimized, static_bound, virtual_call_info, > > CHECK_(methodHandle())); > > > > then we take a lock (which is safepoint): > > // grab lock, check for deoptimization and potentially patch caller > > { > > > > MutexLocker ml_patch(CompiledIC_lock); > > > > and then create compiledIC based on info in CompiledICInfo: > > CompiledIC* inline_cache = CompiledIC_before(caller_nm, > > caller_frame.pc()); > > if (inline_cache->is_clean()) { > > > > inline_cache->set_to_monomorphic(virtual_call_info); > > > > } > > > > at this point nmethod could be unloaded already during above > > lock/safepoint. But call site is patched and will be used to call this > > nmethod. > > > > Note, we can't compute entry point under the same lock because: > > // Compute entry points. This might require generation of C2I converter > > // frames, so we cannot be holding any locks here. Furthermore, the > > // computation of the entry points is independent of patching the call. > > > > Please, comment or find any flaws in my logic. The bug is impossible to > > reproduce. > > > > I am suggesting next fix. > > > > src/share/vm/runtime/sharedRuntime.cpp > > @@ -1258,12 +1258,14 @@ > > > > // Now that we are ready to patch if the Method* was redefined then > > // don't update call site and let the caller retry. > > > > - > > - if (!callee_method->is_old()) { > > + // Don't update call site if nmethod was unloaded during safepoint > > + // which may happened during locking above. > > + if (!callee_method->is_old() && (callee_method->code() == callee_nm)) > > {> > > #ifdef ASSERT > > > > // We must not try to patch to jump to an already unloaded method. > > if (dest_entry_point != 0) { > > > > - assert(CodeCache::find_blob(dest_entry_point) != NULL, > > + CodeBlob* cb = CodeCache::find_blob(dest_entry_point); > > + assert((cb != NULL) && cb->is_nmethod() && > > ((nmethod*)cb)->is_in_use(),> > > "should not unload nmethod while locked"); > > > > } > > > > #endif > > > > Thanks, > > Vladimir From per.liden at oracle.com Thu Nov 28 16:49:53 2013 From: per.liden at oracle.com (Per Liden) Date: Thu, 28 Nov 2013 17:49:53 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled Message-ID: <52977431.7000403@oracle.com> Summary: When activating/deactivating the G1 pre-barrier all SATB queues are looped through and have their active state set accordingly. There is one queue per Java thread and a shared queue for all non-Java threads. The loop done to set the active state of all queues forgets to set the active state on the shared queue. I suspect this was missed because the logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite a bit of verification code. This patch also moves this verification code out into a separate function. Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ https://bugs.openjdk.java.net/browse/JDK-8029162 cheers, /Per From per.liden at oracle.com Thu Nov 28 16:50:01 2013 From: per.liden at oracle.com (Per Liden) Date: Thu, 28 Nov 2013 17:50:01 +0100 Subject: RFR(s): 8029255: G1: Reference processing should not enqueue references on the shared SATB queue Message-ID: <52977439.4030302@oracle.com> Summary: A side effect of fixing JDK-8029162 (G1: Shared SATB queue never enabled) is that the reference processor will start to add references to the shared SATB queue when enqueuing discovered references. This will later cause ConcurrentMark::verify_no_cset_oops() to fail because we now have enqueued references in the SATB qeueue which points into the collection set (which will be empty after the collection). This patch makes sure we avoid doing pre-barriers, by instead doing raw stores followed by a post-barrier. This patch also removes an unused constructor and the unnecessary caching of the barrier set in the ReferenceProcessor. So use of _bs was replaced by oopDesc::bs(). Further, the cached barrier set was only set/used if discovered_list_needs_barrier was true, but with this change we will need the barrier set in other cases too. Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) http://cr.openjdk.java.net/~pliden/8029255/webrev.0/ https://bugs.openjdk.java.net/browse/JDK-8029255 cheers, /Per From john.coomes at oracle.com Thu Nov 28 19:05:40 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:05:40 +0000 Subject: hg: hsx/hotspot-gc: Added tag jdk8-b118 for changeset 0a6db1aac998 Message-ID: <20131128190541.0CA2362915@hg.openjdk.java.net> Changeset: 06d512d44c31 Author: cl Date: 2013-11-28 08:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/rev/06d512d44c31 Added tag jdk8-b118 for changeset 0a6db1aac998 ! .hgtags From john.coomes at oracle.com Thu Nov 28 19:05:46 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:05:46 +0000 Subject: hg: hsx/hotspot-gc/corba: Added tag jdk8-b118 for changeset d6820a414f18 Message-ID: <20131128190549.5F13662916@hg.openjdk.java.net> Changeset: 5029f982dfae Author: cl Date: 2013-11-28 08:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/corba/rev/5029f982dfae Added tag jdk8-b118 for changeset d6820a414f18 ! .hgtags From john.coomes at oracle.com Thu Nov 28 19:06:27 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:06:27 +0000 Subject: hg: hsx/hotspot-gc/jaxws: Added tag jdk8-b118 for changeset 76a598cf50c4 Message-ID: <20131128190640.ABC3862918@hg.openjdk.java.net> Changeset: 7ac7d1afd966 Author: cl Date: 2013-11-28 08:23 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxws/rev/7ac7d1afd966 Added tag jdk8-b118 for changeset 76a598cf50c4 ! .hgtags From john.coomes at oracle.com Thu Nov 28 19:05:59 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:05:59 +0000 Subject: hg: hsx/hotspot-gc/jaxp: Added tag jdk8-b118 for changeset e4e5069250e7 Message-ID: <20131128190604.90ED662917@hg.openjdk.java.net> Changeset: 6b37ae056340 Author: cl Date: 2013-11-28 08:23 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jaxp/rev/6b37ae056340 Added tag jdk8-b118 for changeset e4e5069250e7 ! .hgtags From john.coomes at oracle.com Thu Nov 28 19:07:15 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:07:15 +0000 Subject: hg: hsx/hotspot-gc/jdk: 4 new changesets Message-ID: <20131128190846.C5DAB62919@hg.openjdk.java.net> Changeset: 6c1f5c7baab0 Author: ksrini Date: 2013-11-21 12:01 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/6c1f5c7baab0 8028645: [infra] purge applet demos from the Solaris distros Reviewed-by: erikj ! makefiles/CompileDemos.gmk Changeset: 66c98bd811f1 Author: rgallard Date: 2013-11-25 20:19 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/66c98bd811f1 8029043: Update nroff files for JDK 8 Reviewed-by: weijun, alanb, ksrini, naoto ! src/bsd/doc/man/appletviewer.1 ! src/bsd/doc/man/extcheck.1 ! src/bsd/doc/man/idlj.1 ! src/bsd/doc/man/jar.1 ! src/bsd/doc/man/jarsigner.1 ! src/bsd/doc/man/java.1 ! src/bsd/doc/man/javac.1 ! src/bsd/doc/man/javadoc.1 ! src/bsd/doc/man/javah.1 ! src/bsd/doc/man/javap.1 + src/bsd/doc/man/jcmd.1 ! src/bsd/doc/man/jconsole.1 ! src/bsd/doc/man/jdb.1 + src/bsd/doc/man/jdeps.1 ! src/bsd/doc/man/jhat.1 ! src/bsd/doc/man/jinfo.1 + src/bsd/doc/man/jjs.1 ! src/bsd/doc/man/jmap.1 ! src/bsd/doc/man/jps.1 ! src/bsd/doc/man/jrunscript.1 ! src/bsd/doc/man/jsadebugd.1 ! src/bsd/doc/man/jstack.1 ! src/bsd/doc/man/jstat.1 ! src/bsd/doc/man/jstatd.1 ! src/bsd/doc/man/keytool.1 ! src/bsd/doc/man/native2ascii.1 ! src/bsd/doc/man/orbd.1 ! src/bsd/doc/man/pack200.1 ! src/bsd/doc/man/policytool.1 ! src/bsd/doc/man/rmic.1 ! src/bsd/doc/man/rmid.1 ! src/bsd/doc/man/rmiregistry.1 ! src/bsd/doc/man/schemagen.1 ! src/bsd/doc/man/serialver.1 ! src/bsd/doc/man/servertool.1 ! src/bsd/doc/man/tnameserv.1 ! src/bsd/doc/man/unpack200.1 ! src/bsd/doc/man/wsgen.1 ! src/bsd/doc/man/wsimport.1 ! src/bsd/doc/man/xjc.1 ! src/linux/doc/man/appletviewer.1 ! src/linux/doc/man/extcheck.1 ! src/linux/doc/man/idlj.1 ! src/linux/doc/man/jar.1 ! src/linux/doc/man/jarsigner.1 ! src/linux/doc/man/java.1 ! src/linux/doc/man/javac.1 ! src/linux/doc/man/javadoc.1 ! src/linux/doc/man/javah.1 ! src/linux/doc/man/javap.1 ! src/linux/doc/man/jcmd.1 ! src/linux/doc/man/jconsole.1 ! src/linux/doc/man/jdb.1 + src/linux/doc/man/jdeps.1 ! src/linux/doc/man/jhat.1 ! src/linux/doc/man/jinfo.1 + src/linux/doc/man/jjs.1 ! src/linux/doc/man/jmap.1 ! src/linux/doc/man/jps.1 ! src/linux/doc/man/jrunscript.1 ! src/linux/doc/man/jsadebugd.1 ! src/linux/doc/man/jstack.1 ! src/linux/doc/man/jstat.1 ! src/linux/doc/man/jstatd.1 ! src/linux/doc/man/keytool.1 ! src/linux/doc/man/native2ascii.1 ! src/linux/doc/man/orbd.1 ! src/linux/doc/man/pack200.1 ! src/linux/doc/man/policytool.1 ! src/linux/doc/man/rmic.1 ! src/linux/doc/man/rmid.1 ! src/linux/doc/man/rmiregistry.1 ! src/linux/doc/man/schemagen.1 ! src/linux/doc/man/serialver.1 ! src/linux/doc/man/servertool.1 ! src/linux/doc/man/tnameserv.1 ! src/linux/doc/man/unpack200.1 ! src/linux/doc/man/wsgen.1 ! src/linux/doc/man/wsimport.1 ! src/linux/doc/man/xjc.1 ! src/solaris/doc/sun/man/man1/appletviewer.1 ! src/solaris/doc/sun/man/man1/extcheck.1 ! src/solaris/doc/sun/man/man1/idlj.1 ! src/solaris/doc/sun/man/man1/jar.1 ! src/solaris/doc/sun/man/man1/jarsigner.1 ! src/solaris/doc/sun/man/man1/java.1 ! src/solaris/doc/sun/man/man1/javac.1 ! src/solaris/doc/sun/man/man1/javadoc.1 ! src/solaris/doc/sun/man/man1/javah.1 ! src/solaris/doc/sun/man/man1/javap.1 ! src/solaris/doc/sun/man/man1/jcmd.1 ! src/solaris/doc/sun/man/man1/jconsole.1 ! src/solaris/doc/sun/man/man1/jdb.1 + src/solaris/doc/sun/man/man1/jdeps.1 ! src/solaris/doc/sun/man/man1/jhat.1 ! src/solaris/doc/sun/man/man1/jinfo.1 + src/solaris/doc/sun/man/man1/jjs.1 ! src/solaris/doc/sun/man/man1/jmap.1 ! src/solaris/doc/sun/man/man1/jps.1 ! src/solaris/doc/sun/man/man1/jrunscript.1 ! src/solaris/doc/sun/man/man1/jsadebugd.1 ! src/solaris/doc/sun/man/man1/jstack.1 ! src/solaris/doc/sun/man/man1/jstat.1 ! src/solaris/doc/sun/man/man1/jstatd.1 ! src/solaris/doc/sun/man/man1/keytool.1 ! src/solaris/doc/sun/man/man1/native2ascii.1 ! src/solaris/doc/sun/man/man1/orbd.1 ! src/solaris/doc/sun/man/man1/pack200.1 ! src/solaris/doc/sun/man/man1/policytool.1 ! src/solaris/doc/sun/man/man1/rmic.1 ! src/solaris/doc/sun/man/man1/rmid.1 ! src/solaris/doc/sun/man/man1/rmiregistry.1 ! src/solaris/doc/sun/man/man1/schemagen.1 ! src/solaris/doc/sun/man/man1/serialver.1 ! src/solaris/doc/sun/man/man1/servertool.1 ! src/solaris/doc/sun/man/man1/tnameserv.1 ! src/solaris/doc/sun/man/man1/unpack200.1 ! src/solaris/doc/sun/man/man1/wsgen.1 ! src/solaris/doc/sun/man/man1/wsimport.1 ! src/solaris/doc/sun/man/man1/xjc.1 Changeset: 28ca338366ff Author: rgallard Date: 2013-11-25 20:22 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/28ca338366ff Merge Changeset: a1c49f8881ae Author: cl Date: 2013-11-28 08:24 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/jdk/rev/a1c49f8881ae Added tag jdk8-b118 for changeset 28ca338366ff ! .hgtags From john.coomes at oracle.com Thu Nov 28 19:10:43 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:10:43 +0000 Subject: hg: hsx/hotspot-gc/langtools: Added tag jdk8-b118 for changeset 4fd6a7ff8c06 Message-ID: <20131128191055.296F16291A@hg.openjdk.java.net> Changeset: 1f6ffcd56363 Author: cl Date: 2013-11-28 08:24 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/langtools/rev/1f6ffcd56363 Added tag jdk8-b118 for changeset 4fd6a7ff8c06 ! .hgtags From john.coomes at oracle.com Thu Nov 28 19:11:05 2013 From: john.coomes at oracle.com (john.coomes at oracle.com) Date: Thu, 28 Nov 2013 19:11:05 +0000 Subject: hg: hsx/hotspot-gc/nashorn: Added tag jdk8-b118 for changeset 8d014b039b44 Message-ID: <20131128191108.63EA26291B@hg.openjdk.java.net> Changeset: b55a011cf8ae Author: cl Date: 2013-11-28 08:24 -0800 URL: http://hg.openjdk.java.net/hsx/hotspot-gc/nashorn/rev/b55a011cf8ae Added tag jdk8-b118 for changeset 8d014b039b44 ! .hgtags From vladimir.kozlov at oracle.com Thu Nov 28 22:55:56 2013 From: vladimir.kozlov at oracle.com (Vladimir Kozlov) Date: Thu, 28 Nov 2013 14:55:56 -0800 Subject: Preliminary review for 8028107: Kitchensink crashed with EAV In-Reply-To: <14914221.uuAyT6pDiS@mgerdin03> References: <5296A1A0.2010908@oracle.com> <5296AF2A.8090806@oracle.com> <14914221.uuAyT6pDiS@mgerdin03> Message-ID: <5297C9FC.6060405@oracle.com> Thank you, Mikael It simplifies my work. I will concentrate on safely bailout from situation when nmethod is unloaded. We need to call c2i adapter instead which should be present at that time. Regards, Vladimir On 11/28/13 1:39 AM, Mikael Gerdin wrote: > Vladimir, > > On Wednesday 27 November 2013 18.49.14 Vladimir Kozlov wrote: >> Additional note. The code does "lock" nmethod (which is actually the field >> nm:_lock_count increment): >> >> nmethod* callee_nm = callee_method->code(); >> nmethodLocker nl_callee(callee_nm); >> >> but unloading code does not check it (is_locked_by_vm()) because it is too >> late anyway. >> >> John Rose suggested to modify nmethodLocker to put related metadata (method, >> klass) or JavaMirror into thread's handles area (or other reachable from GC >> place) so that such nmethods will be reachable during GC and be strong >> roots. It will prevent GC modify nmethod state when a java thread works >> with nmethod. > > I read through your original explanation below and from a GC perspective your > explanation seems plausible. I don't really know how compiledICs work, but it > is possible that an nmethod can be unloaded at a safepoint if any of the > objects it references are not live. I've had problems with this when working > on class unloading for G1 previously. > > I don't think it would be enough to create handles for the nmethod's metadata > since the GC does not actually follow any pointers to find nmethods. > As far as I understand from the sources nmethod unloading is _forced_ if any > java object which is embedded in an nmethod is dead. > If you want to make sure that the nmethod is not unloaded then you would need > to register your nmethod to a global list and change all the gc code to call > oops_do on the nmethods on this list with the correct closures, basically some > sort of nmethod handle stack. I'd prefer to avoid this approach since it will > add more complexity to GC root scanning and would further complicate class > unloading for G1. > > I would also like to add that since this nmethod is the only referent of the > java object that caused the unloading it is highly likely that it will be > unloaded at the next full gc unless it's on a thread stack. Keeping the > nmethod alive here seems to only delay the inevitable. > > /Mikael > >> >> Thanks, >> Vladimir >> >> On 11/27/13 5:51 PM, Vladimir Kozlov wrote: >>> https://bugs.openjdk.java.net/browse/JDK-8028107 >>> >>> It is very rare case. Last time it was 1 year ago: >>> >>> https://bugs.openjdk.java.net/browse/JDK-7199505 >>> >>> nmethod unloading (nmethod::make_unloaded()) happens only during safepoint >>> when it contains pointers (embedded or in oop map, relocation info) to >>> dead java objects (see nmethod::can_unload()). >>> >>> It can only happens when a nmethod is NOT on call stack. GCs have path >>> over nmethods on stack and they are treated as strong roots. Igor and I >>> looked on GC code and verified it. >>> >>> I instrumented nmethod::make_unloaded() to see if we may unloading >>> nmethods on stack and ran kitchensink for few day. No failures. >>> >>> The only place left is compiled inline caches. We DO clean up them at the > end of safepoint if unloading happens: >>> if (is_in_use()) { >>> >>> // Transitioning directly from live to unloaded -- so >>> // we need to force a cache clean-up; remember this >>> // for later on. >>> CodeCache::set_needs_cache_clean(true); >>> >>> } >>> >>> But there is only place where we may create new compiledIC after safepoint >>> when we are resolving call from compiled code: >>> SharedRuntime::resolve_sub_helper(). >>> >>> In this method we record nmethod in local var: >>> CompiledICInfo virtual_call_info; >>> >>> CompiledIC::compute_monomorphic_entry(callee_method, h_klass, >>> >>> is_optimized, static_bound, virtual_call_info, >>> CHECK_(methodHandle())); >>> >>> then we take a lock (which is safepoint): >>> // grab lock, check for deoptimization and potentially patch caller >>> { >>> >>> MutexLocker ml_patch(CompiledIC_lock); >>> >>> and then create compiledIC based on info in CompiledICInfo: >>> CompiledIC* inline_cache = CompiledIC_before(caller_nm, >>> caller_frame.pc()); >>> if (inline_cache->is_clean()) { >>> >>> inline_cache->set_to_monomorphic(virtual_call_info); >>> >>> } >>> >>> at this point nmethod could be unloaded already during above >>> lock/safepoint. But call site is patched and will be used to call this >>> nmethod. >>> >>> Note, we can't compute entry point under the same lock because: >>> // Compute entry points. This might require generation of C2I converter >>> // frames, so we cannot be holding any locks here. Furthermore, the >>> // computation of the entry points is independent of patching the call. >>> >>> Please, comment or find any flaws in my logic. The bug is impossible to >>> reproduce. >>> >>> I am suggesting next fix. >>> >>> src/share/vm/runtime/sharedRuntime.cpp >>> @@ -1258,12 +1258,14 @@ >>> >>> // Now that we are ready to patch if the Method* was redefined then >>> // don't update call site and let the caller retry. >>> >>> - >>> - if (!callee_method->is_old()) { >>> + // Don't update call site if nmethod was unloaded during safepoint >>> + // which may happened during locking above. >>> + if (!callee_method->is_old() && (callee_method->code() == callee_nm)) >>> {> >>> #ifdef ASSERT >>> >>> // We must not try to patch to jump to an already unloaded method. >>> if (dest_entry_point != 0) { >>> >>> - assert(CodeCache::find_blob(dest_entry_point) != NULL, >>> + CodeBlob* cb = CodeCache::find_blob(dest_entry_point); >>> + assert((cb != NULL) && cb->is_nmethod() && >>> ((nmethod*)cb)->is_in_use(),> >>> "should not unload nmethod while locked"); >>> >>> } >>> >>> #endif >>> >>> Thanks, >>> Vladimir > From mikael.gerdin at oracle.com Fri Nov 29 07:59:48 2013 From: mikael.gerdin at oracle.com (Mikael Gerdin) Date: Fri, 29 Nov 2013 08:59:48 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <52977431.7000403@oracle.com> References: <52977431.7000403@oracle.com> Message-ID: <2111344.DBmEYcS4uT@mgerdin03> Per, On Thursday 28 November 2013 17.49.53 Per Liden wrote: > Summary: When activating/deactivating the G1 pre-barrier all SATB queues > are looped through and have their active state set accordingly. There is > one queue per Java thread and a shared queue for all non-Java threads. > The loop done to set the active state of all queues forgets to set the > active state on the shared queue. I suspect this was missed because the > logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite > a bit of verification code. This patch also moves this verification code > out into a separate function. > > Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) > > http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ The change looks good to me. Since this change enables the bug in JDK-8029255 I assume that these changes must be applied together? /Mikael > > https://bugs.openjdk.java.net/browse/JDK-8029162 > > cheers, > /Per From per.liden at oracle.com Fri Nov 29 08:47:31 2013 From: per.liden at oracle.com (Per Liden) Date: Fri, 29 Nov 2013 09:47:31 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <2111344.DBmEYcS4uT@mgerdin03> References: <52977431.7000403@oracle.com> <2111344.DBmEYcS4uT@mgerdin03> Message-ID: <529854A3.5020408@oracle.com> Hi Mikael, On 2013-11-29 08:59, Mikael Gerdin wrote: > Per, > > On Thursday 28 November 2013 17.49.53 Per Liden wrote: >> Summary: When activating/deactivating the G1 pre-barrier all SATB queues >> are looped through and have their active state set accordingly. There is >> one queue per Java thread and a shared queue for all non-Java threads. >> The loop done to set the active state of all queues forgets to set the >> active state on the shared queue. I suspect this was missed because the >> logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite >> a bit of verification code. This patch also moves this verification code >> out into a separate function. >> >> Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) >> >> http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ > The change looks good to me. Thanks for reviewing! > > Since this change enables the bug in JDK-8029255 I assume that these changes > must be applied together? Not necessarily applied together, but yes, JDK-892255 needs to be applied first. That patch is not dependent on this fix. cheers, /Per > > /Mikael > >> https://bugs.openjdk.java.net/browse/JDK-8029162 >> >> cheers, >> /Per From thomas.schatzl at oracle.com Fri Nov 29 09:01:15 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Fri, 29 Nov 2013 10:01:15 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <52977431.7000403@oracle.com> References: <52977431.7000403@oracle.com> Message-ID: <1385715675.2843.4.camel@cirrus> Hi, On Thu, 2013-11-28 at 17:49 +0100, Per Liden wrote: > Summary: When activating/deactivating the G1 pre-barrier all SATB queues > are looped through and have their active state set accordingly. There is > one queue per Java thread and a shared queue for all non-Java threads. > The loop done to set the active state of all queues forgets to set the > active state on the shared queue. I suspect this was missed because the > logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite > a bit of verification code. This patch also moves this verification code > out into a separate function. I actually suspect that the shared queue has intentionally not been enabled so that the reference queue code becomes simpler - just do an oop_store() instead of manually invoking the barrier. So I think this change is just breaking "fine" code (for an arbitrary definition of fine :), "fixed" then by JDK-8029255 . > Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) > > http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ > > https://bugs.openjdk.java.net/browse/JDK-8029162 Looks good. Will have a look at the other change right away. Thomas From thomas.schatzl at oracle.com Fri Nov 29 09:18:00 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Fri, 29 Nov 2013 10:18:00 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <529854A3.5020408@oracle.com> References: <52977431.7000403@oracle.com> <2111344.DBmEYcS4uT@mgerdin03> <529854A3.5020408@oracle.com> Message-ID: <1385716680.2843.7.camel@cirrus> Hi Per, On Fri, 2013-11-29 at 09:47 +0100, Per Liden wrote: > Hi Mikael, > > On 2013-11-29 08:59, Mikael Gerdin wrote: > > Per, > > > > On Thursday 28 November 2013 17.49.53 Per Liden wrote: > >> Summary: When activating/deactivating the G1 pre-barrier all SATB queues > >> are looped through and have their active state set accordingly. There is > >> one queue per Java thread and a shared queue for all non-Java threads. > >> The loop done to set the active state of all queues forgets to set the > >> active state on the shared queue. I suspect this was missed because the > >> logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite > >> a bit of verification code. This patch also moves this verification code > >> out into a separate function. > >> > >> Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) > >> > >> http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ > > The change looks good to me. > > Thanks for reviewing! > > > > > Since this change enables the bug in JDK-8029255 I assume that these changes > > must be applied together? > > Not necessarily applied together, but yes, JDK-892255 needs to be > applied first. That patch is not dependent on this fix. Please strongly consider to push them in the same changeset (you can set two CRs in the header). This avoids somebody ever checking out/using a bugged version. Thanks, Thomas From per.liden at oracle.com Fri Nov 29 09:21:08 2013 From: per.liden at oracle.com (Per Liden) Date: Fri, 29 Nov 2013 10:21:08 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <1385715675.2843.4.camel@cirrus> References: <52977431.7000403@oracle.com> <1385715675.2843.4.camel@cirrus> Message-ID: <52985C84.8070007@oracle.com> Hi Thomas, On 2013-11-29 10:01, Thomas Schatzl wrote: > Hi, > > On Thu, 2013-11-28 at 17:49 +0100, Per Liden wrote: >> Summary: When activating/deactivating the G1 pre-barrier all SATB queues >> are looped through and have their active state set accordingly. There is >> one queue per Java thread and a shared queue for all non-Java threads. >> The loop done to set the active state of all queues forgets to set the >> active state on the shared queue. I suspect this was missed because the >> logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite >> a bit of verification code. This patch also moves this verification code >> out into a separate function. > I actually suspect that the shared queue has intentionally not been > enabled so that the reference queue code becomes simpler - just do an > oop_store() instead of manually invoking the barrier. The reference processor is already doing manual barriers in other places so it would seem strange to only leave this part out. But who knows, that might have been the reason... wonder why the shared queue was kept around at all in that case. Oh, well :) > > So I think this change is just breaking "fine" code (for an arbitrary > definition of fine :), "fixed" then by JDK-8029255 . > >> Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) >> >> http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ >> >> https://bugs.openjdk.java.net/browse/JDK-8029162 > Looks good. Will have a look at the other change right away. Thanks a lot! cheers, /Per From mikael.gerdin at oracle.com Fri Nov 29 09:25:59 2013 From: mikael.gerdin at oracle.com (Mikael Gerdin) Date: Fri, 29 Nov 2013 10:25:59 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <1385716680.2843.7.camel@cirrus> References: <52977431.7000403@oracle.com> <529854A3.5020408@oracle.com> <1385716680.2843.7.camel@cirrus> Message-ID: <1708987.CHpAafzoMR@mgerdin03> On Friday 29 November 2013 10.18.00 Thomas Schatzl wrote: > Hi Per, > > On Fri, 2013-11-29 at 09:47 +0100, Per Liden wrote: > > Hi Mikael, > > > > On 2013-11-29 08:59, Mikael Gerdin wrote: > > > Per, > > > > > > On Thursday 28 November 2013 17.49.53 Per Liden wrote: > > >> Summary: When activating/deactivating the G1 pre-barrier all SATB > > >> queues > > >> are looped through and have their active state set accordingly. There > > >> is > > >> one queue per Java thread and a shared queue for all non-Java threads. > > >> The loop done to set the active state of all queues forgets to set the > > >> active state on the shared queue. I suspect this was missed because the > > >> logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite > > >> a bit of verification code. This patch also moves this verification > > >> code > > >> out into a separate function. > > >> > > >> Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) > > >> > > >> http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ > > > > > > The change looks good to me. > > > > Thanks for reviewing! > > > > > Since this change enables the bug in JDK-8029255 I assume that these > > > changes must be applied together? > > > > Not necessarily applied together, but yes, JDK-892255 needs to be > > applied first. That patch is not dependent on this fix. > > Please strongly consider to push them in the same changeset (you can set > two CRs in the header). This avoids somebody ever checking out/using a > bugged version. I agree. /Mikael > > Thanks, > Thomas From per.liden at oracle.com Fri Nov 29 09:33:12 2013 From: per.liden at oracle.com (Per Liden) Date: Fri, 29 Nov 2013 10:33:12 +0100 Subject: RFR(s): 8029162: G1: Shared SATB queue never enabled In-Reply-To: <1708987.CHpAafzoMR@mgerdin03> References: <52977431.7000403@oracle.com> <529854A3.5020408@oracle.com> <1385716680.2843.7.camel@cirrus> <1708987.CHpAafzoMR@mgerdin03> Message-ID: <52985F58.40404@oracle.com> On 2013-11-29 10:25, Mikael Gerdin wrote: > On Friday 29 November 2013 10.18.00 Thomas Schatzl wrote: >> Hi Per, >> >> On Fri, 2013-11-29 at 09:47 +0100, Per Liden wrote: >>> Hi Mikael, >>> >>> On 2013-11-29 08:59, Mikael Gerdin wrote: >>>> Per, >>>> >>>> On Thursday 28 November 2013 17.49.53 Per Liden wrote: >>>>> Summary: When activating/deactivating the G1 pre-barrier all SATB >>>>> queues >>>>> are looped through and have their active state set accordingly. There >>>>> is >>>>> one queue per Java thread and a shared queue for all non-Java threads. >>>>> The loop done to set the active state of all queues forgets to set the >>>>> active state on the shared queue. I suspect this was missed because the >>>>> logic in SATBMarkQueueSet::set_active_all_threads() is mixed with quite >>>>> a bit of verification code. This patch also moves this verification >>>>> code >>>>> out into a separate function. >>>>> >>>>> Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) >>>>> >>>>> http://cr.openjdk.java.net/~pliden/8029162/webrev.0/ >>>> The change looks good to me. >>> Thanks for reviewing! >>> >>>> Since this change enables the bug in JDK-8029255 I assume that these >>>> changes must be applied together? >>> Not necessarily applied together, but yes, JDK-892255 needs to be >>> applied first. That patch is not dependent on this fix. >> Please strongly consider to push them in the same changeset (you can set >> two CRs in the header). This avoids somebody ever checking out/using a >> bugged version. > I agree. Please note that there's no double directed dependency between the patches. As long as JDK-892255 is pushed first there's no risk of checking out a buggy version. cheers, /Per From thomas.schatzl at oracle.com Fri Nov 29 11:37:49 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Fri, 29 Nov 2013 12:37:49 +0100 Subject: RFR(s): 8029255: G1: Reference processing should not enqueue references on the shared SATB queue In-Reply-To: <52977439.4030302@oracle.com> References: <52977439.4030302@oracle.com> Message-ID: <1385725069.2843.81.camel@cirrus> Hi, some comments: On Thu, 2013-11-28 at 17:50 +0100, Per Liden wrote: > Summary: A side effect of fixing JDK-8029162 (G1: Shared SATB queue > never enabled) is that the reference processor will start to add > references to the shared SATB queue when enqueuing discovered > references. This will later cause ConcurrentMark::verify_no_cset_oops() > to fail because we now have enqueued references in the SATB qeueue which > points into the collection set (which will be empty after the > collection). This patch makes sure we avoid doing pre-barriers, by > instead doing raw stores followed by a post-barrier. > > This patch also removes an unused constructor and the unnecessary > caching of the barrier set in the ReferenceProcessor. So use of _bs was > replaced by oopDesc::bs(). Further, the cached barrier set was only Not using the cached values may cause performance problems if multiple threads access it and there is a frequently modified global in the same cache line. I do not think/hope it is a problem here though. > set/used if discovered_list_needs_barrier was true, but with this change > we will need the barrier set in other cases too. > > Testing done: jprt, kitchensink (10 hours), gcbasher (10 hours) > > http://cr.openjdk.java.net/~pliden/8029255/webrev.0/ > > https://bugs.openjdk.java.net/browse/JDK-8029255 > I think I understand the reason for the change, but I do not think the change is good. Background (for others too, it took me a while to understand the reference processing code): The problem why the code cannot use the normal barrier code in all these cases is that collection uses the next and discovered fields of java.lang.Reference for its own purpose, putting references from the cset into the queues. In this process we loose the previous values too, that's why the code cannot just apply the normal barrier - before activating the shared reference queue in 8029162 it was not a problem because the "old" references were dropped immediately when trying to add. It seems that this is not an issue in regards to SATB as these fields are handled somewhat specially always anyway. I would prefer if setting the "next" field of the reference were encapsulated into a method like ReferenceProcessor::set_discovered (e.g. ReferenceProcessor::set_next()), and used instead of inlining set_raw/apply-post-barrier code all the time. There is already a missing call to the post-barrier in referenceProcessor.cpp:366 when storing the self-loop value (That is benign since it does not add a new object to the object graph, but if that is kept, the reason should be documented). Other issues: - (this is more a question than an issue) DiscoveredListIterator::make_active() has some special handling for setting the next field of java.lang.Reference. In particular it does not call the post-barrier because this will fail CT verification in G1. What's the difference between that field and the discovered field in that respect? Also the original code executed the post-barrier on the next field (e.g. referenceProcessor.cpp:366), so if there were a problem, it should already occur, shouldn't it? - there are places where the code for ReferenceProcessor::set_discovered() is inlined for no apparent reason (e.g. at least referenceProcessor.cpp:374, and referenceProcessor.cpp:1256). Could this change (or the one proposed below) also clean this up? - with the change in 8029162 I do not think the code that is enabled by setting _pending_list_uses_discovered_field to false works any more (if it ever worked with G1, see the very first thought in this list). It will trigger the same assertion that this fix wants to fix. If the "old behavior" is not needed any more (I think so), please remove that code first in another CR. The alternative is to fix it I guess. - I still think that 8029162 and this are one and the same issue. :) Given that 8029162 in isolation throws an assertion in debug code (potential CR), it should be pushed in the same changeset as this one. Thanks, Thomas From thomas.schatzl at oracle.com Fri Nov 29 11:52:50 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Fri, 29 Nov 2013 12:52:50 +0100 Subject: RFR(s): 8029255: G1: Reference processing should not enqueue references on the shared SATB queue In-Reply-To: <1385725069.2843.81.camel@cirrus> References: <52977439.4030302@oracle.com> <1385725069.2843.81.camel@cirrus> Message-ID: <1385725970.2843.92.camel@cirrus> Hi, On Fri, 2013-11-29 at 12:37 +0100, Thomas Schatzl wrote: > Hi, > > some comments: > > In this process we loose the previous values too, that's why the code > cannot just apply the normal barrier - before activating the shared > reference queue in 8029162 it was not a problem because the "old" > references were dropped immediately when trying to add. > > It seems that this is not an issue in regards to SATB as these fields > are handled somewhat specially always anyway. and > Other issues: > - (this is more a question than an issue) > DiscoveredListIterator::make_active() has some special handling for > setting the next field of java.lang.Reference. In particular it does not > call the post-barrier because this will fail CT verification in G1. > What's the difference between that field and the discovered field in > that respect? Also the original code executed the post-barrier on the > next field (e.g. referenceProcessor.cpp:366), so if there were a > problem, it should already occur, shouldn't it? Looking at ReferenceProcessor::make_active() again, it calls the pre_barrier on the new value. Maybe this is what should be done when setting the discovered field of the references too to make SATB happy(-ier) (the old value is, as mentioned, overwritten during collection). Thomas From thomas.schatzl at oracle.com Fri Nov 29 12:15:47 2013 From: thomas.schatzl at oracle.com (Thomas Schatzl) Date: Fri, 29 Nov 2013 13:15:47 +0100 Subject: RFR(s): 8029255: G1: Reference processing should not enqueue references on the shared SATB queue In-Reply-To: <1385725970.2843.92.camel@cirrus> References: <52977439.4030302@oracle.com> <1385725069.2843.81.camel@cirrus> <1385725970.2843.92.camel@cirrus> Message-ID: <1385727347.2843.93.camel@cirrus> Hi, On Fri, 2013-11-29 at 12:52 +0100, Thomas Schatzl wrote: > Hi, > > On Fri, 2013-11-29 at 12:37 +0100, Thomas Schatzl wrote: > > Hi, > > > > some comments: > > > > In this process we loose the previous values too, that's why the code > > cannot just apply the normal barrier - before activating the shared > > reference queue in 8029162 it was not a problem because the "old" > > references were dropped immediately when trying to add. > > > > It seems that this is not an issue in regards to SATB as these fields > > are handled somewhat specially always anyway. > > and > > > Other issues: > > - (this is more a question than an issue) > > DiscoveredListIterator::make_active() has some special handling for > > setting the next field of java.lang.Reference. In particular it does not > > call the post-barrier because this will fail CT verification in G1. > > What's the difference between that field and the discovered field in > > that respect? Also the original code executed the post-barrier on the > > next field (e.g. referenceProcessor.cpp:366), so if there were a > > problem, it should already occur, shouldn't it? > > Looking at ReferenceProcessor::make_active() again, it calls the > pre_barrier on the new value. Maybe this is what should be done when > setting the discovered field of the references too to make SATB > happy(-ier) (the old value is, as mentioned, overwritten during > collection). Scratch that, this is not true. Sorry for the noise, Thomas