Ticket #1354 (new defect)

Opened 18 months ago

Last modified 17 months ago

cave fix-linkage core dump on "empty" .a files

Reported by: chutz Owned by:
Priority: Sometime Milestone:
Component: clients/cave Version: scm
Keywords: Cc:
Blocked By: Blocking:
Distribution: N/A

Description

cave fix-linkage is currently dumping core consistently. If I move /usr/lib64/libmupdfthird.a out of the system, it completes just fine.

This file is provided by app-text/mupdf-1.11-r1 and seems to be an archive with no files in it (still a valid archive though).

See below for steps to reproduce:

> sudo cave fix-linkage
Searching: 9 directories, 112306 filesterminate called after throwing an instance of 'std::ios_base::failure'
  what():  basic_ios::clear
Aborted
> ar tv /usr/lib64/libmupdfthird.a
> xxd /usr/lib64/libmupdfthird.a
00000000: 213c 6172 6368 3e0a                      !<arch>.
> cave owner /usr/lib64/libmupdfthird.a
app-text/mupdf-1.11-r1::installed
> sudo mv /usr/lib64/libmupdfthird.a /tmp/
> sudo cave fix-linkage
Searching: 16 directories, 113934 files

No broken packages found
> cave --version
paludis 3.0.0

This is with the 3.0.0_pre20170219 version of paludis on Gentoo.

Attachments

backtrace.txt Download (17.2 KB) - added by albel727 18 months ago.
Backtrace from GDB

Change History

comment:1 Changed 18 months ago by chutz

And here is what I got from coredumpctl, if it helps:

