From 21157f5ffacfa77679b25ac19a5fbe5a46ad78a5 Mon Sep 17 00:00:00 2001 From: Jacqueline Wong Date: Wed, 2 Feb 2022 22:43:47 +0000 Subject: [PATCH] Add gxp coredumps to Android bug report - Add gxp dump files to dumpstate_board.bin of Android bug report: /data/vendor/ssrdump/coredump/coredump_gxp_platform* and /data/vendor/ssrdump/crashinfo_gxp_platform* Test: adb root; adb remount -R; adb bugreport Bug: 218358165 Signed-off-by: Jacqueline Wong Change-Id: Ib73659e94d86932b97756f13a19b7f093e23dc63 (cherry picked from commit a31c0571d3899401707833c050f119635f849a09) --- dumpstate/Dumpstate.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/dumpstate/Dumpstate.cpp b/dumpstate/Dumpstate.cpp index 59556e17..e434f25d 100644 --- a/dumpstate/Dumpstate.cpp +++ b/dumpstate/Dumpstate.cpp @@ -1100,6 +1100,7 @@ void Dumpstate::dumpModem(int fd, int fdModem) bool tcpdumpEnabled = ::android::base::GetBoolProperty(TCPDUMP_PERSIST_PROPERTY, false); bool cameraLogsEnabled = ::android::base::GetBoolProperty( "vendor.camera.debug.camera_performance_analyzer.attach_to_bugreport", true); + bool gxpDumpEnabled = ::android::base::GetBoolProperty("vendor.gxp.attach_to_bugreport", false); int maxFileNum = ::android::base::GetIntProperty(MODEM_LOGGING_NUMBER_BUGREPORT_PROPERTY, 100); if (tcpdumpEnabled) { @@ -1143,6 +1144,18 @@ void Dumpstate::dumpModem(int fd, int fdModem) dumpCameraLogs(STDOUT_FILENO, modemLogAllDir); } + if (gxpDumpEnabled) { + const int maxGxpDebugDumps = 8; + const std::string gxpCoredumpOutputDir = modemLogAllDir + "/gxp_ssrdump"; + const std::string gxpCoredumpInputDir = "/data/vendor/ssrdump"; + + RunCommandToFd(fd, "MKDIR GXP COREDUMP", {"/vendor/bin/mkdir", "-p", gxpCoredumpOutputDir}, CommandOptions::WithTimeout(2).Build()); + + // Copy GXP coredumps and crashinfo to the output directory. + dumpLogs(fd, gxpCoredumpInputDir + "/coredump", gxpCoredumpOutputDir, maxGxpDebugDumps, "coredump_gxp_platform"); + dumpLogs(fd, gxpCoredumpInputDir, gxpCoredumpOutputDir, maxGxpDebugDumps, "crashinfo_gxp_platform"); + } + dumpLogs(fd, extendedLogDir, modemLogAllDir, maxFileNum, EXTENDED_LOG_PREFIX); dumpRilLogs(fd, modemLogAllDir); dumpNetmgrLogs(modemLogAllDir);