This is the mail archive of the 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: Memory leak in 2.12.1

Hi Jeff,

If it helps refresh anyones memory, it was fixed somewhere between 2.13.2 and 2.14.

Sorry it does not ring any bells. :-(

We build one set of binutils (minus ld and gas, which do not show this problem) that target x86, but also have powerpc, mips, arm and sh enabled. If you attempt to use any of the secondary targetting (arm, sh, ppc, mips) utils on a static library it will very quickly exhaust your system memory. It doesn't matter in which order you specify the targets. If you configure with '--target=powerpc-nto-qnx --enable-targets="mips-nto-qnx sh-nto-qnx i386-nto-qnx arm-nto-qnx"', then powerpc is fine and the rest show this behaviour.

My best suggestion would be to use a binary-chop method to locate the patch that fixed the bug. It is quite an involved process but I have used it successfully before. The steps are as follows:

0. Create a local copy of the CVS repository. (The sourceware repository supports rsync).

1. Create a script to do this following:

A. Pick a start date, eg the 2.13.2 release date, and check out a copy of the sources using your local archive. It also helps if you can do this on a ramdisk to speed things up.

B. Test this checked out copy for the bug. Since you are concerned with running out of memory you will probably want to use something like ulimit to make sure that the build process does not bring your machine to a halt.

2. The first time through the test should fail. Now pick a known good date, eg the 2.14 release, and repeat step 1. The test should pass. Now you have two dates and you can the binary chop algorithm to narrow down to the exact day when a patch was checked in to fix the problem.


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