Hotspot segfaulting on Linux SPARC
David Holmes
david.holmes at oracle.com
Tue Apr 10 21:45:57 UTC 2018
On 11/04/2018 5:39 AM, John Paul Adrian Glaubitz wrote:
> On 04/09/2018 11:31 PM, David Holmes wrote:
>> Looks like you will need compiler folk to jump in here. No idea why
>> this would be linux-sparc specific, but would need to see exactly what
>> was being compiled at the time the invalid code sequence was encountered.
>>
>> Sorry. This is what happens when code is no longer actively maintained.
> Update: I just ran "hg update && hg update --clean", applied the
> following diff
> which includes the suggested fix for 8201360 and the change suggested by
> Zhengyu:
>
> glaubitz at deb4g:/srv/glaubitz/hs$ hg diff
> diff -r 00805b129186 make/hotspot/lib/CompileJvm.gmk
> --- a/make/hotspot/lib/CompileJvm.gmk Tue Apr 10 11:43:40 2018 -0700
> +++ b/make/hotspot/lib/CompileJvm.gmk Tue Apr 10 22:38:12 2018 +0300
> @@ -219,7 +219,7 @@
> TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
> OUTPUT_DIR := $(JVM_LIB_OUTPUTDIR), \
> SRC := $(JVM_SRC_DIRS), \
> - EXTRA_FILES := $(DTRACE_EXTRA_SOURCE_FILES), \
> + EXTRA_FILES := $(BUILD_LIBJVM_EXTRA_FILES)
> $(DTRACE_EXTRA_SOURCE_FILES), \
> EXCLUDES := $(JVM_EXCLUDES), \
> EXCLUDE_FILES := $(JVM_EXCLUDE_FILES), \
> EXCLUDE_PATTERNS := $(JVM_EXCLUDE_PATTERNS), \
> diff -r 00805b129186
> src/hotspot/os_cpu/linux_sparc/vm_version_linux_sparc.cpp
> --- a/src/hotspot/os_cpu/linux_sparc/vm_version_linux_sparc.cpp Tue Apr
> 10 11:43:40 2018 -0700
> +++ b/src/hotspot/os_cpu/linux_sparc/vm_version_linux_sparc.cpp Tue Apr
> 10 22:38:12 2018 +0300
> @@ -48,7 +48,7 @@
> if (vstr != NULL) {
> // We have a matching line and a valid starting point to the
> value of
> // the field, copy the string for keeps.
> - _string = strdup(vstr);
> + _string = os::strdup(vstr, mtInternal);
> break;
> }
> }
>
> and now the crash is different:
>
> glaubitz at deb4g:/srv/glaubitz/hs$
> ./build/linux-sparcv9-normal-server-fastdebug/jdk/bin/java --version
> Error occurred during initialization of boot layer
> java.lang.module.FindException: Error reading module:
> /srv/glaubitz/hs/build/linux-sparcv9-normal-server-fastdebug/jdk/modules/java.datatransfer
>
> Caused by: java.lang.module.InvalidModuleDescriptorException: Illegal
> load factor: -1.2197928E-12
> glaubitz at deb4g:/srv/glaubitz/hs$
>
> What exactly is the load factor?
The only reference to that message I can find is from HashMap/HashSet
where the load factor defines how full the collection becomes before it
resizes. I would have to guess some kind of floating-point issue here -
a very small number rather than 0 perhaps?
David
>
> Adrian
>
More information about the hotspot-dev
mailing list