public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla@sourceware.org>
To: gdb-prs@sourceware.org
Subject: [Bug gdb/17525] target-async: breakpoint commands not executed when program run from -x script
Date: Wed, 14 Jan 2015 12:43:00 -0000	[thread overview]
Message-ID: <bug-17525-4717-6Cx4Pl1Yug@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-17525-4717@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=17525

--- Comment #5 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The gdb-7.9-branch branch has been updated by Pedro Alves
<palves@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e18fc124cef918e6a7d9de89804850a6f8f765b4

commit e18fc124cef918e6a7d9de89804850a6f8f765b4
Author: Pedro Alves <palves@redhat.com>
Date:   Wed Jan 14 12:38:47 2015 +0000

    PR17525 - breakpoint commands not executed when program run from -x script

    Executing a gdb script that runs the inferior (from the command line
    with -x), and has it hit breakpoints with breakpoint commands that
    themselves run the target, is currently broken on async targets
    (Linux, remote).

    While we're executing a command list or a script, we force the
    interpreter to be sync, which results in some functions nesting an
    event loop and waiting for the target to stop, instead of returning
    immediately and having the top level event loop handle the stop.

    The issue with this bug is simply that bpstat_do_actions misses
    checking whether the interpreter is sync.  When we get here, in the
    case of executing a script (or, when the interpreter is sync), the
    program has already advanced to the next breakpoint, through
    maybe_wait_sync_command_done.  We need to process its breakpoints
    immediately, just like with a sync target.

    Tested on x86_64 Fedora 20.

    gdb/
    2015-01-14  Pedro Alves  <palves@redhat.com>

        PR gdb/17525
        * breakpoint.c: Include "interps.h".
        (bpstat_do_actions_1): Also check whether the interpreter is
        async.

    gdb/testsuite/
    2015-01-14  Pedro Alves  <palves@redhat.com>
            Joel Brobecker  <brobecker@adacore.com>

        PR gdb/17525
        * gdb.base/bp-cmds-execution-x-script.c: New file.
        * gdb.base/bp-cmds-execution-x-script.exp: New file.
        * gdb.base/bp-cmds-execution-x-script.gdb: New file.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


  parent reply	other threads:[~2015-01-14 12:43 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-30 18:23 [Bug gdb/17525] New: " brobecker at gnat dot com
2014-10-30 18:37 ` [Bug gdb/17525] " brobecker at gnat dot com
2015-01-13 17:57 ` palves at redhat dot com
2015-01-13 19:01 ` palves at redhat dot com
2015-01-13 21:03 ` dje at google dot com
2015-01-14 12:38 ` cvs-commit at gcc dot gnu.org
2015-01-14 12:43 ` cvs-commit at gcc dot gnu.org [this message]
2015-01-14 13:18 ` cvs-commit at gcc dot gnu.org
2015-01-14 13:48 ` palves at redhat dot com
2021-11-08  8:28 ` richardshodges7 at gmail dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-17525-4717-6Cx4Pl1Yug@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=gdb-prs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).