<Swing Dev> JDK 16 Linux Swing segfault

Ty Young youngty1997 at gmail.com
Tue Dec 8 02:41:53 UTC 2020


On 12/7/20 7:10 PM, Philip Race wrote:
> Whilst we appreciate the report, we would never give an ETA here. It 
> isn't a support channel.
> I can say that it is being investigated but since it doesn't occur on 
> a supported platform it is not a high priority.


What is a supported platform? The only information after a quick Google 
search gives:


https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms


Which only lists Oracle Enterprise Linux(Red Hat based?) and not Ubuntu.


But I digress, as noted in the previously linked bug report, this is a 
regression caused by your separation of libharfbuzz from libfontmanager 
from:


https://bugs.openjdk.java.net/browse/JDK-8249821


And you can't or won't revert it?  What's the point of a multi-platform 
UI API if you're going to break things just because you feel like it? 
You realize there isn't a singular version of Ubuntu too, right? 
Software built for the previous LTS won't necessarily work on the newest 
versions or vice versa. if you only strictly support Ubuntu 18.04 for 
example, Ubuntu 20.10 might not work and you probably won't do anything 
about it?


The bug "fix" is so seemingly unnecessary and caused way more harm than 
good with multiple people running into breakage running otherwise 
working software. Between all of the things being removed, deprecated, 
and broken across the JDK versions over the last few years, you might 
have enough content for a "killedbyoracle" website, similar to the 
existing Google one.


>
> -phil.
>
> On 12/7/20, 5:03 PM, Ty Young wrote:
>> Is there an ETA on when this will be fixed?
>>
>>
>> On 12/7/20 3:47 PM, Philip Race wrote:
>>> Yes. Sounds right. ALL reports of this so far are on an Arch Linux 
>>> distro.
>>> Not seen on Debian/Ubuntu or RH/OL/Centos
>>>
>>> -phil.
>>>
>>> On 12/7/20, 1:38 PM, Ty Young wrote:
>>>> I use Arch Linux(btw), which is a "bleeding edge" Linux distro. The 
>>>> distro mentioned in that bug report is based on Arch Linux.
>>>>
>>>>
>>>> On 12/7/20 3:34 PM, Philip Race wrote:
>>>>> Looks like https://bugs.openjdk.java.net/browse/JDK-8255790 which 
>>>>> has not been
>>>>> seen on any of our supported Linux configs - what are you using ?
>>>>>
>>>>> -phil
>>>>>
>>>>> On 12/7/20, 1:20 PM, Ty Young wrote:
>>>>>> Hi,
>>>>>>
>>>>>>
>>>>>> Just sending this to report that as of right now there is 
>>>>>> somekind of regression in the GTK bindings code that is causing a 
>>>>>> segfault and as a result Netbeans (or presumably any other IDE) 
>>>>>> will not run on JDK 16 on Linux. This doesn't happen with Java 
>>>>>> 11. Here is the error trace that Netbeans spits out after 
>>>>>> segfaulting:
>>>>>>
>>>>>>
>>>>>> Current thread (0x00007f5cdc1364e0):  JavaThread 
>>>>>> "AWT-EventQueue-0" [_thread_in_native, id=181601, 
>>>>>> stack(0x00007f5cd5c2e000,0x00007f5cd5e2f000)]
>>>>>>
>>>>>> Stack: [0x00007f5cd5c2e000,0x00007f5cd5e2f000], 
>>>>>> sp=0x00007f5cd5e2c058,  free space=2040k
>>>>>> Native frames: (J=compiled Java code, A=aot compiled Java code, 
>>>>>> j=interpreted, Vv=VM code, C=native code)
>>>>>> C  0x00007f5c80de40cc
>>>>>>
>>>>>> Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
>>>>>> j com.sun.java.swing.plaf.gtk.GTKStyle.nativeGetXThickness(I)I+0 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> com.sun.java.swing.plaf.gtk.GTKStyle.<init>(Ljava/awt/Font;Lcom/sun/java/swing/plaf/gtk/GTKEngine$WidgetType;)V+24 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> com.sun.java.swing.plaf.gtk.GTKStyleFactory.getStyle(Ljavax/swing/JComponent;Ljavax/swing/plaf/synth/Region;)Ljavax/swing/plaf/synth/SynthStyle;+310 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> com.sun.java.swing.plaf.gtk.GTKLookAndFeel.initSystemColorDefaults(Ljavax/swing/UIDefaults;)V+53 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> com.sun.java.swing.plaf.gtk.GTKLookAndFeel.getDefaults()Ljavax/swing/UIDefaults;+33 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> javax.swing.UIManager.setLookAndFeel(Ljavax/swing/LookAndFeel;)V+66 
>>>>>> java.desktop at 16-internal
>>>>>> j javax.swing.UIManager.setLookAndFeel(Ljava/lang/String;)V+34 
>>>>>> java.desktop at 16-internal
>>>>>> j  org.netbeans.swing.plaf.Startup.initialize()V+106
>>>>>> j  org.netbeans.swing.plaf.Startup.<init>()V+25
>>>>>> j 
>>>>>> org.netbeans.swing.plaf.Startup.run(Ljava/lang/Class;ILjava/net/URL;Ljava/util/ResourceBundle;)V+44
>>>>>> j  org.netbeans.core.CoreBridgeImpl$1$1.run()V+23
>>>>>> J 3088 c1 java.awt.event.InvocationEvent.dispatch()V 
>>>>>> java.desktop at 16-internal (69 bytes) @ 0x00007f5d593829ac 
>>>>>> [0x00007f5d59382780+0x000000000000022c]
>>>>>> J 3071 c1 
>>>>>> java.awt.EventQueue.dispatchEventImpl(Ljava/awt/AWTEvent;Ljava/lang/Object;)V 
>>>>>> java.desktop at 16-internal (136 bytes) @ 0x00007f5d593786dc 
>>>>>> [0x00007f5d59376b80+0x0000000000001b5c]
>>>>>> J 3070 c1 java.awt.EventQueue$4.run()Ljava/lang/Void; 
>>>>>> java.desktop at 16-internal (60 bytes) @ 0x00007f5d593747bc 
>>>>>> [0x00007f5d59374680+0x000000000000013c]
>>>>>> J 3065 c1 java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V 
>>>>>> java.desktop at 16-internal (80 bytes) @ 0x00007f5d59375424 
>>>>>> [0x00007f5d59374e60+0x00000000000005c4]
>>>>>> J 3074 c1 java.awt.EventDispatchThread.pumpOneEventForFilters(I)V 
>>>>>> java.desktop at 16-internal (113 bytes) @ 0x00007f5d5937c934 
>>>>>> [0x00007f5d5937c2a0+0x0000000000000694]
>>>>>> j 
>>>>>> java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V+35 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4 
>>>>>> java.desktop at 16-internal
>>>>>> j 
>>>>>> java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3 
>>>>>> java.desktop at 16-internal
>>>>>> j  java.awt.EventDispatchThread.run()V+9 java.desktop at 16-internal
>>>>>> v  ~StubRoutines::call_stub
>>>>>>
>>>>>>
>>>>>> Much appreciated if this could be fixed.
>>>>>>
>>>>>>
>>>>>>


More information about the swing-dev mailing list