RFR (XXL) [7u60]: nmethod backports (12 backports)

Thomas Schatzl thomas.schatzl at oracle.com
Sun Jan 19 20:03:05 UTC 2014


Hi Vladimir,

  thanks for looking at it...

On Sat, 2014-01-18 at 18:38 -0800, Vladimir Kozlov wrote:
> Thomas,
> 
> Just few notes.
> 
> Make sure when you do backport you should use the main bug id in changeset. For example, for 7145569 backport it should 
> be the same 7145569 and not 8025423.

I will fix that for all CRs and re-upload webrevs tomorrow morning. Sorry.

> In your table second change lists incorrect bug id for jdk8 (the same as in first line). Should be 8013132 instead of 
> 8011343. The same problem with last change: should be 8020123 instead of 8027756. The actual links are correct.

Fixed.

> For 7145569 (in 8 and in 7u60), in sweeper.hpp new method was added which is not used:
> 
> +  static bool is_sweeping(nmethod* which) { return _current == which; }
> 
> In 801313 (both version) typo in globals.hpp - double "print":
> 
> +   diagnostic(bool, VerifySilently, false,                                   \
> +           "Don't print print the verification progress")                    \
> 
> Both above problems are not critical and we can leave them.

I tried to do as little changes as possible to the original code. I do
not mind too keeping or fixing these things.

> I mostly worry about scanning roots from nmethods (codecache) which may lead
>to incorrect nmethods unloading.

How do you think the implementation in this backport differs from the original
version, ie. do you see any problem somewhere with the change?

There is no difference at all for non-G1 collectors for how roots are processed,
the same for non-young gen G1 GC. G1 only unloads code at full gc, which did
not change, so I cannot immediately see any reason for wrong behavior.

> What is ad-hoc testing you listed? And I don't see kitchensink test in your list.

The tests you get when submitting normal, non-full ad-hoc testing.

Test suites for ad-hoc testing: Bigapps (30mins) with weblogic, runThese,
Kitchensink, jtreg tests (HS, JDK Core, JDK Serviceability), VM (NSK) Testbase.

I can give you information about the the exact test lists for that adhoc testing,
but they they are the ones from the default ad-hoc testing, with one or two test
lists added iirc.

I will see if I can set up some kitchensink run for longer testing.

Hth,
Thomas






More information about the hotspot-gc-dev mailing list