Loading audio/core/all-versions/default/Android.bp +2 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,8 @@ cc_defaults { "libhidlbase", "liblog", "libmedia_helper", "libmediautils_vendor", "libmemunreachable", "libutils", "android.hardware.audio.common-util", ], Loading audio/core/all-versions/default/Device.cpp +27 −2 Original line number Diff line number Diff line Loading @@ -30,6 +30,8 @@ #include <algorithm> #include <android/log.h> #include <mediautils/MemoryLeakTrackUtil.h> #include <memunreachable/memunreachable.h> #include <HidlUtils.h> Loading Loading @@ -456,9 +458,32 @@ Return<void> Device::debugDump(const hidl_handle& fd) { } #endif Return<void> Device::debug(const hidl_handle& fd, const hidl_vec<hidl_string>& /* options */) { Return<void> Device::debug(const hidl_handle& fd, const hidl_vec<hidl_string>& options) { if (fd.getNativeHandle() != nullptr && fd->numFds == 1) { analyzeStatus("dump", mDevice->dump(mDevice, fd->data[0])); const int fd0 = fd->data[0]; bool dumpMem = false; bool unreachableMemory = false; for (const auto& option : options) { if (option == "-m") { dumpMem = true; } else if (option == "--unreachable") { unreachableMemory = true; } } if (dumpMem) { dprintf(fd0, "\nDumping memory:\n"); std::string s = dumpMemoryAddresses(100 /* limit */); write(fd0, s.c_str(), s.size()); } if (unreachableMemory) { dprintf(fd0, "\nDumping unreachable memory:\n"); // TODO - should limit be an argument parameter? std::string s = GetUnreachableMemoryString(true /* contents */, 100 /* limit */); write(fd0, s.c_str(), s.size()); } analyzeStatus("dump", mDevice->dump(mDevice, fd0)); } return Void(); } Loading Loading
audio/core/all-versions/default/Android.bp +2 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,8 @@ cc_defaults { "libhidlbase", "liblog", "libmedia_helper", "libmediautils_vendor", "libmemunreachable", "libutils", "android.hardware.audio.common-util", ], Loading
audio/core/all-versions/default/Device.cpp +27 −2 Original line number Diff line number Diff line Loading @@ -30,6 +30,8 @@ #include <algorithm> #include <android/log.h> #include <mediautils/MemoryLeakTrackUtil.h> #include <memunreachable/memunreachable.h> #include <HidlUtils.h> Loading Loading @@ -456,9 +458,32 @@ Return<void> Device::debugDump(const hidl_handle& fd) { } #endif Return<void> Device::debug(const hidl_handle& fd, const hidl_vec<hidl_string>& /* options */) { Return<void> Device::debug(const hidl_handle& fd, const hidl_vec<hidl_string>& options) { if (fd.getNativeHandle() != nullptr && fd->numFds == 1) { analyzeStatus("dump", mDevice->dump(mDevice, fd->data[0])); const int fd0 = fd->data[0]; bool dumpMem = false; bool unreachableMemory = false; for (const auto& option : options) { if (option == "-m") { dumpMem = true; } else if (option == "--unreachable") { unreachableMemory = true; } } if (dumpMem) { dprintf(fd0, "\nDumping memory:\n"); std::string s = dumpMemoryAddresses(100 /* limit */); write(fd0, s.c_str(), s.size()); } if (unreachableMemory) { dprintf(fd0, "\nDumping unreachable memory:\n"); // TODO - should limit be an argument parameter? std::string s = GetUnreachableMemoryString(true /* contents */, 100 /* limit */); write(fd0, s.c_str(), s.size()); } analyzeStatus("dump", mDevice->dump(mDevice, fd0)); } return Void(); } Loading