Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@false.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: jjohnstn@redhat.com, gdb-patches@sources.redhat.com
Subject: Re: [RFA]: Modified Watchthreads Patch
Date: Fri, 11 Feb 2005 18:31:00 -0000	[thread overview]
Message-ID: <20050211171751.GA31423@nevyn.them.org> (raw)
In-Reply-To: <01c5105b$Blat.v2.4$bb9e28a0@zahav.net.il>

On Fri, Feb 11, 2005 at 07:03:20PM +0200, Eli Zaretskii wrote:
> Perhaps I misunderstood, but the above 2 alternatives don't use
> observers.  And since these are Linux-specific issues, I left it to
> Daniel and you to select the best alternative.
> 
> In other words, I don't think you need any input from me to decide how
> to solve this.  Am I missing something?

No, you aren't.  For this problem, we're set.  However, I'd like to
discuss the design principle for a bit, so that we know how to approach
this problem in the future.  I found the message I was thinking of.  I
wrote:

  <quote>

  > > Observe, we're back to the core question of the role of observers here.
  > > I prefer #2 to #1.  But #2 is _functionally_ equivalent to providing an
  > > observer named linux_enable_watchpoints_for_new_threads.
  >
  > It is functionally equivalent, but ideologically different: it's a
  > detail of GDB internals as opposed to a general-purpose extension
  > mechanism.

  I do not consider GDB's observer mechanism to be a general-purpose
  extension mechanism.  Some day, if there is a revival of libgdb, then
  maybe it will be usable as one - and at that point, perhaps we'll need
  a second copy with different events.  I think the current observers are
  a mechanism for nominally independent internal modules of GDB to
  communicate.

  Are "breakpoint" and "shared library" any more independent than
  "common Linux support" and "some particular Linux backend"?  Maybe so,
  but the line seems pretty shaky to me.  Certainly the breakpoint module
  has a lot of code to handle shared libraries, and the shared library
  code makes use of breakpoints.

  </quote>

My current feeling is that either:
  (A) we should use the same mechanism to create two sets of hooks,
      one to be considered a general extension mechanism and the other
      an internal modularity aid;
or
  (B) we should define the observers as the latter rather than the
      former, and declare the former niche unfilled.

Otherwise there's just a lot of wasted code duplication.

What do you think?  Am I way off on the role of observers?  Since we
don't "support" plugging arbitrary code into them, I have trouble
considering them an extension mechanism.

-- 
Daniel Jacobowitz
CodeSourcery, LLC


  reply	other threads:[~2005-02-11 17:17 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-10  4:24 Jeff Johnston
2004-12-10 13:31 ` Eli Zaretskii
2004-12-10 14:21   ` Daniel Jacobowitz
2004-12-10 18:01     ` Jeff Johnston
2004-12-24 11:05       ` Michael Snyder
2005-01-07  0:23         ` jjohnstn
2004-12-10 23:01     ` Eli Zaretskii
2004-12-10 23:31       ` Daniel Jacobowitz
2004-12-10 19:10   ` Jeff Johnston
2004-12-10 22:51     ` Eli Zaretskii
2004-12-23 22:32   ` Michael Snyder
2004-12-24 14:46     ` Eli Zaretskii
2004-12-10 20:03 ` Daniel Jacobowitz
2004-12-10 20:30   ` Jeff Johnston
2004-12-10 20:47     ` Daniel Jacobowitz
2004-12-10 22:18       ` Jeff Johnston
2004-12-10 23:57         ` Jeff Johnston
2004-12-11  0:31           ` Daniel Jacobowitz
2004-12-11  1:28             ` Jeff Johnston
2004-12-11 14:34           ` Eli Zaretskii
2004-12-11 16:56             ` Daniel Jacobowitz
2004-12-11 18:01               ` Eli Zaretskii
2004-12-11 18:06                 ` Daniel Jacobowitz
2004-12-11 19:08                   ` Eli Zaretskii
2004-12-11 19:30                     ` Daniel Jacobowitz
2004-12-12  5:22                       ` Eli Zaretskii
2004-12-11 21:54                   ` Mark Kettenis
2004-12-11 14:53           ` Mark Kettenis
2004-12-11 16:52             ` Eli Zaretskii
2004-12-11  2:04       ` Daniel Jacobowitz
2004-12-11 16:11         ` Mark Kettenis
2004-12-10 23:06   ` Eli Zaretskii
2004-12-10 23:10     ` Daniel Jacobowitz
2004-12-10 23:37       ` Eli Zaretskii
2004-12-10 23:52         ` Daniel Jacobowitz
2004-12-11 11:32           ` Eli Zaretskii
2004-12-11 14:49             ` Mark Kettenis
2004-12-11 16:48               ` Daniel Jacobowitz
2004-12-11 17:33                 ` Eli Zaretskii
2004-12-11 17:53                   ` Daniel Jacobowitz
2004-12-11 18:07                     ` Eli Zaretskii
2004-12-11 18:50                       ` Daniel Jacobowitz
2004-12-11 19:06                 ` Mark Kettenis
2004-12-11 19:07                   ` Daniel Jacobowitz
2004-12-11 16:49               ` Eli Zaretskii
2004-12-11 16:37             ` Daniel Jacobowitz
2004-12-11 17:30               ` Eli Zaretskii
2004-12-11 17:38                 ` Daniel Jacobowitz
2004-12-11 18:02                   ` Eli Zaretskii
2004-12-11 18:10                     ` Daniel Jacobowitz
2005-01-13 19:22                   ` Jeff Johnston
2005-02-11  1:57                     ` Daniel Jacobowitz
2005-02-11 18:18                       ` Eli Zaretskii
2005-02-11 18:31                         ` Daniel Jacobowitz [this message]
2005-02-12 21:50                           ` Eli Zaretskii
2004-12-11 19:35 Ulrich Weigand

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=20050211171751.GA31423@nevyn.them.org \
    --to=drow@false.org \
    --cc=eliz@gnu.org \
    --cc=gdb-patches@sources.redhat.com \
    --cc=jjohnstn@redhat.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