RFR (XS): Post-merge failure with -XX:+VerifyStrictOopOperations

Roman Kennke rkennke at redhat.com
Tue Feb 14 08:24:03 UTC 2017


Ok. Thanks!

Roman

Am Dienstag, den 14.02.2017, 08:56 +0100 schrieb Aleksey Shipilev:
> jcstress fails at:
> 
> V  [libjvm.so+0x11c4213]  Modules::define_module(_jobject*,
> _jstring*,
> _jstring*, char const* const*, int, Thread*)+0xc03
> 
> ...because there is a naked != oop comparison here:
> 
> $ hg diff
> diff -r f1f3863f4646 src/share/vm/classfile/modules.cpp
> --- a/src/share/vm/classfile/modules.cpp	Mon Feb 13 16:52:53
> 2017 -0500
> +++ b/src/share/vm/classfile/modules.cpp	Tue Feb 14 08:54:55
> 2017 +0100
> @@ -305,7 +305,7 @@
> 
>    oop loader = java_lang_reflect_Module::loader(module_handle());
>    // Make sure loader is not the
> jdk.internal.reflect.DelegatingClassLoader.
> -  if (loader !=
> java_lang_ClassLoader::non_reflection_class_loader(loader)) {
> +  if (!oopDesc::unsafe_equals(loader,
> java_lang_ClassLoader::non_reflection_class_loader(loader))) {
>      THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
>                "Class loader is an invalid delegating class loader");
>    }
> 
> 
> Ok to push this?
> 
> -Aleksey
> 


More information about the shenandoah-dev mailing list