software boutique broken on 32bit UM

Bug #1806459 reported by nmaxx
30
This bug affects 5 people
Affects Status Importance Assigned to Milestone
ubuntu-mate-welcome (Ubuntu)
Won't Fix
Undecided
Unassigned

Bug Description

- install UM 18.04 32bit and fully update (including "sudo snap refresh")
- reboot
- log in
- start Software Boutique

=> blank screen after "stocking the boutique"

Console output:

$ ubuntu-mate-welcome.software-boutique
[Welcome] Starting in Software Boutique mode.
[Welcome] Snap detected. Using __VERSION__
[Welcome] Version: 17.10.26
[Welcome] Application Ready.
1 0xb372bf14 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x14) [0xb372bf14]
2 0xb333c229 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC24ScratchRegisterAllocator15allocateScratchINS_7GPRInfoEEENT_12RegisterTypeEv+0xf9) [0xb333c229]
3 0xb3333878 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC24ScratchRegisterAllocator18allocateScratchGPREv+0x18) [0xb3333878]
4 0xb2f037a4 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC22GetterSetterAccessCase16emitDOMJITGetterERNS_21AccessGenerationStateEPKNS_6DOMJIT12GetterSetterENS_12X86Registers10RegisterIDE+0x354) [0xb2f037a4]
5 0xb2ec124e /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC10AccessCase12generateImplERNS_21AccessGenerationStateE+0x1dee) [0xb2ec124e]
6 0xb2ec23ca /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC10AccessCase8generateERNS_21AccessGenerationStateE+0x2a) [0xb2ec23ca]
7 0xb2f18396 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC17PolymorphicAccess10regenerateERKNS_24GCSafeConcurrentJSLockerERNS_2VMEPNS_9CodeBlockERNS_17StructureStubInfoERKNS_10IdentifierE+0x9d6) [0xb2f18396]
8 0xb2f2a31f /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC17StructureStubInfo13addAccessCaseERKNS_24GCSafeConcurrentJSLockerEPNS_9CodeBlockERKNS_10IdentifierESt10unique_ptrINS_10AccessCaseESt14default_deleteISA_EE+0x5af) [0xb2f2a31f]
9 0xb333283e /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(+0x73683e) [0xb333283e]
10 0xb3333807 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC14repatchGetByIDEPNS_9ExecStateENS_7JSValueERKNS_10IdentifierERKNS_12PropertySlotERNS_17StructureStubInfoENS_11GetByIDKindE+0x37) [0xb3333807]
11 0xb3303d27 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(+0x707d27) [0xb3303d27]
12 0xaa7cbe53 [0xaa7cbe53]
13 0xaa72af2f [0xaa72af2f]
14 0xaa7163e8 [0xaa7163e8]
15 0xb3342246 /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(+0x746246) [0xb3342246]
16 0xb333ccef /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(+0x740cef) [0xb333ccef]
17 0xb32bd10e /usr/lib/i386-linux-gnu/libjavascriptcoregtk-4.0.so.18(_ZN3JSC11Interpreter14executeProgramERKNS_10SourceCodeEPNS_9ExecStateEPNS_8JSObjectE+0xbbe) [0xb32bd10e]

Tags: bionic
Revision history for this message
APolihron (apolitech) wrote :

In the feature please take a look at https://ubuntu-mate.community/t/how-to-report-problems-in-ubuntu-mate/17943 when reporting problems.

Changed in ubuntu-mate:
status: New → Invalid
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ubuntu-mate-welcome (Ubuntu):
status: New → Confirmed
Revision history for this message
Karlchen (karlchen) wrote :

Found this (Debian) thread, which suggests the root cause is the JIT:
"JavaScriptCore JIT compiler crashes in x86", https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=899338

Package: libjavascriptcoregtk-4.0-18, which present on Ubuntu 18.04.1 Mate as well

The Debian bug report further suggests the problem should be limited to the 32-bit edition.

In his message, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=899338#25, Albarto Garcia mentions a workaround which permits Software-Boutique to function properly again.

The workaround is disabling the JIT by exporting the environment variable JavaScriptCoreUseJIT=0

Checked from the commandline by executing:

export JavaScriptCoreUseJIT=0
ubuntu-mate-welcome --boutique

and the Software-Boutique seemed to work properly again.

Alberta Garcia also mentions that he believes the bug has been fixed on Debian in the most recent webkit2gtk package. Yet, in case this is true, then this fix has not made its way into Ubuntu, yet.

So for the moment for me the workaround is still the way to go:
export JavaScriptCoreUseJIT=0
ubuntu-mate-welcome --boutique

And as I do not feel like executing this in the terminal every time, I have amended the appropriate .desktop file: $HOME/.local/share/applications/ubuntu-mate-welcome_software-boutique.desktop

Amended line:
Exec=env JavaScriptCoreUseJIT=0 BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/ubuntu-mate-welcome_software-boutique.desktop /snap/bin/ubuntu-mate-welcome.software-boutique %U

Note the "JavaScriptCoreUseJIT=0"

Applied the same to the file $HOME/.local/share/applications/ubuntu-mate-welcome_ubuntu-mate-welcome.desktop in order to make sure Software Boutique works when invoked from inside the Welcome Screen.

Exec=env JavaScriptCoreUseJIT=0 BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/ubuntu-mate-welcome_ubuntu-mate-welcome.desktop /snap/bin/ubuntu-mate-welcome %U

Hope the workaround will help others, too, and exhibit no negative side-effects.

Revision history for this message
Karlchen (karlchen) wrote :

Addendum:
Managed to spell the name of the person, who provided the workaround, incorrectly twice. Therefore let me give the name on more time and this time correctly:
Alberto Garcia

Md Mozahid (mozahid777)
no longer affects: ubuntu-mate-welcome-legacy
Revision history for this message
Norbert (nrbrtx) wrote :

Can you reproduce this bug with newer version of Ubuntu MATE?

tags: added: bionic
Changed in ubuntu-mate-welcome (Ubuntu):
status: Confirmed → Incomplete
no longer affects: ubuntu-mate
Changed in ubuntu-mate-welcome (Ubuntu):
status: Incomplete → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.