[Bug 1838740] Re: libjawt.so inconsistency lets JVM crash
Vladimir Petko
1838740 at bugs.launchpad.net
Sun Aug 6 22:55:42 UTC 2023
Fixed in Debian and fix released as a part of July Security update.
** Bug watch added: Debian Bug tracker #1031521
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031521
** Also affects: openjdk-11 (Debian) via
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031521
Importance: Unknown
Status: Unknown
** Changed in: openjdk-lts (Ubuntu Focal)
Status: Confirmed => Fix Released
** Changed in: openjdk-lts (Ubuntu Bionic)
Status: Confirmed => Invalid
** Changed in: openjdk-lts (Ubuntu)
Status: Confirmed => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to openjdk-lts in Ubuntu.
https://bugs.launchpad.net/bugs/1838740
Title:
libjawt.so inconsistency lets JVM crash
Status in openjdk-lts package in Ubuntu:
Fix Released
Status in openjdk-lts source package in Bionic:
Invalid
Status in openjdk-lts source package in Focal:
Fix Released
Status in openjdk-11 package in Debian:
Unknown
Bug description:
When running an SWT ui with an embedded AWT/Swing component the
library loading process fails as soon as the user clicks on a
JComboBox.
The error visible is: Inconsistency detected by ld.so: dl-lookup.c:
111: check_match: Assertion `version->filename == NULL || !
_dl_name_match_p (version->filename, map)' failed!
############
java --version
openjdk 11.0.4 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3)
OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3, mixed mode, sharing)
############
running the JVM with LD_DEBUG=all exposes the /lib/libjawt.so as the source of the problem.
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/bin/java [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/bin/../lib/jli/libjli.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libc.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libz.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libdl.so.2 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib64/ld-linux-x86-64.so.2 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libm.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libgcc_s.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libawt_xawt.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libawt.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXext.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libX11.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXrender.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXtst.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXi.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjava.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libxcb.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libverify.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXau.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXdmcp.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libbsd.so.0 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/librt.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXinerama.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libselinux.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libresolv.so.2 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libmount.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libffi.so.6 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libpcre.so.3 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libblkid.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libuuid.so.1 [0]
3248: symbol=JAWT_GetAWT; lookup in file=/home/rew/.swt/lib/linux/x86_64/libswt-awt-gtk-4926r21.so [0]
3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so [0]
Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!
############
A quick smoke test revealed that the package from adoptOpenJDK does not have the issue. I can also use the libjawt.so from adoptOpenJDK and run my SWT/AWT ui without any issues.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openjdk-lts/+bug/1838740/+subscriptions
More information about the foundations-bugs
mailing list