DumpState: Include the camera graph state dump files
Bug: 283612437
Bug: 282075222
Test: Check the graph state dump files in dumpstate_board.bin in
a bugreport
Change-Id: I8c7604c91965167b71568c1058ca180b0680b392
(cherry picked from commit 559ad99a14767dec5d6985e62aac18f21cb98a67)
diff --git a/camera/dump_camera.cpp b/camera/dump_camera.cpp
index 105c024..548a866 100644
--- a/camera/dump_camera.cpp
+++ b/camera/dump_camera.cpp
@@ -13,30 +13,40 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-#include <dump/pixel_dump.h>
-#include <android-base/properties.h>
#include <android-base/file.h>
+#include <android-base/properties.h>
+#include <dump/pixel_dump.h>
+
+namespace {
+
+constexpr std::string_view kCameraLogDir = "/data/vendor/camera/profiler";
+constexpr std::string_view kGraphStateDumpDir = "/data/vendor/camera";
+
+} // namespace
int main() {
- if (!::android::base::GetBoolProperty("vendor.camera.debug.camera_performance_analyzer.attach_to_bugreport", true)) {
- return 0;
- }
-
- static const std::string kCameraLogDir = "/data/vendor/camera/profiler";
- const std::string cameraDestDir = concatenatePath(BUGREPORT_PACKING_DIR, "camera");
-
- if (mkdir(cameraDestDir.c_str(), 0777) == -1) {
- printf("Unable to create folder: %s\n", cameraDestDir.c_str());
- return 0;
- }
-
- // Attach multiple latest sessions (in case the user is running concurrent
- // sessions or starts a new session after the one with performance issues).
- dumpLogs(kCameraLogDir.c_str(), cameraDestDir.c_str(), 10, "session-ended-");
- dumpLogs(kCameraLogDir.c_str(), cameraDestDir.c_str(), 5, "high-drop-rate-");
- dumpLogs(kCameraLogDir.c_str(), cameraDestDir.c_str(), 5, "watchdog-");
- dumpLogs(kCameraLogDir.c_str(), cameraDestDir.c_str(), 5, "camera-ended-");
-
+ if (!::android::base::GetBoolProperty(
+ "vendor.camera.debug.camera_performance_analyzer.attach_to_bugreport",
+ true)) {
return 0;
-}
+ }
+ const std::string cameraDestDir =
+ concatenatePath(BUGREPORT_PACKING_DIR, "camera");
+
+ if (mkdir(cameraDestDir.c_str(), 0777) == -1) {
+ printf("Unable to create folder: %s\n", cameraDestDir.c_str());
+ return 0;
+ }
+
+ // Attach multiple latest sessions (in case the user is running concurrent
+ // sessions or starts a new session after the one with performance issues).
+ dumpLogs(kCameraLogDir.data(), cameraDestDir.c_str(), 10, "session-ended-");
+ dumpLogs(kCameraLogDir.data(), cameraDestDir.c_str(), 5, "high-drop-rate-");
+ dumpLogs(kCameraLogDir.data(), cameraDestDir.c_str(), 5, "watchdog-");
+ dumpLogs(kCameraLogDir.data(), cameraDestDir.c_str(), 5, "camera-ended-");
+ dumpLogs(kGraphStateDumpDir.data(), cameraDestDir.c_str(), 5,
+ "hal_graph_state_");
+
+ return 0;
+}