diff --git a/dumpstate/Dumpstate.cpp b/dumpstate/Dumpstate.cpp index 0720e4d3..eba5f877 100644 --- a/dumpstate/Dumpstate.cpp +++ b/dumpstate/Dumpstate.cpp @@ -243,6 +243,7 @@ Dumpstate::Dumpstate() { "trusty", [this](int fd) { dumpTrustySection(fd); } }, { "led", [this](int fd) { dumpLEDSection(fd); } }, { "pixel-trace", [this](int fd) { dumpPixelTraceSection(fd); } }, + { "perf-metrics", [this](int fd) { dumpPerfMetricsSection(fd); } }, }, mLogSections{ { "modem", [this](int fd, const std::string &destDir) { dumpModemLogs(fd, destDir); } }, @@ -1320,6 +1321,11 @@ void Dumpstate::dumpPixelTraceSection(int fd) { DumpFileToFd(fd, "Pixel trace", "/sys/kernel/tracing/instances/pixel/trace"); } +void Dumpstate::dumpPerfMetricsSection(int fd) { + DumpFileToFd(fd, "Long running IRQ metrics", "/sys/kernel/metrics/irq/long_irq_metrics"); + DumpFileToFd(fd, "Resume latency metrics", "/sys/kernel/metrics/resume_latency/resume_latency_metrics"); +} + ndk::ScopedAStatus Dumpstate::dumpstateBoard(const std::vector<::ndk::ScopedFileDescriptor>& in_fds, IDumpstateDevice::DumpstateMode in_mode, int64_t in_timeoutMillis) { diff --git a/dumpstate/Dumpstate.h b/dumpstate/Dumpstate.h index 47b4942b..805c1cbd 100644 --- a/dumpstate/Dumpstate.h +++ b/dumpstate/Dumpstate.h @@ -71,6 +71,7 @@ class Dumpstate : public BnDumpstateDevice { void dumpTrustySection(int fd); void dumpLEDSection(int fd); void dumpPixelTraceSection(int fd); + void dumpPerfMetricsSection(int fd); void dumpLogSection(int fd, int fdModem);