Hello, On Sun, Jan 23, 2011 at 03:43:29AM +0100, Przemysław Pawełczyk wrote: > Package: gdb > Version: 7.0.1-2+b1 > Severity: normal > Tags: patch > Now I can say that it's broken, but finding out that gdb is the culprit, > whether it was fixed already in newer versions and when exactly took me > all day. Squeeze is frozen, so I was determined to find a solution, > believing it will be applied.
Thanks for the finding and work! Do you think we can close this bug for unstable/wheezy? As I understand is it already fixed in 7.2. OTOH, I wasn't thinking on updating already released squeeze, or do you think it is very important fix which should go into a point release? I was also not planning to use backports, but if it helps we could prepare a backports upload for later release. > * The problem exists in gdb versions up to 7.1 or more precisely: > > commit ed72348da877003a79bfa638c04afed888ce045e > Author: Vladimir Prus <[email protected]> > Date: Sat Nov 28 17:00:53 2009 +0000 > > * target.c (target_terminal_inferior): Use target_can_async_p, not > target_is_async_p. > > which fixes it. > > http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/target.c.diff?r1=1.233&r2=1.234&cvsroot=src > > * What happens if mentioned patch is not applied? > > Asynchronous commands are not invoked if the target is running. It's > especially important in the case of interrupting the execution of the > target using "-exec-interrupt", which should always work. > > But it's not in gdb 7.0.1. > > * How I can see it myself? > > Almost real-world example: > > $ qemu -hda /path/to/linux-0.2.img -s # [1] > # wait at least until kernel is loaded > $ gdb # we'll mimic some Qt Creator actions here > # normally we would provide target image, > # but it's not important to show the problem > set target-async on > target remote :1234 > # vm is interrupted now, try writing something in its win > -exec-continue > # vm is running now, your input shows > -exec-interrupt > # nothing happens, writing in vm still works, but it > # SHOULD NOT // apply patch to fix it > > You can even recompile qemu with uncommented DEBUG_GDB define in > gdbstub.c to see that appropriate packet is not sent with > -exec-interrupt. > > [1] http://wiki.qemu.org/download/linux-0.2.img.bz2 > > -- System Information: > Debian Release: 6.0 > APT prefers testing > APT policy: (500, 'testing') > Architecture: amd64 (x86_64) > > Kernel: Linux 2.6.32-5-amd64 (SMP w/2 CPU cores) > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) > Shell: /bin/sh linked to /bin/bash > > Versions of packages gdb depends on: > ii gdbserver 7.0.1-2+b1 The GNU Debugger (remote server) > ii libc6 2.11.2-7 Embedded GNU C Library: Shared > lib > ii libexpat1 2.0.1-7 XML parsing C library - runtime > li > ii libncurses5 5.7+20100313-5 shared libraries for terminal > hand > ii libpython2.6 2.6.6-8+b1 Shared Python runtime library > (ver > ii libreadline6 6.1-3 GNU readline and history > libraries > ii zlib1g 1:1.2.3.4.dfsg-3 compression library - runtime > > gdb recommends no packages. > > Versions of packages gdb suggests: > pn gdb-doc <none> (no description available) > > -- debconf-show failed > > > -- Héctor Orón "Our Sun unleashes tremendous flares expelling hot gas into the Solar System, which one day will disconnect us." -- Day DVB-T stop working nicely Video flare: http://antwrp.gsfc.nasa.gov/apod/ap100510.html
signature.asc
Description: Digital signature

