qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug 1773743] Re: qemu-user -g xxx -E LD_PROFILE=xxx segfault


From: Peter Maydell
Subject: [Bug 1773743] Re: qemu-user -g xxx -E LD_PROFILE=xxx segfault
Date: Sat, 21 Nov 2020 21:06:28 -0000

We were mis-parsing the 'vCont' packet in the gdb protocol, so when gdb
told us "send a SIGPROF (0x1b)" we skipped the first digit in the hex
signal number and interpreted it as "send an 0xb", which happens to be
SIGSEGV.

Should be fixed by this:
20201121210342.10089-1-peter.maydell@linaro.org/">https://patchew.org/QEMU/20201121210342.10089-1-peter.maydell@linaro.org/


** Changed in: qemu
       Status: New => In Progress

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1773743

Title:
  qemu-user -g xxx -E LD_PROFILE=xxx segfault

Status in QEMU:
  In Progress

Bug description:
  Here is two simple steps to reproduce the bug:

  $ qemu-x86_64 -E LD_PROFILE=libc.so.6 -E LD_PROFILE_OUTPUT=. -g 12345
  -L / /bin/ls

  (libc.so and /bin/ls might change on your system, in this case we just
  need a binary with a profilable needed library)

  In a other window launch:

  $ gdb
  (gdb) target remote :12345
  (gdb) c

  At this point qemu will segfault.

  It seems this problem is appends when sigprof passed to gdb.
  One way I have found to bypass this:
  patch gdbstub.c gdb_handlesig and ignore sig if
  sig == TARGET_SIGPROF
  (which means now I can't catch sigprof on gdb anymore)

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1773743/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]