Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Jim Blandy <jimb@red-bean.com>
To: Eirik Fuller <eirik@hackrat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH] Use mmap for symbol tables
Date: Mon, 30 Jan 2006 18:07:00 -0000	[thread overview]
Message-ID: <8f2776cb0601301007k5bccb594he33b08e84096d1a2@mail.gmail.com> (raw)
In-Reply-To: <43DDFC13.90909@hackrat.com>

That's interesting.  Since GDB does make a complete pass through the
symbol information to build its partial symbol tables, I would have
expected that doing network I/O each time the scan touched a new page
would be horrible, latency-wise.  But from what you've said, it sounds
like the kernel recognizes there's a linear scan going on and starts
doing read-ahead, so you can do the network I/O in parallel with GDB's
processing.  Do I have that right?

I hadn't noticed that you'd mapped the data read-only.  That's an even
better way of dealing with GDB bugs.  It's nice to know we don't have
any of that sort.  :)

However, doesn't that mean that changes to the data by other processes
(say) would become visible to GDB?  What happens when you recompile
the program while GDB's running?

On 1/30/06, Eirik Fuller <eirik@hackrat.com> wrote:
> > I understand that it would make your BFD code more complicated, but it
> > seems to me you want to map individual sections, not entire files.
> > Again, this will still share memory with the block cache, so aside
> > from the complexity I don't see the downside.
>
> I don't see the upside of making the code more complicated.  The
> downside of the extra complication is that it makes the patch less
> likely to the point of never actually existing.  :-)

I know how that goes.  :)

> Could you be more specific about why multiple mmap regions per file are
> preferable?  (It might help to keep in mind that I'm using PROT_READ and
> MAP_SHARED).  The only downside I can see is the (relatively small)
> fraction of each symbol table which is not accessed via mmap, but that
> doesn't use memory, just virtual address space (if it does use memory,
> that contradicts the "not accessed" part).

I'm just concerned about wasting address space.  People these days do
have awfully big programs.  There are executables out there in the
gigabytes (cue lurkers to share their horror stories).


  reply	other threads:[~2006-01-30 18:07 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-29 23:36 Eirik Fuller
2006-01-30  5:04 ` Jim Blandy
2006-01-30 11:44   ` Eirik Fuller
2006-01-30 18:07     ` Jim Blandy [this message]
2006-01-30 18:59       ` Eirik Fuller
2006-01-30 22:11         ` Jim Blandy
2006-01-31  0:38           ` Eirik Fuller
2006-01-31  1:49             ` Jim Blandy
2006-01-31  3:12               ` Eirik Fuller
2006-01-31 21:48             ` Mark Kettenis
2006-02-01 17:52               ` Eirik Fuller
2006-02-01  6:04       ` Michael Snyder
2006-01-30 11:34 ` Andrew STUBBS
2006-01-30 11:42   ` Corinna Vinschen
2006-01-30 11:48     ` Andrew STUBBS
2006-01-31  2:23 ` Daniel Jacobowitz
2006-01-31  3:31   ` Eirik Fuller
2006-01-31  3:38     ` Daniel Jacobowitz
2006-02-07 22:05     ` Eirik Fuller
2006-02-20 15:52       ` Daniel Jacobowitz
2006-01-31  5:28   ` Jim Blandy
2006-01-31 13:59     ` Daniel Jacobowitz
2006-01-31  4:40 David Anderson
2006-01-31  5:00 ` Eirik Fuller
2006-01-31  5:34   ` Jim Blandy
2006-01-31 14:00     ` Daniel Jacobowitz
2006-01-31 18:39       ` Jim Blandy
2006-02-01 18:11         ` Eirik Fuller
2006-01-31 17:45 ` David Anderson
2006-01-31 18:24 ` Jim Blandy
2006-01-31  4:53 David Anderson

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=8f2776cb0601301007k5bccb594he33b08e84096d1a2@mail.gmail.com \
    --to=jimb@red-bean.com \
    --cc=eirik@hackrat.com \
    --cc=gdb-patches@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