summaryrefslogtreecommitdiff
path: root/memtrack.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'memtrack.cpp')
-rw-r--r--memtrack.cpp73
1 files changed, 3 insertions, 70 deletions
diff --git a/memtrack.cpp b/memtrack.cpp
index 7726942..3fc24c8 100644
--- a/memtrack.cpp
+++ b/memtrack.cpp
@@ -14,18 +14,14 @@
* limitations under the License.
*/
#define LOG_TAG "memtrack"
-
-#include <aidl/android/hardware/memtrack/IMemtrack.h>
-#include <aidl/android/hardware/memtrack/MemtrackType.h>
-#include <android/binder_manager.h>
#include <android/hardware/memtrack/1.0/IMemtrack.h>
#include <memtrack/memtrack.h>
#include <errno.h>
#include <malloc.h>
+#include <vector>
#include <string.h>
#include <mutex>
-#include <vector>
#include <log/log.h>
@@ -37,41 +33,6 @@ using android::hardware::memtrack::V1_0::MemtrackStatus;
using android::hardware::hidl_vec;
using android::hardware::Return;
-namespace V1_0 = android::hardware::memtrack::V1_0;
-namespace V_aidl = aidl::android::hardware::memtrack;
-
-// Check Memtrack Flags
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::SMAPS_ACCOUNTED) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_SMAPS_ACCOUNTED));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::SMAPS_UNACCOUNTED) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_SMAPS_UNACCOUNTED));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::SHARED) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_SHARED));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::SHARED_PSS) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_SHARED_PSS));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::PRIVATE) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_PRIVATE));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::SYSTEM) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_SYSTEM));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::DEDICATED) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_DEDICATED));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::NONSECURE) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_NONSECURE));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackFlag::SECURE) ==
- static_cast<uint32_t>(V_aidl::MemtrackRecord::FLAG_SECURE));
-
-// Check Memtrack Types
-static_assert(static_cast<uint32_t>(V1_0::MemtrackType::OTHER) ==
- static_cast<uint32_t>(V_aidl::MemtrackType::OTHER));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackType::GL) ==
- static_cast<uint32_t>(V_aidl::MemtrackType::GL));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackType::GRAPHICS) ==
- static_cast<uint32_t>(V_aidl::MemtrackType::GRAPHICS));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackType::MULTIMEDIA) ==
- static_cast<uint32_t>(V_aidl::MemtrackType::MULTIMEDIA));
-static_assert(static_cast<uint32_t>(V1_0::MemtrackType::CAMERA) ==
- static_cast<uint32_t>(V_aidl::MemtrackType::CAMERA));
-
struct memtrack_proc_type {
MemtrackType type;
std::vector<MemtrackRecord> records;
@@ -83,7 +44,7 @@ struct memtrack_proc {
};
//TODO(b/31632518)
-static android::sp<V1_0::IMemtrack> get_hidl_instance() {
+static android::sp<IMemtrack> get_instance() {
static android::sp<IMemtrack> module = IMemtrack::getService();
static bool logged = false;
if (module == nullptr && !logged) {
@@ -93,14 +54,6 @@ static android::sp<V1_0::IMemtrack> get_hidl_instance() {
return module;
}
-
-inline std::shared_ptr<V_aidl::IMemtrack> get_aidl_instance() {
- const auto instance =
- std::string() + V_aidl::IMemtrack::descriptor + "/default";
- auto memtrackBinder = ndk::SpAIBinder(AServiceManager_getService(instance.c_str()));
- return V_aidl::IMemtrack::fromBinder(memtrackBinder);
-}
-
memtrack_proc *memtrack_proc_new(void)
{
return new memtrack_proc();
@@ -115,27 +68,7 @@ static int memtrack_proc_get_type(memtrack_proc_type *t,
pid_t pid, MemtrackType type)
{
int err = 0;
-
- std::shared_ptr<V_aidl::IMemtrack> service= get_aidl_instance();
- if (service) {
- std::vector<V_aidl::MemtrackRecord> records;
- auto status = service->getMemory(
- pid, static_cast<V_aidl::MemtrackType>(static_cast<uint32_t>(type)), &records);
-
- if (!status.isOk()) {
- return -1;
- }
-
- t->records.resize(records.size());
- for (size_t i = 0; i < records.size(); i++) {
- t->records[i].sizeInBytes = records[i].sizeInBytes;
- t->records[i].flags = records[i].flags;
- }
-
- return err;
- }
-
- android::sp<V1_0::IMemtrack> memtrack = get_hidl_instance();
+ android::sp<IMemtrack> memtrack = get_instance();
if (memtrack == nullptr)
return -1;