Bug 1520010

Summary: [abrt] gnome-shell: gtk_icon_info_load_icon_finish(): gnome-shell killed by SIGABRT
Product: [Fedora] Fedora Reporter: Andrew Cook <ariscop>
Component: gnome-shellAssignee: Owen Taylor <otaylor>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 27CC: bamdalerishikesh, daniel.everett.h, fmuellner, fouinix1, gnome-sig, lankyleggy, otaylor, phaiax-bugzillaredhat, p.khalyavka, trinhphucnhact, vanpivix
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/fac955948c93c9f3cd085ef350e95ebaba07da5d
Whiteboard: abrt_hash:6cbd0f789f41e2c63980cb0177823f3226ac0d1c;VARIANT_ID=workstation;
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-11-30 21:03: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: limits
none
File: maps
none
File: mountinfo
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages
none
GDB session none

Description Andrew Cook 2017-12-01 22:40:50 UTC
Description of problem:
Opening pgAdmin III reliably crashes gnome shell

Version-Release number of selected component:
gnome-shell-3.26.2-1.fc27

Additional info:
reporter:       libreport-2.9.3
backtrace_rating: 4
cmdline:        /usr/bin/gnome-shell
crash_function: gtk_icon_info_load_icon_finish
executable:     /usr/bin/gnome-shell
journald_cursor: s=8dcdc9023b364455b72f1a52f57c60d5;i=33ade;b=dbf772e28bec4b4aaf014a1caa3e6f9f;m=127ce01659;t=55f4eeff482f1;x=fc379e8ef6186370
kernel:         4.13.15-300.fc27.x86_64
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Potential duplicate: bug 1319231

Comment 1 Andrew Cook 2017-12-01 22:40:57 UTC
Created attachment 1361853 [details]
File: backtrace

Comment 2 Andrew Cook 2017-12-01 22:40:59 UTC
Created attachment 1361854 [details]
File: cgroup

Comment 3 Andrew Cook 2017-12-01 22:41:01 UTC
Created attachment 1361855 [details]
File: core_backtrace

Comment 4 Andrew Cook 2017-12-01 22:41:06 UTC
Created attachment 1361856 [details]
File: cpuinfo

Comment 5 Andrew Cook 2017-12-01 22:41:08 UTC
Created attachment 1361857 [details]
File: dso_list

Comment 6 Andrew Cook 2017-12-01 22:41:10 UTC
Created attachment 1361858 [details]
File: environ

Comment 7 Andrew Cook 2017-12-01 22:41:12 UTC
Created attachment 1361859 [details]
File: limits

Comment 8 Andrew Cook 2017-12-01 22:41:15 UTC
Created attachment 1361860 [details]
File: maps

Comment 9 Andrew Cook 2017-12-01 22:41:18 UTC
Created attachment 1361861 [details]
File: mountinfo

Comment 10 Andrew Cook 2017-12-01 22:41:20 UTC
Created attachment 1361862 [details]
File: open_fds

Comment 11 Andrew Cook 2017-12-01 22:41:21 UTC
Created attachment 1361863 [details]
File: proc_pid_status

Comment 12 Andrew Cook 2017-12-01 22:41:23 UTC
Created attachment 1361864 [details]
File: var_log_messages

Comment 13 Adrien Nayrat 2017-12-06 19:55:38 UTC
*** Bug 1522958 has been marked as a duplicate of this bug. ***

Comment 14 Daniel 2018-01-18 15:16:20 UTC
*** Bug 1536076 has been marked as a duplicate of this bug. ***

Comment 15 Or Schiro 2018-01-31 14:03:46 UTC
*** Bug 1540602 has been marked as a duplicate of this bug. ***

Comment 16 Or Schiro 2018-02-06 20:30:48 UTC
*** Bug 1542698 has been marked as a duplicate of this bug. ***

Comment 17 Or Schiro 2018-02-06 20:31:46 UTC
Had this twice already. Tried opening Gnome Software from the Dash and then my session crashed.

Comment 18 James Legg 2018-02-24 15:27:41 UTC
Similar problem has been detected:

1) Press the Super key to bring up the Activites view
2) Type the word "font"

My enabled search providers are Boxes, Calculator, Characters, Clocks, Contacts, Files, Notes, Passwords and Keys, Software, Terminal, and Web.
I have gnome-shell extensions disabled, and I am using the default theme.

reporter:       libreport-2.9.3
backtrace_rating: 4
cmdline:        /usr/bin/gnome-shell
crash_function: gtk_icon_info_load_icon_finish
executable:     /usr/bin/gnome-shell
journald_cursor: s=92bf442ed9ea4dd8be6b0cd7a66113a9;i=30d43;b=4f7c81e3c214469e9725a069a94d790e;m=3b940002a;t=565f681e86fcc;x=b894f68730cc5a9b
kernel:         4.15.3-300.fc27.x86_64
package:        gnome-shell-3.26.2-4.fc27
reason:         gnome-shell killed by SIGABRT
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Comment 19 p.khalyavka 2018-03-02 07:17:22 UTC
*** Bug 1550839 has been marked as a duplicate of this bug. ***

Comment 20 Andrea Pivetta 2018-03-04 00:56:00 UTC
Similar problem has been detected:

