This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 3/5] remove deleted BFDs from the archive cache


On Thu, Aug 16, 2012 at 8:53 PM, Hans-Peter Nilsson
<hans-peter.nilsson@axis.com> wrote:
> (Just replying to the last message in the thread)
>
>> xcalloc shouldn't be called from within bfd.  I've already committed a
>> kneejerk patch to revert Tom's last change, instead using bfd_zmalloc
>> here.  Tom said he'd look into fixing the leak this causes, so I'm
>> happy to leave that to him.  :)
>
> The last I see is (2012-08-17-02:39:34 UTC)
>
> bfd:
> 2012-08-17  Yuri Chornoivan  <yurchor@ukr.net>
>
>         * elf-bfd.h, * elf32-ppc.c, * elf64-ia64-vms.c, * elfnn-ia64.c,
>         * elfxx-mips.c, * vms-alpha.c: Typo fixes.
>
> 2012-08-17  Alan Modra  <amodra@gmail.com>
>
>         PR binutils/14475:
>         * archive.c (bfd_ar_hdr_from_filesystem): Revert last change.
>         Instead malloc areltdata.
>
> binutils:
> 2012-08-17  Yuri Chornoivan  <yurchor@ukr.net>
>
>         * doc/binutils.texi, * objdump.c, * od-xcoff.c: Typo fixes.
>
> 2012-08-16  H.J. Lu  <hongjiu.lu@intel.com>
>
>         PR binutils/14481
>         * Makefile.am (BFDTEST1_PROG): New.
>         (TEST_PROGS): Likewise.
>         (bfdtest1_DEPENDENCIES): Likewise.
>         (noinst_PROGRAMS): Add $(TEST_PROGS).
>         * Makefile.in: Regenerated.
>
>         * bfdtest1.c: New file.
>
> With this I still see FAILS for cris-elf and cris-linux-gnu (but
> not for arm-unknown-eabi, mipsisa32r2el-unknown-linux-gnu,
> mmix-knuth-mmixware):
> Running /tmp/hpautotest-binutils/bsrc/src/binutils/testsuite/binutils-all/ar.exp ...
> FAIL: ar long file names (bfdtest1)
> FAIL: ar thin archive (bfdtest1)
>
> and in binutils.log:
> Executing on host: /tmp/hpautotest-binutils/cris-axis-elf/binutils/bfdtest1 tmpdir/artest.a   (timeout = 300)
> /tmp/hpautotest-binutils/cris-axis-elf/binutils/bfdtest1 exited with status 1
> /tmp/hpautotest-binutils/cris-axis-elf/binutils/bfdtest1 exited with status 1
> FAIL: ar long file names (bfdtest1)
> ...
> Executing on host: /tmp/hpautotest-binutils/cris-axis-elf/binutils/bfdtest1 tmpdir/artest.a   (timeout = 300)
> /tmp/hpautotest-binutils/cris-axis-elf/binutils/bfdtest1 exited with status 1
> /tmp/hpautotest-binutils/cris-axis-elf/binutils/bfdtest1 exited with status 1
> FAIL: ar thin archive (bfdtest1)
>
> Looking closer, it seems bfdtest1 is a new test, and a host
> program, which might explain the test-result differences.
> Shouldn't bfdtest1 be present and tested for native builds only?
>

bfdtest1 is built the same as other programs.  valgrind reports:

==3884==
==3884== Invalid read of size 8
==3884==    at 0x403D85: bfd_generic_openr_next_archived_file (archive.c:765)
==3884==    by 0x402CCA: main (bfdtest1.c:60)
==3884==  Address 0x4c35ec0 is 208 bytes inside a block of size 296 free'd
==3884==    at 0x4A079AE: free (vg_replace_malloc.c:427)
==3884==    by 0x40D9B7: bfd_close (opncls.c:726)
==3884==    by 0x402C9D: main (bfdtest1.c:53)
==3884==

My new test is doing its job.  There is a real bug.


-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]