Bug 1577561

Summary: [abrt] gnome-shell: gweather_location_get_timezone(): gnome-shell killed by SIGSEGV
Product: [Fedora] Fedora Reporter: Ben Liblit <liblit>
Component: libgweatherAssignee: Bastien Nocera <bnocera>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 28CC: abetakehiko, bnocera, bugzilla.redhat.com.ed6bc, fmuellner, mclasen, otaylor, pbrobinson
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/539c6a3ce3de16cf0c307cd3534c60af48fadb45
Whiteboard: abrt_hash:325c47ba639679806850a3712d868dd91e66021a;VARIANT_ID=workstation;
Fixed In Version: libgweather-3.28.2-1.fc28 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-06-26 17:33:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: cpuinfo
none
File: dso_list
none
File: environ
none
File: exploitable
none
File: limits
none
File: maps
none
File: mountinfo
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages none

Description Ben Liblit 2018-05-13 00:26:42 UTC
Version-Release number of selected component:
gnome-shell-3.28.1-3.fc28

Additional info:
reporter:       libreport-2.9.5
backtrace_rating: 4
cmdline:        /usr/bin/gnome-shell
crash_function: gweather_location_get_timezone
executable:     /usr/bin/gnome-shell
journald_cursor: s=7faa300d4cc54c9181c3e4127b88f417;i=4d081;b=d48cf2c4ba16441f8c7f22abe9d4767d;m=851d2688;t=56c0a24d2d153;x=3943086e64f0aa4
kernel:         4.16.7-300.fc28.x86_64
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            29364

Truncated backtrace:
Thread no. 1 (10 frames)
 #0 gweather_location_get_timezone at ../libgweather/gweather-location.c:1001
 #1 ffi_call_unix64 at ../src/x86/unix64.S:76
 #2 ffi_call at ../src/x86/ffi64.c:525
 #3 gjs_invoke_c_function(JSContext*, Function*, JS::HandleObject, JS::HandleValueArray const&, mozilla::Maybe<JS::MutableHandle<JS::Value> >, GIArgument*) at gi/function.cpp:1088
 #4 function_call(JSContext*, unsigned int, JS::Value*) at /usr/include/c++/8/new:169
 #5 js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) at /usr/src/debug/mozjs52-52.7.3-1.fc28.x86_64/jscntxtinlines.h:239
 #6 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) at /usr/src/debug/mozjs52-52.7.3-1.fc28.x86_64/vm/Interpreter.cpp:447
 #7 js::CallFromStack(JSContext*, JS::CallArgs const&) at /usr/src/debug/mozjs52-52.7.3-1.fc28.x86_64/vm/Interpreter.cpp:2922
 #8 Interpret(JSContext*, js::RunState&) at /usr/src/debug/mozjs52-52.7.3-1.fc28.x86_64/vm/Interpreter.cpp:2922
 #9 js::RunScript(JSContext*, js::RunState&) at /usr/src/debug/mozjs52-52.7.3-1.fc28.x86_64/vm/Interpreter.cpp:405

Comment 1 Ben Liblit 2018-05-13 00:26:47 UTC
Created attachment 1435544 [details]
File: backtrace

Comment 2 Ben Liblit 2018-05-13 00:26:48 UTC
Created attachment 1435545 [details]
File: cgroup

Comment 3 Ben Liblit 2018-05-13 00:26:52 UTC
Created attachment 1435546 [details]
File: core_backtrace

Comment 4 Ben Liblit 2018-05-13 00:26:54 UTC
Created attachment 1435547 [details]
File: cpuinfo

Comment 5 Ben Liblit 2018-05-13 00:26:57 UTC
Created attachment 1435548 [details]
File: dso_list

Comment 6 Ben Liblit 2018-05-13 00:26:58 UTC
Created attachment 1435549 [details]
File: environ

Comment 7 Ben Liblit 2018-05-13 00:27:01 UTC
Created attachment 1435550 [details]
File: exploitable

Comment 8 Ben Liblit 2018-05-13 00:27:03 UTC
Created attachment 1435551 [details]
File: limits