This is the third crash in the last 5 minutes. The first two I searched for Screenshot and got the crash when I clicked enter. 
In the third one (this one) it crashed even before clicking. 
I'm honestly not sure it this was the case for the first two as well because I usually press enter quite quickly after seeing the right answer to my query.

reporter:       libreport-2.9.3
backtrace_rating: 4
cmdline:        /usr/bin/gnome-shell
crash_function: gtk_icon_info_load_icon_finish
executable:     /usr/bin/gnome-shell
journald_cursor: s=a78f0a8d130a492b960d4a95283994ec;i=df5ea;b=698a4ec5726c4f9cbcfd00920e1d64a7;m=e7d2233f6;t=5668b875e7f4e;x=99ecba347a38e134
kernel:         4.15.4-300.fc27.x86_64
package:        gnome-shell-3.26.2-4.fc27
reason:         gnome-shell killed by SIGABRT
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Comment 21 Andrea Pivetta 2018-03-04 08:56:08 UTC
I can reliably crash GNOME shell by typing "sc" in the search bar.

Comment 22 Andrea Pivetta 2018-03-04 08:58:31 UTC
By exclusion, I can also tell you that the search provider causing the crash is Files. If I disable it everything seems fine.

Comment 23 Daniel S 2018-03-18 13:20:28 UTC
This is a very annoying bug, so I will help fixing it. I managed to gdb into the crashing gnome-shell with the help of https://fedoraproject.org/wiki/How_to_debug_Wayland_problems .

See the attached gdb_2018_03_18_naive.txt for my first attempts of debugging this.

I have never dealt with gtk/gnome-shell etc, so I just do whatever you want me to do.

The crash happens here:
https://code.woboq.org/gtk/gtk/gtk/gtkicontheme.c.html#gtk_icon_info_load_icon_finish

With this GtkIconInfo icon_info:

$2 = {parent_instance = {g_type_instance = {g_class = 0x55855b2294d0}, ref_count = 3, qdata = 0x0}, key = {icon_names = 0x0, size = 0, scale = 0, flags = (unknown: 0)}, 
  in_cache = 0x0, filename = 0x55855b5c2a80 "/home/daniel/.cache/thumbnails/large/561114c38c138d4fcd5e62b89a9a23ae.png", icon_file = 0x7f3af506a460, 
  loadable = 0x7f3b800cb600, emblem_infos = 0x0, cache_pixbuf = 0x0, dir_type = ICON_THEME_DIR_UNTHEMED, dir_size = 24, dir_scale = 1, min_size = 0, max_size = 0, 
  desired_size = 24, desired_scale = 1, forced_size = 0, emblems_applied = 0, is_svg = 0, is_resource = 0, pixbuf = 0x0, proxy_pixbuf = 0x0, load_error = 0x0, 
  unscaled_scale = 1, scale = 0.47999999999999998, symbolic_pixbuf_cache = 0x0, symbolic_width = 0, symbolic_height = 0}

I've looked at the thumbnail and it is really only a 1x50 px light blue stripe.

Okay, gtk_icon_info_load_icon_finish() is somehow related to async functionality and updates its argument with the data that it retrieves from its async-task. For some reason that data is not ready.

YAA, I have an idea what is happening:

The task calls icon_info_ensure_scale_and_pixbuf() to load the image. That function somehow calculates a scaling factor, in this case scale = 0.47999999999999998. But the png image has a size of 1x50, so the call to gdk_pixbuf_scale_simple will get a width of 0.5+1*0.4799 which will round down to 0. I have not found the source of gdk_pixbuf_scale_simple, but I assume it will simply not allocate a pixbuf when one image dimension equals 0. This will then cause more trouble in gtk_icon_info_load_icon_finish when trying to move the pixbuf from the `dup` into the other icon_info, expecting that there is a pixbuf.

      icon_info->pixbuf = gdk_pixbuf_scale_simple (source_pixbuf,
                                                   0.5 + image_width * icon_info->scale,
                                                   0.5 + image_height * icon_info->scale,
GDK_INTERP_BILINEAR);

Conclusion: Some thumbnail generator generates thumbnails, that will cause trouble in gnome-shell.

Temporary workaround: Disable the Files search provider.

Hmm, that does not took too long to figure out :D

Daniel

Comment 24 Daniel S 2018-03-18 13:21:52 UTC
Created attachment 1409471 [details]
GDB session

Comment 25 Daniel S 2018-03-21 19:55:52 UTC
I notified gtk

https://gitlab.gnome.org/GNOME/gtk/issues/119

Comment 26 Rishikesh 2018-04-05 19:50:06 UTC
*** Bug 1564261 has been marked as a duplicate of this bug. ***

Comment 27 Nha Trinh 2018-04-17 16:40:27 UTC
*** Bug 1568518 has been marked as a duplicate of this bug. ***

Comment 28 Ben Cotton 2018-11-27 16:09:46 UTC
This message is a reminder that Fedora 27 is nearing its end of life.
On 2018-Nov-30  Fedora will stop maintaining and issuing updates for
Fedora 27. It is Fedora's policy to close all bug reports from releases
that are no longer maintained. At that time this bug will be closed as
EOL if it remains open with a Fedora  'version' of '27'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 27 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 29 Ben Cotton 2018-11-30 21:03:06 UTC
Fedora 27 changed to end-of-life (EOL) status on 2018-11-30. Fedora 27 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.