summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2014-11-26 01:48:39 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2014-11-26 01:48:39 +0000
commitbd3af3867b456d86de4e2663fa359e651790eeef (patch)
tree6cd79bb5285d432b9ecc2e9b4313be256d73bd06 /lib
parent4d1fcf1399f2578c4b97330291a745d0eaeafcf1 (diff)
[Sanitizer] Bump kMaxPathLength to 4096 and use it more extensively instead of hardcoded constants
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@222803 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/sanitizer_common/sanitizer_common.h4
-rw-r--r--lib/sanitizer_common/sanitizer_coverage_libcdep.cc8
-rw-r--r--lib/sanitizer_common/sanitizer_libignore.cc4
-rw-r--r--lib/sanitizer_common/sanitizer_posix.cc4
4 files changed, 10 insertions, 10 deletions
diff --git a/lib/sanitizer_common/sanitizer_common.h b/lib/sanitizer_common/sanitizer_common.h
index 25dcc52c8..dab5401c1 100644
--- a/lib/sanitizer_common/sanitizer_common.h
+++ b/lib/sanitizer_common/sanitizer_common.h
@@ -34,7 +34,7 @@ const uptr kWordSizeInBits = 8 * kWordSize;
const uptr kCacheLineSize = 64;
#endif
-const uptr kMaxPathLength = 512;
+const uptr kMaxPathLength = 4096;
const uptr kMaxThreadStackSize = 1 << 30; // 1Gb
@@ -149,7 +149,7 @@ extern StaticSpinMutex CommonSanitizerReportMutex;
void MaybeOpenReportFile();
extern fd_t report_fd;
extern bool log_to_file;
-extern char report_path_prefix[4096];
+extern char report_path_prefix[kMaxPathLength];
extern uptr report_fd_pid;
extern uptr stoptheworld_tracer_pid;
extern uptr stoptheworld_tracer_ppid;
diff --git a/lib/sanitizer_common/sanitizer_coverage_libcdep.cc b/lib/sanitizer_common/sanitizer_coverage_libcdep.cc
index af8f9439d..b14f5b734 100644
--- a/lib/sanitizer_common/sanitizer_coverage_libcdep.cc
+++ b/lib/sanitizer_common/sanitizer_coverage_libcdep.cc
@@ -132,7 +132,7 @@ class CoverageData {
static CoverageData coverage_data;
void CoverageData::DirectOpen() {
- InternalScopedString path(1024);
+ InternalScopedString path(kMaxPathLength);
internal_snprintf((char *)path.data(), path.size(), "%s/%zd.sancov.raw",
common_flags()->coverage_dir, internal_getpid());
pc_fd = OpenFile(path.data(), true);
@@ -339,7 +339,7 @@ static void CovWritePacked(int pid, const char *module, const void *blob,
// If packed = true and name != 0: <name>.<sancov>.<packed> (name is
// user-supplied).
static int CovOpenFile(bool packed, const char* name) {
- InternalScopedBuffer<char> path(1024);
+ InternalScopedBuffer<char> path(kMaxPathLength);
if (!packed) {
CHECK(name);
internal_snprintf((char *)path.data(), path.size(), "%s/%s.%zd.sancov",
@@ -465,8 +465,8 @@ static void CovDump() {
SortArray(vb, size);
MemoryMappingLayout proc_maps(/*cache_enabled*/true);
uptr mb, me, off, prot;
- InternalScopedBuffer<char> module(4096);
- InternalScopedBuffer<char> path(4096 * 2);
+ InternalScopedBuffer<char> module(kMaxPathLength);
+ InternalScopedBuffer<char> path(kMaxPathLength);
for (int i = 0;
proc_maps.Next(&mb, &me, &off, module.data(), module.size(), &prot);
i++) {
diff --git a/lib/sanitizer_common/sanitizer_libignore.cc b/lib/sanitizer_common/sanitizer_libignore.cc
index 44e45292f..7567d6fbb 100644
--- a/lib/sanitizer_common/sanitizer_libignore.cc
+++ b/lib/sanitizer_common/sanitizer_libignore.cc
@@ -42,7 +42,7 @@ void LibIgnore::Init(const SuppressionContext &supp) {
void LibIgnore::OnLibraryLoaded(const char *name) {
BlockingMutexLock lock(&mutex_);
// Try to match suppressions with symlink target.
- InternalScopedBuffer<char> buf(4096);
+ InternalScopedBuffer<char> buf(kMaxPathLength);
if (name != 0 && internal_readlink(name, buf.data(), buf.size() - 1) > 0 &&
buf.data()[0]) {
for (uptr i = 0; i < count_; i++) {
@@ -55,7 +55,7 @@ void LibIgnore::OnLibraryLoaded(const char *name) {
// Scan suppressions list and find newly loaded and unloaded libraries.
MemoryMappingLayout proc_maps(/*cache_enabled*/false);
- InternalScopedBuffer<char> module(4096);
+ InternalScopedBuffer<char> module(kMaxPathLength);
for (uptr i = 0; i < count_; i++) {
Lib *lib = &libs_[i];
bool loaded = false;
diff --git a/lib/sanitizer_common/sanitizer_posix.cc b/lib/sanitizer_common/sanitizer_posix.cc
index eb2497b4d..a15264ff0 100644
--- a/lib/sanitizer_common/sanitizer_posix.cc
+++ b/lib/sanitizer_common/sanitizer_posix.cc
@@ -293,7 +293,7 @@ void MaybeOpenReportFile() {
if (pid == stoptheworld_tracer_pid)
pid = stoptheworld_tracer_ppid;
if (report_fd_pid == pid) return;
- InternalScopedBuffer<char> report_path_full(4096);
+ InternalScopedBuffer<char> report_path_full(kMaxPathLength);
internal_snprintf(report_path_full.data(), report_path_full.size(),
"%s.%zu", report_path_prefix, pid);
uptr openrv = OpenFile(report_path_full.data(), true);
@@ -324,7 +324,7 @@ void RawWrite(const char *buffer) {
bool GetCodeRangeForFile(const char *module, uptr *start, uptr *end) {
uptr s, e, off, prot;
- InternalScopedString buff(4096);
+ InternalScopedString buff(kMaxPathLength);
MemoryMappingLayout proc_maps(/*cache_enabled*/false);
while (proc_maps.Next(&s, &e, &off, buff.data(), buff.size(), &prot)) {
if ((prot & MemoryMappingLayout::kProtectionExecute) != 0