After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 789985 - Fwupd assertion failed and segfault
Fwupd assertion failed and segfault
Status: RESOLVED FIXED
Product: gnome-software
Classification: Applications
Component: General
git master
Other Linux
: Normal normal
: ---
Assigned To: GNOME Software maintainer(s)
GNOME Software maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2017-11-06 20:08 UTC by Reto Kaiser
Modified: 2017-11-22 10:14 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Reto Kaiser 2017-11-06 20:08:44 UTC
Starting gnome-software with "--verbose" prints the following output and then segfaults:
-----
[...]
19:50:19:0375 GsPluginFwupd no updates for DELL-f9bdd338-b410-5e73-902d-7b6e4694bb56lu
19:50:19:0375 Fwupd fwupd_release_get_appstream_id: assertion 'FWUPD_IS_RELEASE (release)' failed
19:50:19:0375 As  as_utils_unique_id_build: assertion 'id != NULL' failed
19:50:19:0375 Gs  gs_plugin_cache_lookup: assertion 'key != NULL' failed
[1]    13105 segmentation fault (core dumped)  gnome-software --verbose
-----

Stacktrace:
-----
  • #0 g_str_hash
  • #1 g_hash_table_lookup
  • #2 gs_plugin_cache_add
  • #3 0x00007fffd39f0d19 in
  • #4 0x00007fffd39f10e1 in
  • #5 0x00005555555bfdb8 in
  • #6 0x00005555555cbfbb in
  • #7 0x00005555555ce9f9 in
  • #8 0x00007ffff6b6c0a9 in
  • #9 0x00007ffff6e6ef5b in
  • #10 0x00007ffff6e741eb in
  • #11 start_thread
  • #12 clone


This happens with Arch linux' current version "3.26.1+11+ge1ede3c6-1" which is commit e1ede3c6 plus some other commits cherry picked.
But it also happens if I build "gnome-software" from current master which is "2b19f2ab".
Comment 1 Richard Hughes 2017-11-06 20:35:33 UTC
What version of fwupd is installed?
Comment 2 Reto Kaiser 2017-11-07 07:10:15 UTC
$ fwupdmgr --version

client version:	1.0.0
daemon version:	1.0.0
compile-time dependency versions
	appstream-glib:	0.6.13
	gusb:	0.2.11

While gnome-software is current master 2b19f2ab 

Does that help? Or should I provide anything else?
Comment 3 Niels De Graef 2017-11-19 11:36:07 UTC
This happens to me as well after upgrading to Fedora 27 and makes GNOME Software completely unusable, as it crashes on startup.

More info:
* Dell XPS 15 (maybe the same machine as Reto?)
* GNOME Software version: 3.26.2
* fwupd: version 1.0.1 (both client and daemon)
Comment 4 Richard Hughes 2017-11-19 20:00:09 UTC
Can you get a backtrace with debugging symbols installed please. I'm a bit confused how this is happening.
Comment 5 Niels De Graef 2017-11-19 20:38:07 UTC
Backtrace with debug symbols:

  • #0 g_str_hash
    at ghash.c line 1882
  • #1 g_hash_table_lookup_node
    at ghash.c line 379
  • #2 g_hash_table_lookup
    at ghash.c line 1153
  • #3 gs_plugin_cache_add
    at ../../../../jhbuild/checkout/gnome-software/lib/gs-plugin.c line 1552
  • #4 gs_plugin_fwupd_new_app_from_device
    at ../../../../jhbuild/checkout/gnome-software/plugins/fwupd/gs-plugin-fwupd.c line 389
  • #5 gs_plugin_fwupd_add_updates
    at ../../../../jhbuild/checkout/gnome-software/plugins/fwupd/gs-plugin-fwupd.c line 644
  • #6 gs_plugin_loader_call_vfunc
    at ../../../../jhbuild/checkout/gnome-software/lib/gs-plugin-loader.c line 650
  • #7 gs_plugin_loader_run_results
    at ../../../../jhbuild/checkout/gnome-software/lib/gs-plugin-loader.c line 1101
  • #8 gs_plugin_loader_process_thread_cb
    at ../../../../jhbuild/checkout/gnome-software/lib/gs-plugin-loader.c line 3100
  • #9 g_task_thread_pool_thread
    at gtask.c line 1328
  • #10 g_thread_pool_thread_proxy
    at gthreadpool.c line 307
  • #11 g_thread_proxy
    at gthread.c line 784
  • #12 start_thread
    at pthread_create.c line 465
  • #13 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 95

