[llvm-commits] [compiler-rt] r163092 - /compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc
Dmitry Vyukov
dvyukov at google.com
Sun Sep 2 05:04:51 PDT 2012
Author: dvyukov
Date: Sun Sep 2 07:04:51 2012
New Revision: 163092
URL: http://llvm.org/viewvc/llvm-project?rev=163092&view=rev
Log:
tsan: do not crash with obscure message if a user passes invalid arguments to malloc/free/memset/etc
Modified:
compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc
Modified: compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc?rev=163092&r1=163091&r2=163092&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc (original)
+++ compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc Sun Sep 2 07:04:51 2012
@@ -433,9 +433,11 @@
addr += offset;
size -= offset;
}
- CHECK_EQ(addr % 8, 0);
- CHECK(IsAppMem(addr));
- CHECK(IsAppMem(addr + size - 1));
+ DCHECK_EQ(addr % 8, 0);
+ // If a user passes some insane arguments (memset(0)),
+ // let it just crash as usual.
+ if (!IsAppMem(addr) || !IsAppMem(addr + size - 1))
+ return;
(void)thr;
(void)pc;
// Some programs mmap like hundreds of GBs but actually used a small part.
More information about the llvm-commits
mailing list