public inbox for libabigail@sourceware.org
 help / color / mirror / Atom feed
* [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
@ 2022-12-22 11:49 hexiaole1994 at 126 dot com
  2022-12-22 11:55 ` [Bug default/29934] " hexiaole1994 at 126 dot com
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: hexiaole1994 at 126 dot com @ 2022-12-22 11:49 UTC (permalink / raw)
  To: libabigail

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

            Bug ID: 29934
           Summary: abidiff coredump at
                    abg-comparison.cc:ensure_lookup_tables_populated when
                    read libdovecot-storage.so and libdovecot-sieve.so
                    from dovecot
           Product: libabigail
           Version: unspecified
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: default
          Assignee: dodji at redhat dot com
          Reporter: hexiaole1994 at 126 dot com
                CC: libabigail at sourceware dot org
  Target Milestone: ---

[Overview]
Executing 'abidiff' against to 'libc.so' from centos7.6's 'glibc' will cause
coredump, the output from 'bt' command of 'gdb' shows below:
/* gdb output for 'libdovecot-storage.so' begin */
(gdb) bt
#0  0x0000fffc0df966e0 in raise () from /lib64/libc.so.6
#1  0x0000fffc0df97a8c in abort () from /lib64/libc.so.6
#2  0x0000fffc0df8fb8c in ?? () from /lib64/libc.so.6
#3  0x0000fffc0df8fc0c in __assert_fail () from /lib64/libc.so.6
#4  0x0000fffc0e80ae88 in
abigail::comparison::class_or_union_diff::ensure_lookup_tables_populated
(this=this@entry=0x15602410) at abg-comparison.cc:4520
#5  0x0000fffc0e8027dc in
abigail::comparison::class_diff::ensure_lookup_tables_populated
(this=0x15602410) at abg-comparison.cc:5175
#6  0x0000fffc0e80416c in abigail::comparison::compute_diff
(first=std::shared_ptr (count 17, weak 15) 0x1372e400, second=std::shared_ptr
(count 29, weak 35) 0x13a61eb0,
    ctxt=std::shared_ptr (count 17, weak 3407) 0x12f52be0) at
abg-comparison.cc:5756
...
#15 0x0000fffc0e807430 in abigail::comparison::compute_diff
(first=std::shared_ptr (count 2, weak 0) 0x1400c2e0, second=std::shared_ptr
(count 2, weak 0) 0x15249250,
    ctxt=std::shared_ptr (count 17, weak 3407) 0x12f52be0) at
abg-comparison.cc:7118
#16 0x0000fffc0e80cdf4 in
abigail::comparison::corpus_diff::priv::ensure_lookup_tables_populated
(this=0x13bc1e50) at abg-comparison.cc:8811
#17 0x0000fffc0e80e9dc in abigail::comparison::compute_diff (f=std::shared_ptr
(count 3, weak 0) 0x12f523c0, s=std::shared_ptr (count 3, weak 0) 0x1491a920,
    ctxt=std::shared_ptr (count 17, weak 3407) 0x12f52be0) at
abg-comparison.cc:11019
#18 0x0000000000406148 in main (argc=<optimized out>, argv=<optimized out>) at
abidiff.cc:1409
/* gdb output end */
(the backtrace of 'libdovecot-sieve.so' is similar as 'libdovecot-storage.so',
thus it was skipped here.)

[Steps to Reproduce]
(1)confirm that we at the latest master branch
# git remote -v
origin  git://sourceware.org/git/libabigail.git (fetch)
origin  git://sourceware.org/git/libabigail.git (push)
# git branch
* master
# git log -5 --oneline
83bbc679 (HEAD -> master, origin/master, origin/HEAD) elf-reader: reclaim fd
and mem before break
e1aadfa5 Bug 29901 - abidiff hangs when comparing libgs.so.10 with itself
3c6a461b Update website documentation for 2.2
73d8782c configure: Bump version number to 2.3
7a7a00c3 ChangeLog: Update for 2.2 release
# ./configure
# make
(2)assure the newly compiled 'abidiff' is linked to the newly compiled
'libabigail.so'
# pwd
/root/tmp/libabigail-git
# ldd tools/.libs/abidiff
        ...
        libabigail.so.1 => /root/tmp/libabigail-git/src/.libs/libabigail.so.1
(0x0000fffbca4b0000)
        ...
(3)download 'libdovecot-storage.so' and 'libdovecot-sieve.so'
# mkdir dovecot/ && cd dovecot/
# wget
https://vault.centos.org/7.6.1810/os/x86_64/Packages/dovecot-2.2.36-3.el7.x86_64.rpm
# wget
http://debuginfo.centos.org/7/x86_64/dovecot-debuginfo-2.2.36-3.el7.x86_64.rpm
# wget
https://repo.huaweicloud.com/openeuler/openEuler-20.03-LTS-SP2/everything/x86_64/Packages/dovecot-2.3.10.1-6.oe1.x86_64.rpm
# wget
https://repo.huaweicloud.com/openeuler/openEuler-20.03-LTS-SP2/debuginfo/x86_64/Packages/dovecot-debuginfo-2.3.10.1-6.oe1.x86_64.rpm
# mkdir 2.2.36-with-debug/ 2.2.36-without-debug/ 2.3.10-with-debug/
2.3.10-without-debug/
# rpm2cpio dovecot-2.2.36-3.el7.x86_64.rpm | cpio -idum -D
2.2.36-without-debug/
# rpm2cpio dovecot-debuginfo-2.2.36-3.el7.x86_64.rpm | cpio -idum -D
2.2.36-with-debug/
# rpm2cpio dovecot-2.3.10.1-6.oe1.x86_64.rpm | cpio -idum -D
2.3.10-without-debug/
# rpm2cpio dovecot-debuginfo-2.3.10.1-6.oe1.x86_64.rpm | cpio -idum -D
2.3.10-with-debug/
# cd ../
(4)use newly compiled 'abidiff' to reproducing the problem that causes coredump
# ./tools/.libs/abidiff --d1 dovecot/2.2.36-with-debug/usr/lib/debug/ --d2
dovecot/2.3.10-with-debug/usr/lib/debug/
dovecot/2.2.36-without-debug/usr/lib64/dovecot/libdovecot-storage.so.0.0.0
dovecot/2.3.10-without-debug/usr/lib64/dovecot/libdovecot-storage.so.0.0.0
# ./tools/.libs/abidiff --d1 dovecot/2.2.36-with-debug/usr/lib/debug/ --d2
dovecot/2.3.10-with-debug/usr/lib/debug/
dovecot/2.2.36-without-debug/usr/lib64/dovecot/libdovecot-sieve.so.0.0.0
dovecot/2.3.10-without-debug/usr/lib64/dovecot/libdovecot-sieve.so.0.0.0

[Actual Results]
(1)'abidiff' for 'libdovecot-storage.so' crashes with coredump:
/* crash output begin */
abidiff: abg-comparison.cc:4521: void
abigail::comparison::class_or_union_diff::ensure_lookup_tables_populated()
const: Assertion `__abg_cond__' failed.
Aborted (core dumped)
/* crash output end */

(2)'abidiff' for 'libdovecot-sieve.so' crashes with coredump:
/* crash output begin */
abidiff: abg-comparison.cc:4521: void
abigail::comparison::class_or_union_diff::ensure_lookup_tables_populated()
const: Assertion `__abg_cond__' failed.
Aborted (core dumped)
/* crash output end */

[Expected Results]
'abidiff' finishes normally with differences between two libraries.

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
@ 2022-12-22 11:55 ` hexiaole1994 at 126 dot com
  2022-12-24 13:26 ` dodji at redhat dot com
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: hexiaole1994 at 126 dot com @ 2022-12-22 11:55 UTC (permalink / raw)
  To: libabigail

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

--- Comment #1 from Xiaole He <hexiaole1994 at 126 dot com> ---
Sorry, the 'Overview' was wrong above, corrected one is below:

[Overview]
Executing 'abidiff' against to 'libdovecot-storage.so' from rpm 'dovecot' will
cause coredump, the output from 'bt' command of 'gdb' shows below:

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
  2022-12-22 11:55 ` [Bug default/29934] " hexiaole1994 at 126 dot com
@ 2022-12-24 13:26 ` dodji at redhat dot com
  2022-12-24 14:12 ` dodji at redhat dot com
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: dodji at redhat dot com @ 2022-12-24 13:26 UTC (permalink / raw)
  To: libabigail

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

dodji at redhat dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2022-12-24
     Ever confirmed|0                           |1

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
  2022-12-22 11:55 ` [Bug default/29934] " hexiaole1994 at 126 dot com
  2022-12-24 13:26 ` dodji at redhat dot com
@ 2022-12-24 14:12 ` dodji at redhat dot com
  2022-12-26  3:40 ` hexiaole1994 at 126 dot com
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: dodji at redhat dot com @ 2022-12-24 14:12 UTC (permalink / raw)
  To: libabigail

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

dodji at redhat dot com changed:

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

--- Comment #2 from dodji at redhat dot com ---
Hello,

This issue should hopefully be fixed in the master branch of the git repository
at
https://sourceware.org/git/?p=libabigail.git;a=commit;h=e3725f1b96ad2e935290bea8be7925f2a8cc3c89.

The fix should be available in the coming 2.3 version of libabigail.

Thank you for reporting this issue and sorry for the inconvenience.

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
                   ` (2 preceding siblings ...)
  2022-12-24 14:12 ` dodji at redhat dot com
@ 2022-12-26  3:40 ` hexiaole1994 at 126 dot com
  2022-12-26 14:13 ` dodji at redhat dot com
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: hexiaole1994 at 126 dot com @ 2022-12-26  3:40 UTC (permalink / raw)
  To: libabigail

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

--- Comment #3 from Xiaole He <hexiaole1994 at 126 dot com> ---
(In reply to dodji from comment #2)
> Hello,
> 
> This issue should hopefully be fixed in the master branch of the git
> repository at
> https://sourceware.org/git/?p=libabigail.git;a=commit;
> h=e3725f1b96ad2e935290bea8be7925f2a8cc3c89.
> 
> The fix should be available in the coming 2.3 version of libabigail.
> 
> Thank you for reporting this issue and sorry for the inconvenience.

Thank you, dodji, for using your precious time in resolving this problem. 
I using the updated master branch of git,
e3725f1b96ad2e935290bea8be7925f2a8cc3c89 (Bug 29934 - Handle buggy data members
with empty names), to verify that the problem of 'libdovecot-storage.so' has
been disappeared, but the similar problem of 'libdovecot-sieve.so' that caused
coredump still exist, sorry for disturbing you again and the reproducing steps
of 'libdovecot-storage.so' was wroten at the first comment of this page.

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
                   ` (3 preceding siblings ...)
  2022-12-26  3:40 ` hexiaole1994 at 126 dot com
@ 2022-12-26 14:13 ` dodji at redhat dot com
  2022-12-29 10:35 ` dodji at redhat dot com
  2022-12-29 14:54 ` hexiaole1994 at 126 dot com
  6 siblings, 0 replies; 8+ messages in thread
From: dodji at redhat dot com @ 2022-12-26 14:13 UTC (permalink / raw)
  To: libabigail

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

dodji at redhat dot com changed:

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

--- Comment #4 from dodji at redhat dot com ---
(In reply to Xiaole He from comment #3)

> [...] the similar problem of
> 'libdovecot-sieve.so' that caused coredump still exist, sorry for disturbing
> you again and the reproducing steps of 'libdovecot-storage.so' was wroten at
> the first comment of this page.

Ooops, I totally missed the second issue.  That one is different from the one
occurring on libdovecot-storage.so.

I'll be looking at the second issue.

Sorry for the noise.

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
                   ` (4 preceding siblings ...)
  2022-12-26 14:13 ` dodji at redhat dot com
@ 2022-12-29 10:35 ` dodji at redhat dot com
  2022-12-29 14:54 ` hexiaole1994 at 126 dot com
  6 siblings, 0 replies; 8+ messages in thread
From: dodji at redhat dot com @ 2022-12-29 10:35 UTC (permalink / raw)
  To: libabigail

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

dodji at redhat dot com changed:

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

--- Comment #5 from dodji at redhat dot com ---
The second issue of the problem reported here (assertion violation when
analysing the binary libdovecot-sieve.so) should be fixed by commit
https://sourceware.org/git/?p=libabigail.git;a=commit;h=4f4ab2b1d66770f6e3cc56ec844e47a5ceec1edb.

Thanks for taking the time to report this problem and sorry for the
inconvenience.

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

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

* [Bug default/29934] abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot
  2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
                   ` (5 preceding siblings ...)
  2022-12-29 10:35 ` dodji at redhat dot com
@ 2022-12-29 14:54 ` hexiaole1994 at 126 dot com
  6 siblings, 0 replies; 8+ messages in thread
From: hexiaole1994 at 126 dot com @ 2022-12-29 14:54 UTC (permalink / raw)
  To: libabigail

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

--- Comment #6 from Xiaole He <hexiaole1994 at 126 dot com> ---
(In reply to dodji from comment #5)
> The second issue of the problem reported here (assertion violation when
> analysing the binary libdovecot-sieve.so) should be fixed by commit
> https://sourceware.org/git/?p=libabigail.git;a=commit;
> h=4f4ab2b1d66770f6e3cc56ec844e47a5ceec1edb.
> 
> Thanks for taking the time to report this problem and sorry for the
> inconvenience.

Thank you very much, dodji. I already confirmed that this problem has been
fixed. professional man, great job!

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

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

end of thread, other threads:[~2022-12-29 14:54 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-22 11:49 [Bug default/29934] New: abidiff coredump at abg-comparison.cc:ensure_lookup_tables_populated when read libdovecot-storage.so and libdovecot-sieve.so from dovecot hexiaole1994 at 126 dot com
2022-12-22 11:55 ` [Bug default/29934] " hexiaole1994 at 126 dot com
2022-12-24 13:26 ` dodji at redhat dot com
2022-12-24 14:12 ` dodji at redhat dot com
2022-12-26  3:40 ` hexiaole1994 at 126 dot com
2022-12-26 14:13 ` dodji at redhat dot com
2022-12-29 10:35 ` dodji at redhat dot com
2022-12-29 14:54 ` hexiaole1994 at 126 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).