> sudo coredumpctl info --no-pager 27944
           PID: 27944 (cave)
           UID: 0 (root)
           GID: 0 (root)
        Signal: 6 (ABRT)
     Timestamp: Sat 2017-06-03 10:00:59 JST (59s ago)
  Command Line: cave fix-linkage
    Executable: /usr/bin/cave
 Control Group: /user.slice/user-1000.slice/session-1.scope
          Unit: session-1.scope
         Slice: user-1000.slice
       Session: 1
     Owner UID: 1000 (chutz)
       Boot ID: 95c1353fb12549329cba9bfbff82e680
    Machine ID: b7661380c8f01c32e2094c56577a922d
      Hostname: pkgbuild-d
       Storage: /var/lib/systemd/coredump/core.cave.0.95c1353fb12549329cba9bfbff82e680.27944.1496451659000000000000.lz4
       Message: Process 27944 (cave) of user 0 dumped core.
                
                Stack trace of thread 27944:
                #0  0x00007fe31bbab4d7 raise (libc.so.6)
                #1  0x00007fe31bbac9da abort (libc.so.6)
                #2  0x00007fe31c40222d _ZN9__gnu_cxx27__verbose_terminate_handlerEv (libstdc++.so.6)
                #3  0x00007fe31c400096 _ZN10__cxxabiv111__terminateEPFvvE (libstdc++.so.6)
                #4  0x00007fe31c4000e1 _ZSt9terminatev (libstdc++.so.6)
                #5  0x00007fe31c4002f8 __cxa_throw (libstdc++.so.6)
                #6  0x00007fe31c429a26 _ZSt19__throw_ios_failurePKc (libstdc++.so.6)
                #7  0x00007fe31c46ac5a _ZNSt9basic_iosIcSt11char_traitsIcEE5clearESt12_Ios_Iostate (libstdc++.so.6)
                #8  0x00007fe31c46e721 _ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate (libstdc++.so.6)
                #9  0x00007fe31ca49bda _ZN7paludis9ElfObjectINS_9Elf32TypeEE12is_valid_elfERSi (libpaludisutil_3.0.so.300)
                #10 0x00007fe31dcfbfb7 _ZN7paludis3ImpINS_17ElfLinkageCheckerEE9check_elfINS_9Elf32TypeEEEbRKNS_6FSPathERSi (libpaludis_3.0.so.300)
                #11 0x00007fe31dcf2711 _ZN7paludis17ElfLinkageChecker10check_fileERKNS_6FSPathE (libpaludis_3.0.so.300)
                #12 0x00007fe31dca1726 _ZNKSt12_Mem_fn_baseIMN7paludis14LinkageCheckerEFbRKNS0_6FSPathEELb1EEclIJRS2_EvEEbRS1_DpOT_ (libpaludis_3.0.so.300)
                #13 0x00007fe31dca0b16 _ZNSt5_BindIFSt7_Mem_fnIMN7paludis14LinkageCheckerEFbRKNS1_6FSPathEEESt12_PlaceholderILi1EES3_EE6__callIbJRS2_EJLm0ELm1EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE (libpaludis_3.0.so.300)
                #14 0x00007fe31dc9fa24 _ZNSt5_BindIFSt7_Mem_fnIMN7paludis14LinkageCheckerEFbRKNS1_6FSPathEEESt12_PlaceholderILi1EES3_EEclIJRS2_EbEET0_DpOT_ (libpaludis_3.0.so.300)
                #15 0x00007fe31dc9e080 _ZN9__gnu_cxx5__ops10_Iter_predISt5_BindIFSt7_Mem_fnIMN7paludis14LinkageCheckerEFbRKNS4_6FSPathEEESt12_PlaceholderILi1EES6_EEEclINS4_16IndirectIteratorINS_17__normal_iteratorIPSt10shared_ptrIS5_ESt6vectorISL_SaISL_EEEES5_EEEEbT_ (libpaludis_3.0.so.300)
                #16 0x00007fe31dc9aa65 _ZSt9__find_ifIN7paludis16IndirectIteratorIN9__gnu_cxx17__normal_iteratorIPSt10shared_ptrINS0_14LinkageCheckerEESt6vectorIS6_SaIS6_EEEES5_EENS2_5__ops10_Iter_predISt5_BindIFSt7_Mem_fnIMS5_FbRKNS0_6FSPathEEESt12_PlaceholderILi1EESH_EEEEET_SS_SS_T0_St18input_iterator_tag (libpaludis_3.0.so.300)
                #17 0x00007fe31dc97bc6 _ZSt9__find_ifIN7paludis16IndirectIteratorIN9__gnu_cxx17__normal_iteratorIPSt10shared_ptrINS0_14LinkageCheckerEESt6vectorIS6_SaIS6_EEEES5_EENS2_5__ops10_Iter_predISt5_BindIFSt7_Mem_fnIMS5_FbRKNS0_6FSPathEEESt12_PlaceholderILi1EESH_EEEEET_SS_SS_T0_ (libpaludis_3.0.so.300)
                #18 0x00007fe31dc94ad6 _ZSt7find_ifIN7paludis16IndirectIteratorIN9__gnu_cxx17__normal_iteratorIPSt10shared_ptrINS0_14LinkageCheckerEESt6vectorIS6_SaIS6_EEEES5_EESt5_BindIFSt7_Mem_fnIMS5_FbRKNS0_6FSPathEEESt12_PlaceholderILi1EESF_EEET_SP_SP_T0_ (libpaludis_3.0.so.300)
                #19 0x00007fe31dc8fa30 _ZN7paludis3ImpINS_19BrokenLinkageFinderEE10check_fileERKNS_6FSPathE (libpaludis_3.0.so.300)
                #20 0x00007fe31dc9dfac _ZNKSt12_Mem_fn_baseIMN7paludis3ImpINS0_19BrokenLinkageFinderEEEFvRKNS0_6FSPathEELb1EEclIJS6_EvEEvPS3_DpOT_ (libpaludis_3.0.so.300)
                #21 0x00007fe31dc9a82a _ZNSt5_BindIFSt7_Mem_fnIMN7paludis3ImpINS1_19BrokenLinkageFinderEEEFvRKNS1_6FSPathEEEPS4_St12_PlaceholderILi1EEEE6__callIvJS7_EJLm0ELm1EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE (libpaludis_3.0.so.300)
                #22 0x00007fe31dc97552 _ZNSt5_BindIFSt7_Mem_fnIMN7paludis3ImpINS1_19BrokenLinkageFinderEEEFvRKNS1_6FSPathEEEPS4_St12_PlaceholderILi1EEEEclIJS7_EvEET0_DpOT_ (libpaludis_3.0.so.300)
                #23 0x00007fe31dc945fc _ZSt8for_eachIN7paludis10FSIteratorESt5_BindIFSt7_Mem_fnIMNS0_3ImpINS0_19BrokenLinkageFinderEEEFvRKNS0_6FSPathEEEPS6_St12_PlaceholderILi1EEEEET0_T_SJ_SI_ (libpaludis_3.0.so.300)
                #24 0x00007fe31dc8f3fd _ZN7paludis3ImpINS_19BrokenLinkageFinderEE14walk_directoryERKNS_6FSPathE (libpaludis_3.0.so.300)
                #25 0x00007fe31dc8ee24 _ZN7paludis3ImpINS_19BrokenLinkageFinderEE16search_directoryERKNS_6FSPathE (libpaludis_3.0.so.300)
                #26 0x00007fe31dc9d556 _ZNKSt12_Mem_fn_baseIMN7paludis3ImpINS0_19BrokenLinkageFinderEEEFvRKNS0_6FSPathEELb1EEclIJRS4_EvEEvPS3_DpOT_ (libpaludis_3.0.so.300)
                #27 0x00007fe31dc99e28 _ZNSt5_BindIFSt7_Mem_fnIMN7paludis3ImpINS1_19BrokenLinkageFinderEEEFvRKNS1_6FSPathEEEPS4_St12_PlaceholderILi1EEEE6__callIvJRS5_EJLm0ELm1EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE (libpaludis_3.0.so.300)
                #28 0x00007fe31dc967a2 _ZNSt5_BindIFSt7_Mem_fnIMN7paludis3ImpINS1_19BrokenLinkageFinderEEEFvRKNS1_6FSPathEEEPS4_St12_PlaceholderILi1EEEEclIJRS5_EvEET0_DpOT_ (libpaludis_3.0.so.300)
                #29 0x00007fe31dc9355e _ZSt8for_eachIN9__gnu_cxx17__normal_iteratorIPN7paludis6FSPathESt6vectorIS3_SaIS3_EEEESt5_BindIFSt7_Mem_fnIMNS2_3ImpINS2_19BrokenLinkageFinderEEEFvRKS3_EEPSD_St12_PlaceholderILi1EEEEET0_T_SP_SO_ (libpaludis_3.0.so.300)
                #30 0x00007fe31dc8e12f _ZN7paludis19BrokenLinkageFinderC2EPKNS_11EnvironmentERKSt10shared_ptrIKNS_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEE (libpaludis_3.0.so.300)
                #31 0x00000000008c6a30 _ZN9__gnu_cxx13new_allocatorIN7paludis19BrokenLinkageFinderEE9constructIS2_JPNS1_11EnvironmentERSt10shared_ptrINS1_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEEEvPT_DpOT0_ (cave)
                #32 0x00000000008c65b4 _ZNSt16allocator_traitsISaIN7paludis19BrokenLinkageFinderEEE9constructIS1_JPNS0_11EnvironmentERSt10shared_ptrINS0_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEEEvRS2_PT_DpOT0_ (cave)
                #33 0x00000000008c5edb _ZNSt23_Sp_counted_ptr_inplaceIN7paludis19BrokenLinkageFinderESaIS1_ELN9__gnu_cxx12_Lock_policyE2EEC2IJPNS0_11EnvironmentERSt10shared_ptrINS0_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEEES2_DpOT_ (cave)
                #34 0x00000000008c5883 _ZNSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EEC2IN7paludis19BrokenLinkageFinderESaIS5_EJPNS4_11EnvironmentERSt10shared_ptrINS4_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEEESt19_Sp_make_shared_tagPT_RKT0_DpOT1_ (cave)
                #35 0x00000000008c54bb _ZNSt12__shared_ptrIN7paludis19BrokenLinkageFinderELN9__gnu_cxx12_Lock_policyE2EEC2ISaIS1_EJPNS0_11EnvironmentERSt10shared_ptrINS0_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEEESt19_Sp_make_shared_tagRKT_DpOT0_ (cave)
                #36 0x00000000008c4f44 _ZNSt10shared_ptrIN7paludis19BrokenLinkageFinderEEC2ISaIS1_EJPNS0_11EnvironmentERS_INS0_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEEESt19_Sp_make_shared_tagRKT_DpOT0_ (cave)
                #37 0x00000000008c43ce _ZSt15allocate_sharedIN7paludis19BrokenLinkageFinderESaIS1_EJPNS0_11EnvironmentERSt10shared_ptrINS0_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEES5_IT_ERKT0_DpOT1_ (cave)
                #38 0x00000000008c363d _ZSt11make_sharedIN7paludis19BrokenLinkageFinderEJPNS0_11EnvironmentERSt10shared_ptrINS0_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEEES4_IT_EDpOT0_ (cave)
                #39 0x00000000008c05c8 _ZN7paludis4cave17FixLinkageCommand3runERKSt10shared_ptrINS_11EnvironmentEERKS2_IKNS_8SequenceINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEE (cave)
                #40 0x000000000079b4d2 main (cave)
                #41 0x00007fe31bb987c0 __libc_start_main (libc.so.6)
                #42 0x000000000079a4d9 _start (cave)

Changed 18 months ago by albel727

Backtrace from GDB

comment:2 Changed 18 months ago by albel727

Same here. Attaching more detailed backtrace. Steps to reproduce:

touch /usr/lib64/test.a
chmod +x /usr/lib64/test.a
cave fix-linkage
Last edited 18 months ago by albel727 (previous) (diff)

comment:3 Changed 17 months ago by rkjnsn

This seems like it might be #1335

Note: See TracTickets for help on using tickets.