[DO NOT MERGE] gs201:dumpstate: Dump long irq metrics, resume latency metrics at bugreport

At the bugreport, capture long irq metrics and resume latency metrics

Bug: 227809911
Bug: 232541623
Test: "adb bugreport" includes metrics capture.
Signed-off-by: Ziyi Cui <ziyic@google.com>
Change-Id: I8dc3330da3b9274be24534b52db86f0b3d01a482
This commit is contained in:
Ziyi Cui 2022-11-14 18:46:38 -08:00
parent 87cb8256a3
commit ead189b0f8
2 changed files with 7 additions and 0 deletions

View file

@ -243,6 +243,7 @@ Dumpstate::Dumpstate()
{ "trusty", [this](int fd) { dumpTrustySection(fd); } }, { "trusty", [this](int fd) { dumpTrustySection(fd); } },
{ "led", [this](int fd) { dumpLEDSection(fd); } }, { "led", [this](int fd) { dumpLEDSection(fd); } },
{ "pixel-trace", [this](int fd) { dumpPixelTraceSection(fd); } }, { "pixel-trace", [this](int fd) { dumpPixelTraceSection(fd); } },
{ "perf-metrics", [this](int fd) { dumpPerfMetricsSection(fd); } },
}, },
mLogSections{ mLogSections{
{ "modem", [this](int fd, const std::string &destDir) { dumpModemLogs(fd, destDir); } }, { "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"); 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, ndk::ScopedAStatus Dumpstate::dumpstateBoard(const std::vector<::ndk::ScopedFileDescriptor>& in_fds,
IDumpstateDevice::DumpstateMode in_mode, IDumpstateDevice::DumpstateMode in_mode,
int64_t in_timeoutMillis) { int64_t in_timeoutMillis) {

View file

@ -71,6 +71,7 @@ class Dumpstate : public BnDumpstateDevice {
void dumpTrustySection(int fd); void dumpTrustySection(int fd);
void dumpLEDSection(int fd); void dumpLEDSection(int fd);
void dumpPixelTraceSection(int fd); void dumpPixelTraceSection(int fd);
void dumpPerfMetricsSection(int fd);
void dumpLogSection(int fd, int fdModem); void dumpLogSection(int fd, int fdModem);