Seems there is an undefined addition to a nullptr in filemap.cpp :
jdk/src/hotspot/share/cds/filemap.cpp:2215:47: runtime error: applying non-zero offset 34358689792 to null pointer
#0 0x107b70c78 in FileMapInfo::heap_region_requested_address() filemap.cpp:2215
#1 0x107b71960 in FileMapInfo::map_heap_region_impl() filemap.cpp:2260
#2 0x107b70e04 in FileMapInfo::map_or_load_heap_region() filemap.cpp:2081
#3 0x1082976ec in MetaspaceShared::map_archives(FileMapInfo*, FileMapInfo*, bool) metaspaceShared.cpp:1344
#4 0x10829699c in MetaspaceShared::initialize_runtime_shared_and_meta_spaces() metaspaceShared.cpp:1098
#5 0x108289530 in Metaspace::global_initialize() metaspace.cpp:736
#6 0x108819da8 in universe_init() universe.cpp:887
#7 0x107d8b4ec in init_globals() init.cpp:133
#8 0x1087e43d8 in Threads::create_vm(JavaVMInitArgs*, bool*) threads.cpp:574
#9 0x107eca96c in JNI_CreateJavaVM jni.cpp:3681
#10 0x102e6e770 in JavaMain java.c:494
#11 0x102e7579c in ThreadJavaMain java_md_macosx.m:679
#12 0x19d38ef90 in _pthread_start+0x84 (libsystem_pthread.dylib:arm64e+0x6f90)
#13 0x19d389d30 in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x1d30)
coding in filemap.cpp is (and CompressedOops::base() seems to return nullptr on this macOS aarch64 machine)
return /*runtime*/ CompressedOops::base() + r->mapping_offset();
This was seen in the OpenJDK build on macOS aarch64 when building with ubsan enabled.
jdk/src/hotspot/share/cds/filemap.cpp:2215:47: runtime error: applying non-zero offset 34358689792 to null pointer
#0 0x107b70c78 in FileMapInfo::heap_region_requested_address() filemap.cpp:2215
#1 0x107b71960 in FileMapInfo::map_heap_region_impl() filemap.cpp:2260
#2 0x107b70e04 in FileMapInfo::map_or_load_heap_region() filemap.cpp:2081
#3 0x1082976ec in MetaspaceShared::map_archives(FileMapInfo*, FileMapInfo*, bool) metaspaceShared.cpp:1344
#4 0x10829699c in MetaspaceShared::initialize_runtime_shared_and_meta_spaces() metaspaceShared.cpp:1098
#5 0x108289530 in Metaspace::global_initialize() metaspace.cpp:736
#6 0x108819da8 in universe_init() universe.cpp:887
#7 0x107d8b4ec in init_globals() init.cpp:133
#8 0x1087e43d8 in Threads::create_vm(JavaVMInitArgs*, bool*) threads.cpp:574
#9 0x107eca96c in JNI_CreateJavaVM jni.cpp:3681
#10 0x102e6e770 in JavaMain java.c:494
#11 0x102e7579c in ThreadJavaMain java_md_macosx.m:679
#12 0x19d38ef90 in _pthread_start+0x84 (libsystem_pthread.dylib:arm64e+0x6f90)
#13 0x19d389d30 in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x1d30)
coding in filemap.cpp is (and CompressedOops::base() seems to return nullptr on this macOS aarch64 machine)
return /*runtime*/ CompressedOops::base() + r->mapping_offset();
This was seen in the OpenJDK build on macOS aarch64 when building with ubsan enabled.
- relates to
-
JDK-8332818 ubsan: archiveHeapLoader.cpp:70:27: runtime error: applying non-zero offset 18446744073707454464 to null pointer
- Resolved
- links to
-
Commit(master) openjdk/jdk/1d2ccaea
-
Review(master) openjdk/jdk/22603