public inbox for libabigail@sourceware.org
 help / color / mirror / Atom feed
* [Bug default/19706] Core dump from abidiff with suppression
  2016-01-01  0:00 [Bug default/19706] New: Core dump from abidiff with suppression michi.henning at canonical dot com
                   ` (2 preceding siblings ...)
  2016-01-01  0:00 ` dodji at redhat dot com
@ 2016-01-01  0:00 ` michi.henning at canonical dot com
  2016-01-01  0:00 ` michi.henning at canonical dot com
  4 siblings, 0 replies; 6+ messages in thread
From: michi.henning at canonical dot com @ 2016-01-01  0:00 UTC (permalink / raw)
  To: libabigail

https://sourceware.org/bugzilla/show_bug.cgi?id=19706

--- Comment #3 from Michi Henning <michi.henning at canonical dot com> ---
When I use this is the final suppression, I also get a core dump:

[suppress_function]
    parameter = '1 unity::scopes::ScopeBase*

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug default/19706] New: Core dump from abidiff with suppression
@ 2016-01-01  0:00 michi.henning at canonical dot com
  2016-01-01  0:00 ` [Bug default/19706] " dodji at redhat dot com
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: michi.henning at canonical dot com @ 2016-01-01  0:00 UTC (permalink / raw)
  To: libabigail

https://sourceware.org/bugzilla/show_bug.cgi?id=19706

            Bug ID: 19706
           Summary: Core dump from abidiff with suppression
           Product: libabigail
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: default
          Assignee: dodji at redhat dot com
          Reporter: michi.henning at canonical dot com
                CC: libabigail at sourceware dot org
  Target Milestone: ---

Created attachment 9028
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9028&action=edit
Backtrace, dump files, and suppressions file

I'm seeing this with abigail compiled from HEAD:

$ git rev-parse HEAD
9d5b898f2868d226b1d37d4d60f6db98855c21ed

The base dump and the current dump were both generated by abidw from HEAD.

When I run abidiff with the attached dumps and suppressions file, I get a core
dump. The backtrace is in gdb.txt in the attached archive.

The problem appears to be caused by this suppression (the final one in the
suppressions file):

[suppress_function]
    name_regexp = unity::scopes::internal::.*

Without this suppression, I don't get a core dump.

Is there a way to suppress all changes for absolutely everything in a
particular namespace (preferably one that works with 1.0.rc2)?

We have a strict separation of public and private APIs. In particular, we use
the pimpl idiom for the public API, and we have tests to enforce that no public
header mentions anything that's in the internal namespace (other than the
opaque pointer-to-impl, which is forward-declared). So, by definition, there
cannot be an ABI break that would be caused by anything in the internal
namespace, so I'd like to write a wholesale suppression for everything in that
namespace.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug default/19706] Core dump from abidiff with suppression
  2016-01-01  0:00 [Bug default/19706] New: Core dump from abidiff with suppression michi.henning at canonical dot com
  2016-01-01  0:00 ` [Bug default/19706] " dodji at redhat dot com
  2016-01-01  0:00 ` michi.henning at canonical dot com
@ 2016-01-01  0:00 ` dodji at redhat dot com
  2016-01-01  0:00 ` michi.henning at canonical dot com
  2016-01-01  0:00 ` michi.henning at canonical dot com
  4 siblings, 0 replies; 6+ messages in thread
From: dodji at redhat dot com @ 2016-01-01  0:00 UTC (permalink / raw)
  To: libabigail

https://sourceware.org/bugzilla/show_bug.cgi?id=19706

--- Comment #5 from dodji at redhat dot com ---
> 
> [suppress_function]
>     name_regexp = unity::scopes::internal::.*
> 
> Without this suppression, I don't get a core dump.
> 
> Is there a way to suppress all changes for absolutely everything in a
> particular namespace (preferably one that works with 1.0.rc2)?

I'd recommend to avoid using the [suppress_function] directive to suppress
change reports about function sub-types changes.
If you can, I believe it's more forward looking to use the [suppress_type]
directive.

Here is the rationale.

Usually, functions (or global variables) show up in the change report because o
one of their sub-types have changed.

If you suppress the change report about the whole function, if tomorrow another
sub-type of that function changes, you won't see it.  But it could be harmful.


> We have a strict separation of public and private APIs. In particular, we
> use the pimpl idiom for the public API, and we have tests to enforce that no
> public header mentions anything that's in the internal namespace (other than
> the opaque pointer-to-impl, which is forward-declared). 

This seems to mean that suppressing change reports about *types* that are
defined in the internal namespaces should usually be enough, e.g,

[suppress_type]
  name_regexp = ^unity::scopes::internal::.*

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug default/19706] Core dump from abidiff with suppression
  2016-01-01  0:00 [Bug default/19706] New: Core dump from abidiff with suppression michi.henning at canonical dot com
@ 2016-01-01  0:00 ` dodji at redhat dot com
  2016-01-01  0:00 ` michi.henning at canonical dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: dodji at redhat dot com @ 2016-01-01  0:00 UTC (permalink / raw)
  To: libabigail

https://sourceware.org/bugzilla/show_bug.cgi?id=19706

dodji at redhat dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #4 from dodji at redhat dot com ---
This issue should be fixed by commit
https://sourceware.org/git/gitweb.cgi?p=libabigail.git;a=commit;h=0a5fe64a5c3a85d00c0f29b2c6c208cc44a1c9dd
in the master branch of the git repository.

Thanks!

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug default/19706] Core dump from abidiff with suppression
  2016-01-01  0:00 [Bug default/19706] New: Core dump from abidiff with suppression michi.henning at canonical dot com
                   ` (3 preceding siblings ...)
  2016-01-01  0:00 ` michi.henning at canonical dot com
@ 2016-01-01  0:00 ` michi.henning at canonical dot com
  4 siblings, 0 replies; 6+ messages in thread
From: michi.henning at canonical dot com @ 2016-01-01  0:00 UTC (permalink / raw)
  To: libabigail

https://sourceware.org/bugzilla/show_bug.cgi?id=19706

--- Comment #1 from Michi Henning <michi.henning at canonical dot com> ---
I also tried with 1.0.rc2, and I'm getting the same core dump there.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug default/19706] Core dump from abidiff with suppression
  2016-01-01  0:00 [Bug default/19706] New: Core dump from abidiff with suppression michi.henning at canonical dot com
  2016-01-01  0:00 ` [Bug default/19706] " dodji at redhat dot com
@ 2016-01-01  0:00 ` michi.henning at canonical dot com
  2016-01-01  0:00 ` dodji at redhat dot com
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: michi.henning at canonical dot com @ 2016-01-01  0:00 UTC (permalink / raw)
  To: libabigail

https://sourceware.org/bugzilla/show_bug.cgi?id=19706

--- Comment #2 from Michi Henning <michi.henning at canonical dot com> ---
It looks like the following gets me off the hook:

[suppress_function]
    name_regexp = unity::scopes::internal::.*
    change_kind = all
    allow_other_aliases = false

Still would be nice not get any core dumps :-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-02-24 17:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-01  0:00 [Bug default/19706] New: Core dump from abidiff with suppression michi.henning at canonical dot com
2016-01-01  0:00 ` [Bug default/19706] " dodji at redhat dot com
2016-01-01  0:00 ` michi.henning at canonical dot com
2016-01-01  0:00 ` dodji at redhat dot com
2016-01-01  0:00 ` michi.henning at canonical dot com
2016-01-01  0:00 ` michi.henning at canonical dot com

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).