Dear Maintainer,

Sep 23 09:58:10 leopard gnome-software[3304]: FIXME: Unknown progress handling
is not yet implemented for GsProgressButton
Sep 23 09:58:11 leopard fwupd[3397]: 06:58:11:0428 FuCommon
fu_common_read_uint16_safe: assertion 'buf != NULL' failed
Sep 23 09:58:11 leopard kernel: fwupd[3397]: segfault at 8 ip 00007f4e9c012efa
sp 00007fff5687e1a0 error 4 in libfu_plugin_uefi_dbx.so[7f4e9c012000+3000]
Sep 23 09:58:11 leopard kernel: Code: fb ff ff 49 89 c7 48 85 c0 0f 85 71 ff ff
ff 48 8b 44 24 30 4c 89 e9 48 8d 3d 02 22 00 00 48 8d 15 a3 21 00 00 be 80 00
00 00 <4c> 8b 40 08 31 c0 e8 9b fb ff ff 48 8b 7c 24 30 48 85 ff 74 05 e8
Sep 23 09:58:11 leopard systemd[1]: fwupd.service: Main process exited,
code=killed, status=11/SEGV


This crashing line above would point to function 
fu_uefi_dbx_signature_list_validate.
There it possibly wanted to output the message "failed to get checksum for %s: 
%s".

Kind regards,
Bernhard


benutzer@debian:~$ gdb -q
(gdb) set width 0
(gdb) set pagination off
(gdb) set environment 
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/fwupd-plugins-3/libfu_plugin_uefi_dbx.so
(gdb) file /usr/libexec/fwupd/fwupd
Reading symbols from /usr/libexec/fwupd/fwupd...
Reading symbols from 
/usr/lib/debug/.build-id/fe/65dd99a090ab87754fcd40f9833e4f127abe58.debug...
(gdb) tb main
Temporary breakpoint 1 at 0x13c20: file ../src/fu-main.c, line 1913.
(gdb) run
Starting program: /usr/libexec/fwupd/fwupd
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Temporary breakpoint 1, main (argc=1, argv=0x7fffffffe5a8) at 
../src/fu-main.c:1913
1913    ../src/fu-main.c: Datei oder Verzeichnis nicht gefunden.
(gdb) pipe info target | grep "\.text"
...
        0x00007ffff7fc4ae0 - 0x00007ffff7fc60d5 is .text in 
/usr/lib/x86_64-linux-gnu/fwupd-plugins-3/libfu_plugin_uefi_dbx.so
...
(gdb) find /b 0x00007ffff7fc4ae0, 0x00007ffff7fc60d5, 0xfb, 0xff, 0xff, 0x49, 
0x89, 0xc7, 0x48, 0x85, 0xc0, 0x0f, 0x85, 0x71, 0xff, 0xff, 0xff, 0x48, 0x8b, 
0x44, 0x24, 0x30, 0x4c, 0x89, 0xe9, 0x48, 0x8d, 0x3d, 0x02, 0x22, 0x00, 0x00, 
0x48, 0x8d, 0x15, 0xa3, 0x21, 0x00, 0x00, 0xbe, 0x80, 0x00, 0x00, 0x00, 0x4c, 
0x8b, 0x40, 0x08, 0x31, 0xc0, 0xe8, 0x9b, 0xfb, 0xff, 0xff, 0x48, 0x8b, 0x7c, 
0x24, 0x30, 0x48, 0x85, 0xff, 0x74, 0x05, 0xe8
0x7ffff7fc4ed0 <fu_uefi_dbx_signature_list_validate+336>
1 pattern found.
(gdb) b * (0x7ffff7fc4ed0 + 42)
Breakpoint 2 at 0x7ffff7fc4efa: file ../plugins/uefi-dbx/fu-uefi-dbx-common.c, 
line 61.
(gdb) info b
Num     Type           Disp Enb Address            What
2       breakpoint     keep y   0x00007ffff7fc4efa in 
fu_uefi_dbx_signature_list_validate_volume at 
../plugins/uefi-dbx/fu-uefi-dbx-common.c:61
(gdb) disassemble /r 0x7ffff7fc4ed0, 0x7ffff7fc4ed0 + 62
Dump of assembler code from 0x7ffff7fc4ed0 to 0x7ffff7fc4f0e:
   0x00007ffff7fc4ed0 <fu_uefi_dbx_signature_list_validate+336>:        fb      
sti
   0x00007ffff7fc4ed1 <fu_uefi_dbx_signature_list_validate+337>:        ff      
(bad)
   0x00007ffff7fc4ed2 <fu_uefi_dbx_signature_list_validate+338>:        ff 49 
89        decl   -0x77(%rcx)
   0x00007ffff7fc4ed5 <fu_uefi_dbx_signature_list_validate+341>:        c7      
(bad)
   0x00007ffff7fc4ed6 <fu_uefi_dbx_signature_list_validate+342>:        48 85 
c0                test   %rax,%rax
   0x00007ffff7fc4ed9 <fu_uefi_dbx_signature_list_validate+345>:        0f 85 71 ff 
ff ff       jne    0x7ffff7fc4e50 <fu_uefi_dbx_signature_list_validate+208>
   0x00007ffff7fc4edf <fu_uefi_dbx_signature_list_validate+351>:        48 8b 
44 24 30          mov    0x30(%rsp),%rax
   0x00007ffff7fc4ee4 <fu_uefi_dbx_signature_list_validate+356>:        4c 89 
e9                mov    %r13,%rcx
   0x00007ffff7fc4ee7 <fu_uefi_dbx_signature_list_validate+359>:        48 8d 
3d 02 22 00 00    lea    0x2202(%rip),%rdi        # 0x7ffff7fc70f0
   0x00007ffff7fc4eee <fu_uefi_dbx_signature_list_validate+366>:        48 8d 
15 a3 21 00 00    lea    0x21a3(%rip),%rdx        # 0x7ffff7fc7098
   0x00007ffff7fc4ef5 <fu_uefi_dbx_signature_list_validate+373>:        be 80 
00 00 00          mov    $0x80,%esi
   0x00007ffff7fc4efa <fu_uefi_dbx_signature_list_validate+378>:        4c 8b 40 08             mov    
0x8(%rax),%r8                  <<<<<<<<<<
   0x00007ffff7fc4efe <fu_uefi_dbx_signature_list_validate+382>:        31 c0   
                xor    %eax,%eax
   0x00007ffff7fc4f00 <fu_uefi_dbx_signature_list_validate+384>:        e8 9b fb ff 
ff          call   0x7ffff7fc4aa0 <g_log@plt>
   0x00007ffff7fc4f05 <fu_uefi_dbx_signature_list_validate+389>:        48 8b 
7c 24 30          mov    0x30(%rsp),%rdi
   0x00007ffff7fc4f0a <fu_uefi_dbx_signature_list_validate+394>:        48 85 
ff                test   %rdi,%rdi
   0x00007ffff7fc4f0d <fu_uefi_dbx_signature_list_validate+397>:        74 05         
          je     0x7ffff7fc4f14 <fu_uefi_dbx_signature_list_validate+404>
End of assembler dump.


https://sources.debian.org/src/fwupd/1.5.7-4/plugins/uefi-dbx/fu-uefi-dbx-common.c/#L61


60              if (checksum == NULL) {
61                      g_debug ("failed to get checksum for %s: %s", fn, 
error_local->message);
62                      continue;
63              }

Reply via email to