Merge "bootstat: Report the total bootloader time." am: c724fac054

am: 55a8c380c1

Change-Id: I40bf1848f92491dd7b7ef9ee568f09867b677d63
This commit is contained in:
James Hawkins 2017-02-16 22:43:34 +00:00 committed by android-build-merger
commit d87e0261c4

View file

@ -225,7 +225,12 @@ void RecordInitBootTimeProp(
void RecordBootloaderTimings(BootEventRecordStore* boot_event_store) {
// |ro.boot.boottime| is of the form 'stage1:time1,...,stageN:timeN'.
std::string value = GetProperty("ro.boot.boottime");
if (value.empty()) {
// ro.boot.boottime is not reported on all devices.
return;
}
int32_t total_time = 0;
auto stages = android::base::Split(value, ",");
for (auto const &stageTiming : stages) {
// |stageTiming| is of the form 'stage:time'.
@ -235,10 +240,13 @@ void RecordBootloaderTimings(BootEventRecordStore* boot_event_store) {
std::string stageName = stageTimingValues[0];
int32_t time_ms;
if (android::base::ParseInt(stageTimingValues[1], &time_ms)) {
total_time += time_ms;
boot_event_store->AddBootEventWithValue(
"boottime.bootloader." + stageName, time_ms);
}
}
boot_event_store->AddBootEventWithValue("boottime.bootloader.total", total_time);
}
// Records several metrics related to the time it takes to boot the device,