Comment 6 Niels De Graef 2017-11-19 21:28:02 UTC
FWIW, this is also the last message I get before all the failing assertions:

> 20:36:41:0409 GsPluginFwupd /home/niels/.cache/gnome-software/fwupd/f7375df3c5f903f55ffd64e9ce891da3aa535355-DellTpm1.2_Fw5.81.2.1.cab does not exist for */*/*/firmware/com.dell.uefi5034bac4.firmware/*, ignoring
Comment 7 Richard Hughes 2017-11-20 10:08:54 UTC
Are you perhaps building gnome-software against version 0.9.x of libfwupd and running it with version 1.0.x? If not, can you attach the output of "fwupdmgr get-updates" please.
Comment 8 Niels De Graef 2017-11-20 10:15:38 UTC
(In reply to Richard Hughes from comment #7)
> Are you perhaps building gnome-software against version 0.9.x of libfwupd
> and running it with version 1.0.x? If not, can you attach the output of
> "fwupdmgr get-updates" please.
I'm building it with 1.0.x (this crash happens both on jhbuild and the official fedora package).

Output:
> No upgrades for device, current is RQR24.05_B0029: RQR24.05_B0029=same          
> XPS 15 9550 TPM 1.2 has firmware updates:                                       
> GUID:                    9055a777-a92f-55da-8d34-6614d8f9df92                   
> ID:                      com.dell.uefi5034bac4.firmware                         
> Update Version:          5.81.2.1       
> Update Remote ID:        lvfs           
> Update Checksum:         SHA1(77ae490f6cf7b03dd6dd485b782bde8274329af7)         
> Update Location:         https://fwupd.org/downloads/f7375df3c5f903f55ffd64e9ce891da3aa535355-DellTpm1.2_Fw5.81.2.1.cab
> XPS 15 9550 System Firmware has firmware updates:                               
> GUID:                    124c207d-5db8-4d95-bd31-34fd971b34f9                   
> ID:                      com.dell.uefi124c207d.firmware                         
> Update Version:          0.1.3.0        
> Update Remote ID:        lvfs           
> Update Checksum:         SHA1(344d291afcc373703ff048af4b89e6179f70bf45)         
> Update Location:         https://fwupd.org/downloads/22dc0e12b8d30244fe965120a4eea27d0a6c735c-firmware_XPS_9550_1_3_0.wu.cab
> ID:                      com.dell.uefi124c207d.firmware                         
> Update Version:          0.1.4.0        
> Update Remote ID:        lvfs           
> Update Checksum:         SHA1(a55013205010dad13f69e81a6bcafe7e38316fdb)         
> Update Location:         https://fwupd.org/downloads/a1826fd99664fd61e4f00a309ab6326ad6801354-firmware_XPS_9550_1.4.0.wu.cab
Comment 9 Richard Hughes 2017-11-20 14:58:37 UTC
Can you try with master please:

commit d1b75f27e46c0dd5b656ce7bc5859158a80299c7 (HEAD -> master)
Author: Richard Hughes <richard@hughsie.com>
Date:   Mon Nov 20 14:29:23 2017 +0000

    fwupd: Do not crash when trying to list a locked device
    
    Locked devices do not have FwupdRelease objects set as the 'Install' action is
    mapped internally to an 'Unlock' action instead. Create a GsApp object based
    just on the FwupdDevice properties in this case.
    
    Should resolve: https://bugzilla.gnome.org/show_bug.cgi?id=789985

:100644 100644 74619790... 467c97d9... M        plugins/fwupd/gs-plugin-fwupd.c
Comment 10 Niels De Graef 2017-11-20 18:46:27 UTC
Yep, that seems to fix it!

Thanks *a lot* for the quick response :-)
Comment 11 Kalev Lember 2017-11-21 11:40:25 UTC
I backported the fix and released 3.26.3 with it. https://bodhi.fedoraproject.org/updates/gnome-software-3.26.3-1.fc27 is the Fedora 27 build, would be awesome if you could test that as well.
Comment 12 Reto Kaiser 2017-11-22 10:14:38 UTC
3.26.3-1 on Arch Linux works for me, thanks!