GNOME Bugzilla – Bug 709355
Crash when trying to install a package -- [abrt] gnome-software-3.10.0-1.fc20: gtk_widget_get_accessible: Process /usr/bin/gnome-software was killed by signal 11 (SIGSEGV)
Last modified: 2015-04-18 12:48:17 UTC
From downstream bugreport https://bugzilla.redhat.com/show_bug.cgi?id=1013270: Crashed on installing rhythmbox (or any other package) gnome-software-3.10.0-1.fc20 [New LWP 4733] [New LWP 4716] [New LWP 4732] [New LWP 4715] warning: Could not load shared library symbols for 3 libraries, e.g. /lib64/libX11.so.6. Use the "info sharedlibrary" command to see the complete listing. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Core was generated by `gnome-software'. Program terminated with signal SIGSEGV, Segmentation fault.
+ Trace 232571
Thread 4 (Thread 0x7f4168fb29c0 (LWP 4715))
Thread 1 (Thread 0x7f414cb9c700 (LWP 4733))
From To Syms Read Shared Object Library 0x00007f4168be3190 0x00007f4168be4088 Yes /lib64/libgmodule-2.0.so.0 0x00007f4168544260 0x00007f4168807dd4 Yes /lib64/libgtk-3.so.0 0x00007f4168236970 0x00007f4168289164 Yes /lib64/libgdk-3.so.0 0x00007f416800e880 0x00007f4168013368 Yes /lib64/libpangocairo-1.0.so.0 0x00007f4167dcc050 0x00007f4167deaf68 Yes /lib64/libpango-1.0.so.0 0x00007f4167ba63b0 0x00007f4167bb1f34 Yes /lib64/libatk-1.0.so.0 0x00007f4167996560 0x00007f416799759c Yes (*) /lib64/libcairo-gobject.so.2 0x00007f41676816d0 0x00007f4167750ef8 Yes /lib64/libcairo.so.2 0x00007f4167422f60 0x00007f4167451414 Yes /lib64/libpackagekit-glib2.so.16 0x00007f41671609c0 0x00007f41671e9ff0 Yes /lib64/libsqlite3.so.0 0x00007f4166f508a0 0x00007f4166f52bf0 Yes /lib64/libnotify.so.4 0x00007f4166d30cb0 0x00007f4166d44810 Yes /lib64/libgdk_pixbuf-2.0.so.0 0x00007f41669f6be0 0x00007f4166ab840c Yes /lib64/libgio-2.0.so.0 0x00007f416677f160 0x00007f41667ada18 Yes /lib64/libgobject-2.0.so.0 0x00007f41664626e0 0x00007f41664faecc Yes /lib64/libglib-2.0.so.0 0x00007f4166146890 0x00007f41661b5bb8 Yes /lib64/libm.so.6 0x00007f4165f299f0 0x00007f4165f35614 Yes /lib64/libpthread.so.0 0x00007f4165b84560 0x00007f4165cc5cc4 Yes /lib64/libc.so.6 0x00007f4165961ed0 0x00007f41659629d0 Yes /lib64/libdl.so.2 No /lib64/libX11.so.6 0x00007f4165415240 0x00007f416541f5f8 Yes /lib64/libXi.so.6 0x00007f416520e5f0 0x00007f4165210948 Yes /lib64/libXfixes.so.3 0x00007f4164feaef0 0x00007f4164ffdb14 Yes /lib64/libatk-bridge-2.0.so.0 0x00007f4164dd2320 0x00007f4164dda90c Yes /lib64/libpangoft2-1.0.so.0 0x00007f4164b95c70 0x00007f4164bb2f7c Yes /lib64/libfontconfig.so.1 0x00007f416498cbb0 0x00007f416498d510 Yes /lib64/libXinerama.so.1 0x00007f4164783c30 0x00007f41647895d0 Yes /lib64/libXrandr.so.2 0x00007f4164579ab0 0x00007f416457e690 Yes /lib64/libXcursor.so.1 0x00007f4164374cd0 0x00007f41643756e8 Yes /lib64/libXcomposite.so.1 0x00007f4164171c40 0x00007f416417256c Yes /lib64/libXdamage.so.1 0x00007f4163f68930 0x00007f4163f6c6f0 Yes /lib64/libwayland-client.so.0 0x00007f4163d23b30 0x00007f4163d3cbd8 Yes /lib64/libxkbcommon.so.0 0x00007f4163afd1c0 0x00007f4163afec94 Yes /lib64/libwayland-cursor.so.0 0x00007f41638ed760 0x00007f41638f7460 Yes /lib64/libXext.so.6 0x00007f41636e42d0 0x00007f41636e70cc Yes /lib64/librt.so.1 0x00007f41634e06b0 0x00007f41634e081c Yes /lib64/libgthread-2.0.so.0 0x00007f4163293ca0 0x00007f41632c743c Yes /lib64/libharfbuzz.so.0 0x00007f4162ff6320 0x00007f41630620c4 Yes /lib64/libfreetype.so.6 0x00007f4162d49510 0x00007f4162dd158c Yes /lib64/libpixman-1.so.0 0x00007f4162b230d0 0x00007f4162b34b4c Yes /lib64/libEGL.so.1 0x00007f41628ef680 0x00007f4162910e68 Yes /lib64/libpng16.so.16 0x00007f41626e7b90 0x00007f41626e8460 Yes /lib64/libxcb-shm.so.0 0x00007f41624e0610 0x00007f41624e3a7c Yes /lib64/libxcb-render.so.0 0x00007f41622c5a00 0x00007f41622d36c8 Yes /lib64/libxcb.so.1 0x00007f41620b3b70 0x00007f41620b9be8 Yes /lib64/libXrender.so.1 0x00007f4161e9e210 0x00007f4161eaa930 Yes /lib64/libz.so.1 0x00007f4161c4c120 0x00007f4161c852f4 Yes /lib64/libGL.so.1 0x00007f416199f9f0 0x00007f4161a0cb40 Yes /lib64/libarchive.so.13 0x00007f4161787870 0x00007f416178bfe8 Yes /lib64/libffi.so.6 0x00007f4161568260 0x00007f416157a81c Yes /lib64/libselinux.so.1 0x00007f416134ba40 0x00007f416135a81c Yes /lib64/libresolv.so.2 0x00007f4168de6b10 0x00007f4168dffcb0 Yes /lib64/ld-linux-x86-64.so.2 0x00007f4161128c50 0x00007f4161139428 Yes /lib64/libatspi.so.0 0x00007f4160edbab0 0x00007f4160f03f04 Yes /lib64/libdbus-1.so.3 0x00007f4160cade00 0x00007f4160cc6cdc Yes /lib64/libexpat.so.1 No /lib64/libgraphite2.so.3 No /lib64/libX11-xcb.so.1 0x00007f4160688930 0x00007f4160689a88 Yes /lib64/libxcb-dri2.so.0 0x00007f4160482610 0x00007f4160484748 Yes /lib64/libxcb-xfixes.so.0 0x00007f416027d020 0x00007f416027dbc8 Yes /lib64/libxcb-shape.so.0 0x00007f4160077160 0x00007f4160078cec Yes /lib64/libgbm.so.1 0x00007f415fe6a950 0x00007f415fe6fae0 Yes /lib64/libwayland-server.so.0 0x00007f415fc47e40 0x00007f415fc509b0 Yes /lib64/libglapi.so.0 0x00007f415fa304f0 0x00007f415fa38ee0 Yes /lib64/libudev.so.1 0x00007f415f8241e0 0x00007f415f829b18 Yes /lib64/libdrm.so.2 0x00007f415f61dee0 0x00007f415f61ebfc Yes /lib64/libXau.so.6 0x00007f415f40d030 0x00007f415f414df8 Yes /lib64/libxcb-glx.so.0 0x00007f415f1fe010 0x00007f415f200958 Yes /lib64/libXxf86vm.so.1 0x00007f415ee951c0 0x00007f415ef761e8 Yes /lib64/libcrypto.so.10 0x00007f415ec2bf80 0x00007f415ec2fe14 Yes /lib64/libacl.so.1 0x00007f415ea263d0 0x00007f415ea2841c Yes /lib64/libattr.so.1 0x00007f415e806600 0x00007f415e820748 Yes /lib64/liblzo2.so.2 0x00007f415e5e20e0 0x00007f415e5f8060 Yes /lib64/liblzma.so.5 0x00007f415e3d0760 0x00007f415e3dc570 Yes /lib64/libbz2.so.1 0x00007f415e094870 0x00007f415e17c930 Yes /lib64/libxml2.so.2 0x00007f415de01770 0x00007f415de4b8d8 Yes /lib64/libpcre.so.1 0x00007f415dbecaf0 0x00007f415dbfc1f8 Yes /lib64/libgcc_s.so.1 0x00007f4156ad5ef0 0x00007f4156af03e8 Yes /usr/lib64/gio/modules/libgvfsdbus.so 0x00007f41568a08c0 0x00007f41568b8618 Yes /lib64/libgvfscommon.so.0 0x00007f4156663ef0 0x00007f4156682d3c Yes /lib64/libbluray.so.1 0x00007f415645df10 0x00007f415645e804 Yes /lib64/libutil.so.1 0x00007f4156259b20 0x00007f415625b174 Yes /usr/lib64/gtk-3.0/3.0.0/theming-engines/libadwaita.so 0x00007f4156029b20 0x00007f415604dba8 Yes /lib64/librsvg-2.so.2 0x00007f4155defcd0 0x00007f4155e0e858 Yes /lib64/libcroco-0.6.so.3 0x00007f4155be3170 0x00007f4155be5160 Yes /usr/lib64/gtk-3.0/modules/libcanberra-gtk-module.so 0x00007f41559ddd60 0x00007f41559df260 Yes /lib64/libcanberra-gtk3.so.0 0x00007f41557ce3f0 0x00007f41557d71ec Yes /lib64/libcanberra.so.0 0x00007f41555c40f0 0x00007f41555c83fc Yes /lib64/libvorbisfile.so.3 0x00007f4155397850 0x00007f41553af1c0 Yes /lib64/libvorbis.so.0 0x00007f415518eaa0 0x00007f4155191098 Yes /lib64/libogg.so.0 0x00007f4154f7d5b0 0x00007f4154f87354 Yes /lib64/libtdb.so.1 0x00007f4154d734b0 0x00007f4154d77788 Yes /lib64/libltdl.so.7 0x00007f4154b3aed0 0x00007f4154b3f98c Yes /lib64/libcrypt.so.1 0x00007f41548cf780 0x00007f4154917370 Yes /lib64/libfreebl3.so 0x00007f414fdfe990 0x00007f414fdfeb5c Yes /usr/lib64/gs-plugins/libgs_plugin_datadir_filename_local.so 0x00007f414fbfbec0 0x00007f414fbfc498 Yes /usr/lib64/gs-plugins/libgs_plugin_local-ratings.so 0x00007f414f9f8b30 0x00007f414f9f8d1c Yes /usr/lib64/gs-plugins/libgs_plugin_hardcoded-kind.so 0x00007f414f7f5d00 0x00007f414f7f6150 Yes /usr/lib64/gs-plugins/libgs_plugin_dummy.so 0x00007f414f5ef7d0 0x00007f414f5f19ec Yes /usr/lib64/gs-plugins/libgs_plugin_hardcoded-menu-spec.so 0x00007f414f3ed130 0x00007f414f3ed5ac Yes /usr/lib64/gs-plugins/libgs_plugin_desktopdb.so 0x00007f414f1e9790 0x00007f414f1ea12c Yes /usr/lib64/gs-plugins/libgs_plugin_packagekit.so 0x00007f414efe67c0 0x00007f414efe6938 Yes /usr/lib64/gs-plugins/libgs_plugin_self_test.so 0x00007f414ede3b70 0x00007f414ede3dec Yes /usr/lib64/gs-plugins/libgs_plugin_systemd-updates.so 0x00007f414ebe0c10 0x00007f414ebe0f14 Yes /usr/lib64/gs-plugins/libgs_plugin_packagekit-offline.so 0x00007f414e9dd300 0x00007f414e9ddaf4 Yes /usr/lib64/gs-plugins/libgs_plugin_packagekit-history.so 0x00007f414e7d9710 0x00007f414e7da18c Yes /usr/lib64/gs-plugins/libgs_plugin_packagekit-refine.so 0x00007f414e5d5f50 0x00007f414e5d62ec Yes /usr/lib64/gs-plugins/libgs_plugin_packagekit-updates.so 0x00007f414e3d04c0 0x00007f414e3d28a8 Yes /usr/lib64/gs-plugins/libgs_plugin_appstream.so 0x00007f414e1c7370 0x00007f414e1c75cc Yes /usr/lib64/gs-plugins/libgs_plugin_hardcoded-ratings.so 0x00007f414dfc0f10 0x00007f414dfc12e8 Yes /usr/lib64/gs-plugins/libgs_plugin_datadir_filename.so 0x00007f414ddbdbc0 0x00007f414ddbdf28 Yes /usr/lib64/gs-plugins/libgs_plugin_hardcoded-featured.so 0x00007f414dbbabe0 0x00007f414dbbb138 Yes /usr/lib64/gs-plugins/libgs_plugin_hardcoded-popular.so 0x00007f414d9b78e0 0x00007f414d9b7b04 Yes /usr/lib64/gs-plugins/libgs_plugin_hardcoded-screenshots.so 0x00007f414d7b45f0 0x00007f414d7b4c58 Yes /usr/lib64/gs-plugins/libgs_plugin_datadir_apps.so 0x00007f414cb9dc00 0x00007f414cb9dfcc Yes /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so 0x00007f414c1964f0 0x00007f414c19788c Yes /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so (*): Shared library is missing debugging information. $1 = 0x0 $2 = 0x0 rax 0x1c93530 29963568 rbx 0x4 4 rcx 0x0 0 rdx 0x20a55e0 34231776 rsi 0x7f4148005950 139918357584208 rdi 0x4 4 rbp 0x7f41480064a0 0x7f41480064a0 rsp 0x7f414cb9b780 0x7f414cb9b780 r8 0x7f414cb9b900 139918436841728 r9 0x40e630 4253232 r10 0x1c7d11c 29872412 r11 0x246 582 r12 0x20a54c0 34231488 r13 0x2 2 r14 0x7f414cb9b960 139918436841824 r15 0x7f414cb9b900 139918436841728 rip 0x7f41687ac4b3 0x7f41687ac4b3 <gtk_widget_get_accessible+19> eflags 0x10202 [ IF RF ] cs 0x33 51 ss 0x2b 43 ds 0x0 0 es 0x0 0 fs 0x0 0 gs 0x0 0 st0 *value not available* st1 *value not available* st2 *value not available* st3 *value not available* st4 *value not available* st5 *value not available* st6 *value not available* st7 *value not available* fctrl *value not available* fstat *value not available* ftag *value not available* fiseg *value not available* fioff *value not available* foseg *value not available* fooff *value not available* fop *value not available* xmm0 *value not available* xmm1 *value not available* xmm2 *value not available* xmm3 *value not available* xmm4 *value not available* xmm5 *value not available* xmm6 *value not available* xmm7 *value not available* xmm8 *value not available* xmm9 *value not available* xmm10 *value not available* xmm11 *value not available* xmm12 *value not available* xmm13 *value not available* xmm14 *value not available* xmm15 *value not available* mxcsr *value not available* Dump of assembler code for function gtk_widget_get_accessible: 0x00007f41687ac4a0 <+0>: push %rbp 0x00007f41687ac4a1 <+1>: push %rbx 0x00007f41687ac4a2 <+2>: mov %rdi,%rbx 0x00007f41687ac4a5 <+5>: sub $0x8,%rsp 0x00007f41687ac4a9 <+9>: callq 0x7f41687a3340 <gtk_widget_get_type> 0x00007f41687ac4ae <+14>: test %rbx,%rbx 0x00007f41687ac4b1 <+17>: je 0x7f41687ac4d0 <gtk_widget_get_accessible+48> => 0x00007f41687ac4b3 <+19>: mov (%rbx),%rbp 0x00007f41687ac4b6 <+22>: test %rbp,%rbp 0x00007f41687ac4b9 <+25>: je 0x7f41687ac4c1 <gtk_widget_get_accessible+33> 0x00007f41687ac4bb <+27>: cmp 0x0(%rbp),%rax 0x00007f41687ac4bf <+31>: je 0x7f41687ac4f8 <gtk_widget_get_accessible+88> 0x00007f41687ac4c1 <+33>: mov %rax,%rsi 0x00007f41687ac4c4 <+36>: mov %rbx,%rdi 0x00007f41687ac4c7 <+39>: callq 0x7f4168540d90 <g_type_check_instance_is_a@plt> 0x00007f41687ac4cc <+44>: test %eax,%eax 0x00007f41687ac4ce <+46>: jne 0x7f41687ac4f8 <gtk_widget_get_accessible+88> 0x00007f41687ac4d0 <+48>: lea 0x61080(%rip),%rdx # 0x7f416880d557 0x00007f41687ac4d7 <+55>: lea 0x1352d2(%rip),%rsi # 0x7f41688e17b0 <__PRETTY_FUNCTION__.59738> 0x00007f41687ac4de <+62>: lea 0x5babe(%rip),%rdi # 0x7f4168807fa3 0x00007f41687ac4e5 <+69>: callq 0x7f4168540220 <g_return_if_fail_warning@plt> 0x00007f41687ac4ea <+74>: add $0x8,%rsp 0x00007f41687ac4ee <+78>: xor %eax,%eax 0x00007f41687ac4f0 <+80>: pop %rbx 0x00007f41687ac4f1 <+81>: pop %rbp 0x00007f41687ac4f2 <+82>: retq 0x00007f41687ac4f3 <+83>: nopl 0x0(%rax,%rax,1) 0x00007f41687ac4f8 <+88>: mov 0x2b0(%rbp),%rax 0x00007f41687ac4ff <+95>: test %rax,%rax 0x00007f41687ac502 <+98>: je 0x7f41687ac510 <gtk_widget_get_accessible+112> 0x00007f41687ac504 <+100>: add $0x8,%rsp 0x00007f41687ac508 <+104>: mov %rbx,%rdi 0x00007f41687ac50b <+107>: pop %rbx 0x00007f41687ac50c <+108>: pop %rbp 0x00007f41687ac50d <+109>: jmpq *%rax 0x00007f41687ac50f <+111>: nop 0x00007f41687ac510 <+112>: lea 0x1329b8(%rip),%rdx # 0x7f41688deecf 0x00007f41687ac517 <+119>: lea 0x135292(%rip),%rsi # 0x7f41688e17b0 <__PRETTY_FUNCTION__.59738> 0x00007f41687ac51e <+126>: lea 0x5ba7e(%rip),%rdi # 0x7f4168807fa3 0x00007f41687ac525 <+133>: callq 0x7f4168540220 <g_return_if_fail_warning@plt> 0x00007f41687ac52a <+138>: add $0x8,%rsp 0x00007f41687ac52e <+142>: xor %eax,%eax 0x00007f41687ac530 <+144>: pop %rbx 0x00007f41687ac531 <+145>: pop %rbp 0x00007f41687ac532 <+146>: retq End of assembler dump.
commit 203afb940089e5c5f8c1767e7e5107b671d464dc Author: Richard Hughes <richard@hughsie.com> Date: Wed Oct 9 10:11:07 2013 +0100 Do not remove the application widget twice when it changes state Hopefully resolves: https://bugzilla.gnome.org/show_bug.cgi?id=709355
Unfortunately this is the second-hottest crash in F20, so not fixed (at least not in gnome-3-10). https://retrace.fedoraproject.org/faf/problems/1343678/
This bug seems to be fixed with this commit: https://git.gnome.org/browse/gnome-software/commit/?id=29691f818ed6d386a2879c685c0c37d657e0dcc0 The reason why it still appears on the top of the list of crashes of gnome-software in F20 is that the fix has not been backported to 3.10 and 3.12 branch. Since F20 is still supported I suggest you to backport this change and provide a new release from the old branches. This should be easy. Is there anything else I can help?
Sorry, I was wrong with the comment above, at least regarding the commit reference. In fact, the bug has been fixed in master with the following three commits: 1. https://git.gnome.org/browse/gnome-software/diff/src/gs-app-tile.c?id=b4104f910c556b589e58c24c605b5211011f534b 2. https://git.gnome.org/browse/gnome-software/commit/?id=0d1bf106b49f5dc2315351e0f9f9fd04f82ec5b2 3. https://git.gnome.org/browse/gnome-software/commit/?id=76114a2b616262c1b19f4658d572dc2c113ae766 More details: 1. This is actually a part of a large commit and only the changes in this single file are applicable for this bug except the change which introduces GS_APP_STATE_QUEUED which should be removed or just not applied. (Unless we also define GS_APP_STATE_QUEUED, it is added to gs-app.h in the same commit.) This is the only commit which is also present in 3.12 branch. 2. This commit backports nicely, needs no comment, just apply and enjoy. Should also be backported to 3.12 branch. 3. This backports almost nicely, the only problem is that it tries to update the files gs-app-addon-row.c and gs-app-row.c which are not present in 3.10 and 3.12. Should also be backported to 3.12. Probably we should also apply a similar change to gs-app-widget.c which has later been renamed to gs-app-row.c and has never been fixed. So far I have tested with 3.10 (Fedora 20) and it seems to be working correctly. I have made no tests with 3.12. Here is how to reproduce the bug: - click Remove or Install buttons on several applications, make sure it will take much time; - go to the main page or to a specific category page, there must be an app tile (or popular or featured tile) showing an application which is about to be removed or installed; this will link the application with the tile; - go to another page; make sure that the application tile is no longer displayed and the application is not yet removed or installed; - when the application is installed or removed its state changes and the application tries to update the tile which has already been destroyed, this causes a crash. Please notify me if you need more input from me (more tests, patches for the old branches, etc.)
I would rather not touch gnome-software on F20 and just let it be the way it is, unless something really critical comes up. Only 2 months left until EOL...
This would also be fine but in that case please consider closing this bug report as RESOLVED/OBSOLETE or whatever you find appropriate. Actually, it is fixed in 3.14. Matthias, Richard, what do you think?