Comment 9 Ben Liblit 2018-05-13 00:27:08 UTC
Created attachment 1435552 [details]
File: maps

Comment 10 Ben Liblit 2018-05-13 00:27:10 UTC
Created attachment 1435553 [details]
File: mountinfo

Comment 11 Ben Liblit 2018-05-13 00:27:12 UTC
Created attachment 1435554 [details]
File: open_fds

Comment 12 Ben Liblit 2018-05-13 00:27:14 UTC
Created attachment 1435555 [details]
File: proc_pid_status

Comment 13 Ben Liblit 2018-05-13 00:27:16 UTC
Created attachment 1435556 [details]
File: var_log_messages

Comment 14 Takehiko Abe 2018-05-17 05:19:17 UTC
Similar reports:

[abrt] gjs: JS_GetContextPrivate(): gjs-console killed by SIGSEGV
https://gitlab.gnome.org/GNOME/gjs/issues/148
https://bugzilla.redhat.com/show_bug.cgi?id=1560314

Comment 15 Takehiko Abe 2018-05-22 03:08:18 UTC
(In reply to Takehiko Abe from comment #14)
> Similar reports:
> 
> [abrt] gjs: JS_GetContextPrivate(): gjs-console killed by SIGSEGV
> https://gitlab.gnome.org/GNOME/gjs/issues/148
> https://bugzilla.redhat.com/show_bug.cgi?id=1560314

I tried the patch for the issue #148:

https://gitlab.gnome.org/GNOME/gjs/commit/d85214b041b7e3f352f6138516b4fe6084c42230

And it did not work. Sorry for the wrong lead.

Comment 16 Peter Robinson 2018-05-24 13:07:14 UTC
Similar problem has been detected:

Just working away and shell crashed

reporter:       libreport-2.9.5
backtrace_rating: 4
cmdline:        /usr/bin/gnome-shell
crash_function: gweather_location_get_timezone
executable:     /usr/bin/gnome-shell
journald_cursor: s=75154f70e8144d16a4a4fd291863971f;i=705e8;b=e7a1db25551a4e27ac197fff92f318a9;m=111976727;t=56cf31e3129d4;x=54613da5e400582e
kernel:         4.16.11-300.fc28.x86_64
package:        gnome-shell-3.28.2-1.fc28
reason:         gnome-shell killed by SIGSEGV
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Comment 17 Takehiko Abe 2018-06-12 15:21:06 UTC
I removed the UTC clock from gnome-clocks two days ago. I have not had a single crash since then. Could it be the culprit???

Comment 18 Peter Robinson 2018-06-13 05:14:04 UTC
(In reply to Takehiko Abe from comment #17)
> I removed the UTC clock from gnome-clocks two days ago. I have not had a
> single crash since then. Could it be the culprit???

I have UTC configured too.

I think Bastien added that functionality.

Comment 19 Bastien Nocera 2018-06-13 08:13:06 UTC
(In reply to Peter Robinson from comment #18)
> (In reply to Takehiko Abe from comment #17)
> > I removed the UTC clock from gnome-clocks two days ago. I have not had a
> > single crash since then. Could it be the culprit???
> 
> I have UTC configured too.
> 
> I think Bastien added that functionality.

That's the line:
        while (loc && !loc->zones)
            loc = loc->parent;

My guess is that somebody wrongly freed something. I don't know what that would be.

Comment 20 Bastien Nocera 2018-06-13 12:04:43 UTC
Found the problem, "named timezone" entries are returned without an extra reference or copy, which mangles the global "World" tree.

Comment 21 Bastien Nocera 2018-06-13 12:27:37 UTC
Upstream patches:
https://gitlab.gnome.org/GNOME/libgweather/merge_requests/8

Comment 22 Fedora Update System 2018-06-13 12:56:25 UTC
libgweather-3.28.2-1.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-9d3adb3c1f

Comment 23 Fedora Update System 2018-06-13 23:00:42 UTC
libgweather-3.28.2-1.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-9d3adb3c1f

Comment 24 Fedora Update System 2018-06-26 17:33:06 UTC
libgweather-3.28.2-1.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.