public inbox for libabigail@sourceware.org
 help / color / mirror / Atom feed
From: Dodji Seketeli <dodji@seketeli.org>
To: Matthias Maennich <maennich@google.com>
Cc: libabigail@sourceware.org,  gprocida@google.com,
	 kernel-team@android.com
Subject: Re: [RESEND PATCH] reader context: do not reuse current corpus and corpus_group
Date: Mon, 04 May 2020 16:42:02 +0200	[thread overview]
Message-ID: <87o8r392yt.fsf@seketeli.org> (raw)
In-Reply-To: <20200430215256.19135-1-maennich@google.com> (Matthias Maennich's message of "Thu, 30 Apr 2020 23:52:57 +0200")

Hello Matthias, Giuliano,

Matthias Maennich <maennich@google.com> a écrit:

> libabigail's readers (abg-reader and abg-dwarf-reader) currently spare
> some allocations by reusing the reader context's existing current corpus
> and current corpus group. When building a corpus_group's vector of
> corpora, reusing the shared_ptr referring to a corpus means we are
> modifying the corpus data of a previously read corpus. As a user of the
> read*corpus functions, that isn't entirely transparent and when storing
> corpare like in the vector above, we might introduce subtle bugs.

[...]

Giuliano Procida <gprocida@google.com> a écrit:

> Does this change have any impact on incomplete (forward-declared) type
> differences?
> Does it significantly impact performance on large inputs?

Right.  That is my concern as well.  The reason why we avoid
instantiating a new dwarf reader context all the time is for performance
reasons, especially when analysing a kernel with lots of kernel
modules.  Example of kernels would be any of the known enterprise
kernels, I guess.


That being said, a lot of things have happened on the front of
performance for kernels with lots of modules, so maybe this particular
optimization is not useful anymore, I am not sure.

In any case, we should measure this first before we know if this can get
in.

I hope this makes sense.

Cheers,

-- 
		Dodji

  parent reply	other threads:[~2020-05-04 14:42 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-30 21:52 Matthias Maennich
2020-05-01 14:23 ` Giuliano Procida
2020-05-04 13:21   ` Matthias Maennich
2020-05-04 14:42 ` Dodji Seketeli [this message]
2020-05-04 18:03   ` Matthias Maennich

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=87o8r392yt.fsf@seketeli.org \
    --to=dodji@seketeli.org \
    --cc=gprocida@google.com \
    --cc=kernel-team@android.com \
    --cc=libabigail@sourceware.org \
    --cc=maennich@google.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).