STS-4.21.1 just started crashing when on-hover window is triggered; the crash is at:
# C [libwebkit2gtk-4.0.so.37+0xd4f568]
STS-4.22.0 is also affected:
# C [libwebkit2gtk-4.1.so.0+0xd600d8]
Fault
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007ce1be14f568, pid=26351, tid=26352
#
# JRE version: OpenJDK Runtime Environment (21.0.2+13) (build 21.0.2+13-58)
# Java VM: OpenJDK 64-Bit Server VM (21.0.2+13-58, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# C [libwebkit2gtk-4.0.so.37+0xd4f568]
#
Stack
Stack: [0x000078a626100000,0x000078a626200000], sp=0x000078a6261fd8c0, free space=1014k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libwebkit2gtk-4.0.so.37+0xd4f568]
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 5135 org.eclipse.swt.internal.gtk3.GTK3.gtk_main_iteration_do(Z)Z (0 bytes) @ 0x000078a61081df79 [0x000078a61081df20+0x0000000000000059]
J 32226 c2 org.eclipse.swt.widgets.Display.readAndDispatch()Z (88 bytes) @ 0x000078a6119dce0c [0x000078a6119dcd20+0x00000000000000ec]
j org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run()V+564
j org.eclipse.core.databinding.observable.Realm.runWithDefault(Lorg/eclipse/core/databinding/observable/Realm;Ljava/lang/Runnable;)V+12
j org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(Lorg/eclipse/e4/ui/model/application/MApplicationElement;Lorg/eclipse/e4/core/contexts/IEclipseContext;)Ljava/lang/Object;+57
j org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(Lorg/eclipse/e4/ui/model/application/MApplicationElement;)V+20
j org.eclipse.ui.internal.Workbench.lambda$3(Lorg/eclipse/swt/widgets/Display;Lorg/eclipse/ui/application/WorkbenchAdvisor;[I)V+382
j org.eclipse.ui.internal.Workbench$$Lambda+0x000078a5b025a048.run()V+12
j org.eclipse.core.databinding.observable.Realm.runWithDefault(Lorg/eclipse/core/databinding/observable/Realm;Ljava/lang/Runnable;)V+12
j org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Lorg/eclipse/swt/widgets/Display;Lorg/eclipse/ui/application/WorkbenchAdvisor;)I+16
j org.eclipse.ui.PlatformUI.createAndRunWorkbench(Lorg/eclipse/swt/widgets/Display;Lorg/eclipse/ui/application/WorkbenchAdvisor;)I+2
j org.eclipse.ui.internal.ide.application.IDEApplication.start(Lorg/eclipse/equinox/app/IApplicationContext;)Ljava/lang/Object;+113
j org.eclipse.equinox.internal.app.EclipseAppHandle.run(Ljava/lang/Object;)Ljava/lang/Object;+138
j org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Ljava/lang/Object;)Ljava/lang/Object;+85
j org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Ljava/lang/Object;)Ljava/lang/Object;+79
j org.eclipse.core.runtime.adaptor.EclipseStarter.run(Ljava/lang/Object;)Ljava/lang/Object;+99
j org.eclipse.core.runtime.adaptor.EclipseStarter.run([Ljava/lang/String;Ljava/lang/Runnable;)Ljava/lang/Object;+132
j java.lang.invoke.DirectMethodHandle$Holder.invokeStatic(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+11 java.base@21.0.2
j java.lang.invoke.LambdaForm$MH+0x000078a5b0019800.invoke(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+54 java.base@21.0.2
j java.lang.invoke.LambdaForm$MH+0x000078a5b0002c00.invokeExact_MT(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+22 java.base@21.0.2
j jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+72 java.base@21.0.2
j jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+23 java.base@21.0.2
j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+102 java.base@21.0.2
j org.eclipse.equinox.launcher.Main.invokeFramework([Ljava/lang/String;[Ljava/net/URL;)V+201
j org.eclipse.equinox.launcher.Main.basicRun([Ljava/lang/String;)V+159
j org.eclipse.equinox.launcher.Main.run([Ljava/lang/String;)I+4
j org.eclipse.equinox.launcher.Main.main([Ljava/lang/String;)V+10
v ~StubRoutines::call_stub 0x000078a60ff37cc6
Environment
## Hardware Information:
Hardware Model: Dell Inc. XPS 13 9310
Memory: 8.0 GiB
Processor: 11th Gen Intel® Core™ i5-1135G7 × 8
Graphics: Intel® Xe Graphics (TGL GT2)
Disk Capacity: 256.1 GB
## Software Information:
Firmware Version: 3.22.0
OS Name: Ubuntu 23.10
OS Build: (null)
OS Type: 64-bit
GNOME Version: Not Available
Windowing System: Wayland
Kernel Version: Linux 6.5.0-27-generic
This is a known bug, likely due to an unresolved hardware acceleration bug, that has been addressed for the upcoming 2024-06 (4.32) release scheduled for June 12, 2024:
In my case, this was apparently triggered from an OS update of the WebKit library. As noted in the issues by Dave Moten, a workaround is to disable WebKit's DMA buffer renderer:
WEBKIT_DISABLE_DMABUF_RENDERER=1
by, for example, setting this in your launch script:
jan@jan-lite:~/Desktop$ cat SpringToolSuite-4.22.desktop
[Desktop Entry]
Version=1.0
Exec=env WEBKIT_DISABLE_DMABUF_RENDERER=1 /home/jan/sts-4.22.0.RELEASE/SpringToolSuite4
Name=Spring Tool Suite 4.22
GenericName=STS
Comment=STS with WebKit GTK acceleration disabled
Encoding=UTF-8
Terminal=false
Type=Application
Categories=Application;Network;
Icon=/home/jan/sts-4.22.0.RELEASE/icon.xpm
Upcoming releases of Eclipse will fold-in this workaround by disabling hardware acceleration.