summaryrefslogtreecommitdiffstats
path: root/logd
diff options
context:
space:
mode:
authorMark Salyzyn <salyzyn@google.com>2016-11-04 20:57:16 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-11-04 20:57:16 +0000
commit49893142ec398de00e9c8ad90ed199d8bfeb19e5 (patch)
tree7932cb0cb59b77193688bffc27e32beccc993378 /logd
parent1970d994b679f5dbfa5bbfdaba2317266b50dd79 (diff)
parentb0672290e320113f4b6d8fc6bb2d1e0afe493c5c (diff)
downloadsystem_core-49893142ec398de00e9c8ad90ed199d8bfeb19e5.tar.gz
system_core-49893142ec398de00e9c8ad90ed199d8bfeb19e5.tar.bz2
system_core-49893142ec398de00e9c8ad90ed199d8bfeb19e5.zip
logd: report last prune memory overhead
am: b0672290e3 Change-Id: I4b060ad4427e24170cc7a3aeae7aa9f6643ba8d6
Diffstat (limited to 'logd')
-rw-r--r--logd/LogStatistics.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/logd/LogStatistics.h b/logd/LogStatistics.h
index 69fe91502..1f598af8a 100644
--- a/logd/LogStatistics.h
+++ b/logd/LogStatistics.h
@@ -59,10 +59,12 @@ class LogHashtable {
public:
+ size_t size() const { return map.size(); }
+
// Estimate unordered_map memory usage.
size_t sizeOf() const {
return sizeof(*this) +
- (map.size() * (sizeof(TEntry) + unordered_map_per_entry_overhead)) +
+ (size() * (sizeof(TEntry) + unordered_map_per_entry_overhead)) +
(bucket_size() * sizeof(size_t) + unordered_map_bucket_overhead);
}
@@ -497,7 +499,9 @@ class LogStatistics {
size_t sizeOf() const {
size_t size = sizeof(*this) + pidTable.sizeOf() + tidTable.sizeOf() +
- tagTable.sizeOf() + securityTagTable.sizeOf();
+ tagTable.sizeOf() + securityTagTable.sizeOf() +
+ (pidTable.size() * sizeof(pidTable_t::iterator)) +
+ (tagTable.size() * sizeof(tagTable_t::iterator));
for(auto it : pidTable) {
const char* name = it.second.getName();
if (name) size += strlen(name) + 1;
@@ -508,7 +512,9 @@ class LogStatistics {
}
log_id_for_each(id) {
size += uidTable[id].sizeOf();
+ size += uidTable[id].size() * sizeof(uidTable_t::iterator);
size += pidSystemTable[id].sizeOf();
+ size += pidSystemTable[id].size() * sizeof(pidSystemTable_t::iterator);
}
return size;
}