qemu-aarch64-static segfaults python3

Bug #1912790 reported by Santiago Piccinini
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Invalid
Undecided
Unassigned

Bug Description

qemu-aarch64-static is segfaulting in a debian build process using debootstrap.

```
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/qemu-aarch64-static...
Reading symbols from /usr/lib/debug/.build-id/30/efd3930fb9519b21470b113679376f2ffbb41a.debug...
[New LWP 21817]
[New LWP 21819]

warning: Corrupted shared library list: 0xd5f140 != 0x0
Warning: couldn't activate thread debugging using libthread_db: Cannot find new threads: debugger service failed
Core was generated by `/usr/bin/qemu-aarch64-static /usr/bin/python3.9 -c import imp; print(imp.get_ta'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 have_mmap_lock () at ../../linux-user/mmap.c:43
43 return mmap_lock_count > 0 ? true : false;
[Current thread is 1 (LWP 21817)]
(gdb) bt
#0 have_mmap_lock () at ../../linux-user/mmap.c:43
#1 0x000000000058eb2c in page_set_flags (start=start@entry=4194304, end=end@entry=26451968, flags=flags@entry=8) at ../../accel/tcg/translate-all.c:2568
#2 0x00000000005638cd in target_mmap (start=start@entry=4194304, len=<optimized out>, len@entry=22257160, target_prot=target_prot@entry=0, flags=16434,
    fd=fd@entry=-1, offset=offset@entry=0) at ../../linux-user/mmap.c:602
#3 0x000000000057042d in load_elf_image (image_name=0x7ffff7b7e8d8 "/usr/bin/python3.9", image_fd=3, info=info@entry=0x7ffff7b7ce70,
    pinterp_name=pinterp_name@entry=0x7ffff7b7cbd0, bprm_buf=bprm_buf@entry=0x7ffff7b7d080 "\177ELF\002\001\001") at ../../linux-user/elfload.c:2700
#4 0x0000000000570b9c in load_elf_binary (bprm=bprm@entry=0x7ffff7b7d080, info=info@entry=0x7ffff7b7ce70) at ../../linux-user/elfload.c:3104
#5 0x00000000005c2fdb in loader_exec (fdexec=fdexec@entry=3, filename=<optimized out>, argv=argv@entry=0x2622910, envp=envp@entry=0x2686340,
    regs=regs@entry=0x7ffff7b7cf70, infop=infop@entry=0x7ffff7b7ce70, bprm=<optimized out>) at ../../linux-user/linuxload.c:147
#6 0x00000000004027f7 in main (argc=<optimized out>, argv=0x7ffff7b7d638, envp=<optimized out>) at ../../linux-user/main.c:810

(gdb) i r
rax 0x0 0
rbx 0x400000 4194304
rcx 0x7a95d2 8033746
rdx 0x8 8
rsi 0x193a000 26451968
rdi 0x400000 4194304
rbp 0x400000 0x400000
rsp 0x7ffff7b7c978 0x7ffff7b7c978
r8 0xffffffff 4294967295
r9 0x0 0
r10 0x4032 16434
r11 0x206 518
r12 0x193a000 26451968
r13 0x8 8
r14 0x8 8
r15 0x193a000 26451968
rip 0x562f20 0x562f20 <have_mmap_lock>
eflags 0x10206 [ PF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0

```

Python3.9 is run as part of the installation of python3-minimal and the segfaults happens reliably here. Debian versionn bullseye (testing)

Version: qemu-aarch64 version 5.2.0 (Debian 1:5.2+dfsg-3)

Host is a qemu-system-x86_64: Linux runner 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64 GNU/Linux.

Tags: linux-user tcg
Revision history for this message
Santiago Piccinini (spiccinini) wrote :
summary: - qemu-aarch64-static segfaults ldconfig
+ qemu-aarch64-static segfaults python3
tags: added: linux-user tcg
Revision history for this message
Santiago Piccinini (spiccinini) wrote :

Sorry, disregard this report. The qemu version actually running was an old version that had this bug (in debian 10). The 5.2 version does not have this issue.
I was confused by binfmt + docker.

Changed in qemu:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.