From: Thiago Jung Bauermann <thiago.bauermann@gmail.com>
To: gdb-patches@sourceware.org
Cc: Daniel Jacobowitz <drow@false.org>,
Tom Tromey <tromey@redhat.com>,
Vladimir Prus <vladimir@codesourcery.com>
Subject: Re: Value reference counting
Date: Mon, 20 Jul 2009 13:30:00 -0000 [thread overview]
Message-ID: <200907201022.19758.thiago.bauermann@gmail.com> (raw)
In-Reply-To: <20090717190418.GA9041@caradoc.them.org>
Em Sexta-feira 17 Julho 2009 16:04:18 Daniel Jacobowitz escreveu:
> On Fri, Jul 17, 2009 at 12:53:52PM -0600, Tom Tromey wrote:
> > This will work fine for Python. Also, I think that this model is
> > clearer than what I did.
> >
> > It seems to me that at this point, release_value is doing a walk of a
> > linked list for no particular benefit. Suppose we deleted release_value
> > and replaced all calls to it with calls to value_incref?
> >
> > This might result in some values living slightly longer than they
> > otherwise would have (they will live until free_all_values, whereas
> > currently they will be deleted at value_free time, which might or might
> > not be sooner).
> >
> > The only thing I could think of is whether this would affect watchpoint
> > operation, since IIUC the watchpoint code examines all_values. But, if
> > this problem exists, it could be worked around by examining the
> > reference count of values on the chain.
> >
> > What do you think?
>
> I had a good reason this would leak values for watchpoints, but now I
> can't get it to work out. Still, it makes me nervous.
Watchpoints hold their own references to values. Other than that, IMHO if
watchpoint code causes values to be leaked, that is a bug, not a special
feature which should be respected... WDYT?
> free_all_values can have a very long interval. But it looks like
> breakpoint commands always run it, so not unbounded user behavior.
> What about breakpoint conditions? Is anything released and free'd
> during a condition check going to linger until we stop?
I don't like the idea of having the GC being ran at unpredictably long
intervals. Aren't we aiming at debugging big fat apps with big insane
debugging sessions afterall?
--
[]'s
Thiago Jung Bauermann
next prev parent reply other threads:[~2009-07-20 13:21 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-17 19:03 Daniel Jacobowitz
2009-07-17 19:04 ` Tom Tromey
2009-07-17 19:25 ` Daniel Jacobowitz
2009-07-17 22:55 ` Tom Tromey
2009-07-20 13:30 ` Thiago Jung Bauermann [this message]
2009-07-20 13:34 ` Daniel Jacobowitz
2009-07-20 14:57 ` Thiago Jung Bauermann
2009-07-20 17:34 ` Tom Tromey
2009-07-20 19:45 ` Thiago Jung Bauermann
2009-07-20 9:55 ` Vladimir Prus
2009-07-20 13:40 ` Daniel Jacobowitz
2009-07-20 15:08 ` Vladimir Prus
2009-07-21 18:18 ` Daniel Jacobowitz
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=200907201022.19758.thiago.bauermann@gmail.com \
--to=thiago.bauermann@gmail.com \
--cc=drow@false.org \
--cc=gdb-patches@sourceware.org \
--cc=tromey@redhat.com \
--cc=vladimir@codesourcery.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