Hi,

Building cmor 2.8.0-2 fails for me in exactly the same place but with
different error codes.  This is kfreebsd-i386 with up-to-date Wheezy,
running in VirtualBox limited to 512MiB RAM and no swap:

> GNU C (Debian 4.6.2-12) version 4.6.2 (i486-kfreebsd-gnu)
>       compiled by GNU C version 4.6.2, GMP version 5.0.2, MPFR version 
> 3.1.0-p3, MPC version 0.9
> warning: GMP header version 5.0.2 differs from library version 5.0.4.
> GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=63924
> Compiler executable checksum: 4df8d7c1419473a950dfe25eff95f5f2
> COLLECT_GCC_OPTIONS='-v' '-D' '_FORTIFY_SOURCE=2' '-I' 'include' '-I' 
> 'include/cdTime' '-L/usr/lib' '-I' '/usr/include' '-L.' '-I' 
> '/usr/include/ossp' '-o' 'ipcc_test_code' '-mtune=generic' '-march=i586'
>  as --32 -o /tmp/cculu0Td.o /tmp/ccwmv5NU.s
> COMPILER_PATH=/usr/lib/gcc/i486-kfreebsd-gnu/4.6/:/usr/lib/gcc/i486-kfreebsd-gnu/4.6/:/usr/lib/gcc/i486-kfreebsd-gnu/:/usr/lib/gcc/i486-kfreebsd-gnu/4.6/:/usr/lib/gcc/i486-kfreebsd-gnu/
> LIBRARY_PATH=/usr/lib/gcc/i486-kfreebsd-gnu/4.6/:/usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../../i386-kfreebsd-gnu/:/usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../../:/lib/i386-kfreebsd-gnu/:/lib/:/usr/lib/i386-kfreebsd-gnu/:/usr/lib/
> COLLECT_GCC_OPTIONS='-v' '-D' '_FORTIFY_SOURCE=2' '-I' 'include' '-I' 
> 'include/cdTime' '-L/usr/lib' '-I' '/usr/include' '-L.' '-I' 
> '/usr/include/ossp' '-o' 'ipcc_test_code' '-mtune=generic' '-march=i586'
>  /usr/lib/gcc/i486-kfreebsd-gnu/4.6/collect2 --build-id --no-add-needed 
> --eh-frame-hdr -m elf_i386_fbsd --hash-style=both -dynamic-linker 
> /lib/ld.so.1 -o ipcc_test_code 
> /usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../../i386-kfreebsd-gnu/crt1.o 
> /usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../../i386-kfreebsd-gnu/crti.o 
> /usr/lib/gcc/i486-kfreebsd-gnu/4.6/crtbegin.o -L/usr/lib -L. 
> -L/usr/lib/gcc/i486-kfreebsd-gnu/4.6 
> -L/usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../../i386-kfreebsd-gnu 
> -L/usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../.. -L/lib/i386-kfreebsd-gnu 
> -L/usr/lib/i386-kfreebsd-gnu -lnetcdf /tmp/cculu0Td.o -lcmor -lnetcdf 
> -ludunits2 -lossp-uuid -lm -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc 
> --as-needed -lgcc_s --no-as-needed 
> /usr/lib/gcc/i486-kfreebsd-gnu/4.6/crtend.o 
> /usr/lib/gcc/i486-kfreebsd-gnu/4.6/../../../i386-kfreebsd-gnu/crtn.o
> collect2: ld terminated with signal 9 [Killed]
> /bin/sh: 1: ./ipcc_test_code: not found
> make[1]: *** [test_C] Error 127
> make[1]: Leaving directory `/home/steven/cmor-2.8.0'
> dh_auto_test: make -j1 test returned exit code 2
> make: *** [build] Error 2

The linker is killed by OOM-killer, so I also get this in dmesg:

> pid 43009 (ld.bfd.real), uid 1000, was killed: out of swap space

With ktrace/kdump I managed to find this:

>  43009 ld.bfd.real CALL  open(0x8176420,O_RDONLY|O_LARGEFILE,<unused>0)
>  43009 ld.bfd.real NAMI  "./libcmor.a"
>  43009 ld.bfd.real RET   open 9
>  43009 ld.bfd.real CALL  fcntl(0x9,<invalid=1>,0)
>  43009 ld.bfd.real RET   fcntl 0
>  43009 ld.bfd.real CALL  fcntl(0x9,<invalid=2>,FD_CLOEXEC)
>  43009 ld.bfd.real RET   fcntl 0
>  43009 ld.bfd.real CALL  fstat(0x9,0xbfbfdaf0)
>  43009 ld.bfd.real STRU  struct stat {dev=63, ino=147868, mode=-rw-r--r-- , 
> nlink=1, uid=1000, gid=1000, rdev=638888, atime=1330751447, stime=1330751447, 
> ctime=1330751447, birthtime=1330751447, size=978830, blksize=16384, 
> blocks=1952, flags=0x0 }
>  43009 ld.bfd.real RET   fstat 0
>  43009 ld.bfd.real CALL  
> mmap(0,0x4000,PROT_READ|PROT_WRITE,MAP_ANON|MAP_TYPE|MAP_PRIVATE,0xffffffff,0,0)
>  43009 ld.bfd.real RET   mmap 674934784/0x283ab000
...many more reads...
>  43009 ld.bfd.real RET   read 16384/0x4000
>  43009 ld.bfd.real CALL  read(0x9,0x283a3000,0x4000)
>  43009 ld.bfd.real GIO   fd 9 read 4096 bytes
>  43009 ld.bfd.real RET   read 16384/0x4000
>  43009 ld.bfd.real CALL  lseek(0x9,0x44000,SEEK_SET,0)
>  43009 ld.bfd.real RET   lseek 278528/0x44000
>  43009 ld.bfd.real CALL  lseek(0x9,0x44000,SEEK_SET,0)
>  43009 ld.bfd.real RET   lseek 278528/0x44000
>  43009 ld.bfd.real CALL  
> mmap(0,0x29fa3000,PROT_READ|PROT_WRITE,MAP_ANON|MAP_TYPE|MAP_PRIVATE,0xffffffff,0,0)
>  43009 ld.bfd.real RET   mmap 675033088/0x283c3000
>  43009 ld.bfd.real PSIG  SIGKILL SIG_DFL

It is trying to map a range 0->0x29fa3000 = ~671MiB bytes which is why
it fails in my VM which has only 512MiB RAM.  The value being requested
as length here appears to be a pointer.

Jakub Wilk wrote:
> FWIW, I can't reproduce this failure on asdfasdf.debian.net.

Maybe it just had more available RAM than the buildds?

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


-- 
To UNSUBSCRIBE, email to debian-bsd-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4f51bb7f.2030...@pyro.eu.org

Reply via email to