Closed
Description
On master, I didn't try on 2.2.0:
# opj_compress -n 1 -i $FILE -o null.j2k
==171751==ERROR: AddressSanitizer failed to allocate 0x9800002000 (652835037184) bytes of LargeMmapAllocator (error code: 12)
==171751==Process memory map follows:
0x000000400000-0x0000005a6000 /usr/bin/opj_compress
0x0000007a5000-0x0000007a6000 /usr/bin/opj_compress
0x0000007a6000-0x0000007b0000 /usr/bin/opj_compress
0x0000007b0000-0x000001425000
0x00007fff7000-0x00008fff7000
0x00008fff7000-0x02008fff7000
0x02008fff7000-0x10007fff8000
0x600000000000-0x604000000000
0x604000000000-0x604000010000
0x604000010000-0x604e00000000
0x604e00000000-0x604e00010000
0x604e00010000-0x606000000000
0x606000000000-0x606000010000
0x606000010000-0x606e00000000
0x606e00000000-0x606e00010000
0x606e00010000-0x616000000000
0x616000000000-0x616000010000
0x616000010000-0x616e00000000
0x616e00000000-0x616e00010000
0x616e00010000-0x621000000000
0x621000000000-0x621000010000
0x621000010000-0x621e00000000
0x621e00000000-0x621e00010000
0x621e00010000-0x640000000000
0x640000000000-0x640000003000
0x7ff7b39f7000-0x7ff7b4600000
0x7ff7b4700000-0x7ff7b4800000
0x7ff7b4842000-0x7ff7b6b94000
0x7ff7b6b94000-0x7ff7b6bfc000 /usr/lib64/libjpeg.so.62.2.0
0x7ff7b6bfc000-0x7ff7b6dfc000 /usr/lib64/libjpeg.so.62.2.0
0x7ff7b6dfc000-0x7ff7b6dfd000 /usr/lib64/libjpeg.so.62.2.0
0x7ff7b6dfd000-0x7ff7b6dfe000 /usr/lib64/libjpeg.so.62.2.0
0x7ff7b6dfe000-0x7ff7b6e07000 /usr/lib64/libjbig.so
0x7ff7b6e07000-0x7ff7b7006000 /usr/lib64/libjbig.so
0x7ff7b7006000-0x7ff7b7007000 /usr/lib64/libjbig.so
0x7ff7b7007000-0x7ff7b700a000 /usr/lib64/libjbig.so
0x7ff7b700a000-0x7ff7b702e000 /lib64/liblzma.so.5.2.3
0x7ff7b702e000-0x7ff7b722e000 /lib64/liblzma.so.5.2.3
0x7ff7b722e000-0x7ff7b722f000 /lib64/liblzma.so.5.2.3
0x7ff7b722f000-0x7ff7b7230000 /lib64/liblzma.so.5.2.3
0x7ff7b7230000-0x7ff7b7246000 /lib64/libz.so.1.2.11
0x7ff7b7246000-0x7ff7b7445000 /lib64/libz.so.1.2.11
0x7ff7b7445000-0x7ff7b7446000 /lib64/libz.so.1.2.11
0x7ff7b7446000-0x7ff7b7447000 /lib64/libz.so.1.2.11
0x7ff7b7447000-0x7ff7b75d6000 /lib64/libc-2.23.so
0x7ff7b75d6000-0x7ff7b77d6000 /lib64/libc-2.23.so
0x7ff7b77d6000-0x7ff7b77da000 /lib64/libc-2.23.so
0x7ff7b77da000-0x7ff7b77dc000 /lib64/libc-2.23.so
0x7ff7b77dc000-0x7ff7b77e0000
0x7ff7b77e0000-0x7ff7b77f6000 /usr/lib64/gcc/x86_64-pc-linux-gnu/6.3.0/libgcc_s.so.1
0x7ff7b77f6000-0x7ff7b79f5000 /usr/lib64/gcc/x86_64-pc-linux-gnu/6.3.0/libgcc_s.so.1
0x7ff7b79f5000-0x7ff7b79f6000 /usr/lib64/gcc/x86_64-pc-linux-gnu/6.3.0/libgcc_s.so.1
0x7ff7b79f6000-0x7ff7b79f7000 /usr/lib64/gcc/x86_64-pc-linux-gnu/6.3.0/libgcc_s.so.1
0x7ff7b79f7000-0x7ff7b79f9000 /lib64/libdl-2.23.so
0x7ff7b79f9000-0x7ff7b7bf9000 /lib64/libdl-2.23.so
0x7ff7b7bf9000-0x7ff7b7bfa000 /lib64/libdl-2.23.so
0x7ff7b7bfa000-0x7ff7b7bfb000 /lib64/libdl-2.23.so
0x7ff7b7bfb000-0x7ff7b7c12000 /lib64/libpthread-2.23.so
0x7ff7b7c12000-0x7ff7b7e11000 /lib64/libpthread-2.23.so
0x7ff7b7e11000-0x7ff7b7e12000 /lib64/libpthread-2.23.so
0x7ff7b7e12000-0x7ff7b7e13000 /lib64/libpthread-2.23.so
0x7ff7b7e13000-0x7ff7b7e17000
0x7ff7b7e17000-0x7ff7b7e1d000 /lib64/librt-2.23.so
0x7ff7b7e1d000-0x7ff7b801d000 /lib64/librt-2.23.so
0x7ff7b801d000-0x7ff7b801e000 /lib64/librt-2.23.so
0x7ff7b801e000-0x7ff7b801f000 /lib64/librt-2.23.so
0x7ff7b801f000-0x7ff7b8121000 /lib64/libm-2.23.so
0x7ff7b8121000-0x7ff7b8320000 /lib64/libm-2.23.so
0x7ff7b8320000-0x7ff7b8321000 /lib64/libm-2.23.so
0x7ff7b8321000-0x7ff7b8322000 /lib64/libm-2.23.so
0x7ff7b8322000-0x7ff7b8377000 /usr/lib64/liblcms2.so.2.0.8
0x7ff7b8377000-0x7ff7b8576000 /usr/lib64/liblcms2.so.2.0.8
0x7ff7b8576000-0x7ff7b8577000 /usr/lib64/liblcms2.so.2.0.8
0x7ff7b8577000-0x7ff7b857c000 /usr/lib64/liblcms2.so.2.0.8
0x7ff7b857c000-0x7ff7b85ef000 /usr/lib64/libtiff.so.5.2.6
0x7ff7b85ef000-0x7ff7b87ee000 /usr/lib64/libtiff.so.5.2.6
0x7ff7b87ee000-0x7ff7b87f2000 /usr/lib64/libtiff.so.5.2.6
0x7ff7b87f2000-0x7ff7b87f3000 /usr/lib64/libtiff.so.5.2.6
0x7ff7b87f3000-0x7ff7b8825000 /usr/lib64/libpng16.so.16.29.0
0x7ff7b8825000-0x7ff7b8a24000 /usr/lib64/libpng16.so.16.29.0
0x7ff7b8a24000-0x7ff7b8a25000 /usr/lib64/libpng16.so.16.29.0
0x7ff7b8a25000-0x7ff7b8a26000 /usr/lib64/libpng16.so.16.29.0
0x7ff7b8a26000-0x7ff7b8b8e000 /usr/lib64/libopenjp2.so.2.2.0
0x7ff7b8b8e000-0x7ff7b8d8d000 /usr/lib64/libopenjp2.so.2.2.0
0x7ff7b8d8d000-0x7ff7b8d90000 /usr/lib64/libopenjp2.so.2.2.0
0x7ff7b8d90000-0x7ff7b8d97000 /usr/lib64/libopenjp2.so.2.2.0
0x7ff7b8d97000-0x7ff7b8dbb000 /lib64/ld-2.23.so
0x7ff7b8e30000-0x7ff7b8fac000
0x7ff7b8fac000-0x7ff7b8fba000
0x7ff7b8fba000-0x7ff7b8fbb000 /lib64/ld-2.23.so
0x7ff7b8fbb000-0x7ff7b8fbc000 /lib64/ld-2.23.so
0x7ff7b8fbc000-0x7ff7b8fbd000
0x7ffc09da2000-0x7ffc09dc3000 [stack]
0x7ffc09dcd000-0x7ffc09dcf000 [vdso]
0x7ffc09dcf000-0x7ffc09dd1000 [vvar]
0xffffffffff600000-0xffffffffff601000 [vsyscall]
==171751==End of process memory map.
==171751==AddressSanitizer CHECK failed: /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/sanitizer_common/sanitizer_common.cc:120 "((0 && "unable to mmap")) != (0)" (0x0, 0x0)
#0 0x4db5af in AsanCheckFailed /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/asan/asan_rtl.cc:69
#1 0x4f6315 in __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/sanitizer_common/sanitizer_termination.cc:79
#2 0x4e5942 in __sanitizer::ReportMmapFailureAndDie(unsigned long, char const*, char const*, int, bool) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/sanitizer_common/sanitizer_common.cc:120
#3 0x4ef245 in __sanitizer::MmapOrDie(unsigned long, char const*, bool) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/sanitizer_common/sanitizer_posix.cc:132
#4 0x426c4a in __sanitizer::LargeMmapAllocator<__asan::AsanMapUnmapCallback>::Allocate(__sanitizer::AllocatorStats*, unsigned long, unsigned long) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/asan/../sanitizer_common/sanitizer_allocator_secondary.h:41
#5 0x426c4a in __sanitizer::CombinedAllocator<__sanitizer::SizeClassAllocator64<__asan::AP64>, __sanitizer::SizeClassAllocatorLocalCache<__sanitizer::SizeClassAllocator64<__asan::AP64> >, __sanitizer::LargeMmapAllocator<__asan::AsanMapUnmapCallback> >::Allocate(__sanitizer::SizeClassAllocatorLocalCache<__sanitizer::SizeClassAllocator64<__asan::AP64> >*, unsigned long, unsigned long, bool, bool) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/asan/../sanitizer_common/sanitizer_allocator_combined.h:70
#6 0x426c4a in __asan::Allocator::Allocate(unsigned long, unsigned long, __sanitizer::BufferedStackTrace*, __asan::AllocType, bool) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/asan/asan_allocator.cc:407
#7 0x42132d in __asan::asan_posix_memalign(void**, unsigned long, unsigned long, __sanitizer::BufferedStackTrace*) /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/asan/asan_allocator.cc:815
#8 0x4d200d in __interceptor_posix_memalign /var/tmp/portage/sys-libs/compiler-rt-sanitizers-4.0.1/work/compiler-rt-4.0.1.src/lib/asan/asan_malloc_linux.cc:144
#9 0x7ff7b8b7c594 in opj_aligned_alloc_n /var/tmp/portage/media-libs/openjpeg-9999/work/openjpeg-9999/src/lib/openjp2/opj_malloc.c:61:9
#10 0x7ff7b8b7c594 in opj_aligned_malloc /var/tmp/portage/media-libs/openjpeg-9999/work/openjpeg-9999/src/lib/openjp2/opj_malloc.c:209
#11 0x7ff7b8a5fec9 in opj_image_create /var/tmp/portage/media-libs/openjpeg-9999/work/openjpeg-9999/src/lib/openjp2/image.c:77:39
#12 0x525a27 in pgxtoimage /var/tmp/portage/media-libs/openjpeg-9999/work/openjpeg-9999/src/bin/jp2/convert.c:1253:13
#13 0x50b520 in main /var/tmp/portage/media-libs/openjpeg-9999/work/openjpeg-9999/src/bin/jp2/opj_compress.c:1831:21
#14 0x7ff7b7467680 in __libc_start_main /var/tmp/portage/sys-libs/glibc-2.23-r4/work/glibc-2.23/csu/../csu/libc-start.c:289
#15 0x41bc18 in _start (/usr/bin/opj_compress+0x41bc18)
Testcase:
https://github.com/asarubbo/poc/blob/master/00328-openjpeg-memallocfailure-opj_aligned_alloc_n
Metadata
Assignees
Labels
No labels