1. Enforce the turn-off of caching for now. 2. LOGE -> LOGW. 3. mmap bug.
Fix the sporadic crash.
Change-Id: I2c153c3d584522d79d325e4378bcb2a231ec3e67
diff --git a/bcc.cpp b/bcc.cpp
index 8e9371c..820c184 100644
--- a/bcc.cpp
+++ b/bcc.cpp
@@ -570,23 +570,24 @@
std::string ErrMsg;
// if (!Compiler::BccCodeAddrTaken) { // Use BCC_CODE_ADDR
- mpCodeMem = mmap(reinterpret_cast<void*>(BCC_CODE_ADDR),
+ /* TODO(sliao):
+ mpCodeMem = mmap(reinterpret_cast<void*>(BCC_CODE_ADDR),
MaxCodeSize + MaxGlobalVarSize,
PROT_READ | PROT_EXEC | PROT_WRITE,
MAP_PRIVATE | MAP_ANON | MAP_FIXED,
-1,
0);
- if (mpCodeMem == MAP_FAILED) {
+ if (mpCodeMem == MAP_FAILED) {*/
mpCodeMem = mmap(NULL,
MaxCodeSize + MaxGlobalVarSize,
PROT_READ | PROT_EXEC | PROT_WRITE,
MAP_PRIVATE | MAP_ANON,
-1,
0);
- } else {
+ // } else {
// mBccCodeAddrTaken = true;
- }
+ //}
if (mpCodeMem == MAP_FAILED) {
llvm::report_fatal_error("Failed to allocate memory for emitting "
@@ -3562,9 +3563,9 @@
fd = open(cacheFileName, O_RDONLY, 0);
if (fd < 0) {
if (createIfMissing) {
- LOGE("Can't open bcc-cache '%s': %s\n",
+ LOGW("Can't open bcc-cache '%s': %s\n",
cacheFileName, strerror(errno));
- mCacheNew = true;
+ mNeverCache = true;
}
return fd;
}