tags 625756 patch
user ubuntu-de...@lists.ubuntu.com
usertags 625756 ubuntu-patch oneiric

On Thu, May 05, 2011 at 05:54:35PM +0000, brian m. carlson wrote:
> When I build electric-fence from source on amd64/sid with gcc-4.5 or
> gcc-4.6, the ./tstheap 3072 call gets to iteration 100 and then starts
> allocating massive amounts of memory.  Within less than a minute it goes
> through 3.5GB of physical memory and 5GB of swap.  It is then killed by
> the OOM killer.  As a consequence, the package fails to build from
> source.
> 
> I've looked at the code and haven't been able to track down the problem
> yet.  The code does work correctly without optimization, but still goes
> out of control at -O1.  I suspect this is a consequence of optimizer
> improvements.

I've reported this as a GCC bug:

  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50337

-fno-tree-dse works around it.

  * Build with -fno-tree-dse, since otherwise GCC >= 4.5 misoptimises
    allocateMoreSlots() (closes: #625756, LP: #749139).

diff -Nru electric-fence-2.1.16/debian/rules 
electric-fence-2.1.16ubuntu1/debian/rules
--- electric-fence-2.1.16/debian/rules  2010-05-14 05:04:58.000000000 +0100
+++ electric-fence-2.1.16ubuntu1/debian/rules   2011-09-08 18:08:12.000000000 
+0100
@@ -19,10 +19,10 @@
 build-stamp:
        dh_testdir
        #if [ -x configure ]; then ./configure --prefix=/usr; fi
-       make CFLAGS="-O2 -g -Wall -fPIC"
+       make CFLAGS="-O2 -fno-tree-dse -g -Wall -fPIC"
        gcc -g -shared -Wl,-soname,libefence.so.0 -o libefence.so.0.0 efence.o 
page.o print.o -lc -lpthread
        rm *.o
-       make CFLAGS="-O2 -g -Wall"
+       make CFLAGS="-O2 -fno-tree-dse -g -Wall"
        touch build-stamp
 
 clean:

Thanks,

-- 
Colin Watson                                       [cjwat...@ubuntu.com]



-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to