Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Andrew Cagney <ac131313@cygnus.com>
To: Keith Seitz <keiths@cygnus.com>
Cc: gdb@sources.redhat.com, insight <insight@sources.redhat.com>
Subject: Re: [RFC] Inferior stop events
Date: Fri, 15 Jun 2001 00:10:00 -0000	[thread overview]
Message-ID: <3B297B72.2050409@cygnus.com> (raw)
In-Reply-To: <Pine.GSO.4.33.0106131332100.29122-100000@makita.cygnus.com>

[I'm going to add Insight as this is really an insight architecture question]


> Hi,
> 
> The next part of my ongoing quest to get information out of gdb:
> inferior_stop events. These events are to inform a UI that the inferior
> has stopped running and why it has stopped.
> 
> I propose to take "enum stop_reason" from infrun.c and move it into
> inferior.h. This enum will be used by both print_stop_reason (which is
> really a cli function) and user interfaces, like Insight. (Pretend I
> didn't say that.)
> 
> It is then my intention to litter infrun.c with event notifications, which
> provide a reason for the stop, and some supplemental info on the stop
> (signal, exit status, breakpoint#, etc).
> 
> Does this sound like a reasonable approach?


It sounds wrong.  Have you looked at what MI did?


> Your comments and recommendations appreciated.
> Keith


Keith,

The thing I don't understand in all this is how GDB / Insight will be 
coupled together.  Right now I would draw things as:

	Insight
	   |
	hook()
	  |
	GDB internals
	  |
	Event Loop

 
I think everyone agreed this was wrong long ago.  It should be:


	GDB Internals -> message -> Insight
	   |                           |
	   -------- Event Loop ---------


That is, instead of Insight sitting on top of GDB processing stuff 
instantly, Insight would sit adjacent to GDB, allow GDB to complete its 
processing and *then* start processing any events it has outstanding.

In such a model, I don't think any (or very few) hooks are needed. 
Insight can find out the stop reason by asking GDB (just like MI did). 
All GDB needs to do is tell insight that the program state changed.

	Andrew


  parent reply	other threads:[~2001-06-15  0:10 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-13 13:45 Keith Seitz
2001-06-14  0:59 ` Eli Zaretskii
2001-06-14  8:13   ` Keith Seitz
2001-06-14  9:00     ` Eli Zaretskii
2001-06-15  0:10 ` Andrew Cagney [this message]
2001-06-15  7:38   ` Keith Seitz
2001-06-15 10:44     ` Elena Zannoni
2001-06-15 10:58       ` Keith Seitz
2001-06-15 13:44         ` Andrew Cagney

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=3B297B72.2050409@cygnus.com \
    --to=ac131313@cygnus.com \
    --cc=gdb@sources.redhat.com \
    --cc=insight@sources.redhat.com \
    --cc=keiths@cygnus.com \
    /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