Bug#820591: libgmp-dev: realloc() with invalid pointer
Michele Orru`
maker at python.it
Sun Apr 10 11:33:44 UTC 2016
Package: libgmp-dev
Version: 2:6.1.0+dfsg-2
Severity: normal
Tags: upstream
Dear Maintainer,
Given the following code:
8<--------
#include <gmp.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
if (argc < 2) {
return EXIT_FAILURE;
}
mpz_t key[argc-1];
for (int j = 0; j < argc-1; ++j) {
mpz_set_str(key[j], argv[j], 2);
}
return EXIT_SUCCESS;
}
---->8
and compiling it with
$ cc -o foo foo.c -lgmp
(I tried both clang and gcc) I get the following errors:
[maker at tumbolandia src]$ ./foo 1 2 3 4 5 6
foo: malloc.c:2862: mremap_chunk: Assertion `((size + offset) &
(_rtld_global_ro._dl_pagesize - 1)) == 0' failed.
Aborted
134 · [maker at tumbolandia src]$ ./foo 1 2 3 4 5 6 7
Segmentation fault
139 · [maker at tumbolandia src]$ ./foo 1 2 3 4 5 6 7 8
*** Error in `./foo': realloc(): invalid pointer: 0x0000000000400444 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x71ff5)[0x7feb16ff8ff5]
/lib/x86_64-linux-gnu/libc.so.6(+0x77946)[0x7feb16ffe946]
/lib/x86_64-linux-gnu/libc.so.6(realloc+0x1db)[0x7feb17002cab]
/lib/x86_64-linux-gnu/libgmp.so.10(__gmp_default_reallocate+0x14)[0x7feb17337944]
/lib/x86_64-linux-gnu/libgmp.so.10(__gmpz_realloc+0x3a)[0x7feb1734e55a]
/lib/x86_64-linux-gnu/libgmp.so.10(__gmpz_set_str+0x2d8)[0x7feb1734f918]
./foo[0x400726]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7feb16fa7610]
./foo[0x400589]
======= Memory map: ========
00400000-00401000 r-xp 00000000 fe:03 3937778
/home/maker/dev/timing/src/foo
00600000-00601000 rw-p 00000000 fe:03 3937778
/home/maker/dev/timing/src/foo
0098a000-009ab000 rw-p 00000000 00:00 0 [heap]
7feb16d71000-7feb16d87000 r-xp 00000000 fe:01 263955
/usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7feb16d87000-7feb16f86000 ---p 00016000 fe:01 263955
/usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7feb16f86000-7feb16f87000 rw-p 00015000 fe:01 263955
/usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7feb16f87000-7feb17121000 r-xp 00000000 fe:01 331212
/usr/lib/x86_64-linux-gnu/libc-2.22.so
7feb17121000-7feb17321000 ---p 0019a000 fe:01 331212
/usr/lib/x86_64-linux-gnu/libc-2.22.so
7feb17321000-7feb17325000 r--p 0019a000 fe:01 331212
/usr/lib/x86_64-linux-gnu/libc-2.22.so
7feb17325000-7feb17327000 rw-p 0019e000 fe:01 331212
/usr/lib/x86_64-linux-gnu/libc-2.22.so
7feb17327000-7feb1732b000 rw-p 00000000 00:00 0
7feb1732b000-7feb173ad000 r-xp 00000000 fe:01 265195
/usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7feb173ad000-7feb175ac000 ---p 00082000 fe:01 265195
/usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7feb175ac000-7feb175ad000 r--p 00081000 fe:01 265195
/usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7feb175ad000-7feb175ae000 rw-p 00082000 fe:01 265195
/usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7feb175ae000-7feb175d0000 r-xp 00000000 fe:01 331209
/usr/lib/x86_64-linux-gnu/ld-2.22.so
7feb1779c000-7feb1779f000 rw-p 00000000 00:00 0
7feb177cc000-7feb177cf000 rw-p 00000000 00:00 0
7feb177cf000-7feb177d0000 r--p 00021000 fe:01 331209
/usr/lib/x86_64-linux-gnu/ld-2.22.so
7feb177d0000-7feb177d1000 rw-p 00022000 fe:01 331209
/usr/lib/x86_64-linux-gnu/ld-2.22.so
7feb177d1000-7feb177d2000 rw-p 00000000 00:00 0
7ffcfb3a1000-7ffcfb3c2000 rw-p 00000000 00:00 0 [stack]
7ffcfb3ee000-7ffcfb3f0000 r--p 00000000 00:00 0 [vvar]
7ffcfb3f0000-7ffcfb3f2000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0
[vsyscall]
Aborted
I have *no* idea about why this is happening. Any clue?
-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (900, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.4.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/bash
Init: systemd (via /run/systemd/system)
Versions of packages libgmp-dev depends on:
ii libgmp10 2:6.1.0+dfsg-2
ii libgmpxx4ldbl 2:6.1.0+dfsg-2
libgmp-dev recommends no packages.
Versions of packages libgmp-dev suggests:
ii gmp-doc 6.0.0-1
ii libgmp10-doc 2:6.1.0+dfsg-2
ii libmpfr-dev 3.1.4-1
-- no debconf information
More information about the debian-science-maintainers
mailing list