Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9bcc7697 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "bootstat: remove unused FDE boot events" am: 6e74f8c4 am: 2e13ea6f am: 63d52272

parents b120c01c 63d52272
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -367,8 +367,6 @@ bootstat: Canonical boot reason: ${i}"
  adb logcat -b all ${timestamp} |
  grep bootstat[^e] |
  grep -v -F "bootstat: Service started: /system/bin/bootstat --record_boot_complete${match}
bootstat: Failed to read /data/misc/bootstat/post_decrypt_time_elapsed: No such file or directory
bootstat: Failed to parse boot time record: /data/misc/bootstat/post_decrypt_time_elapsed
bootstat: Service started: /system/bin/bootstat --record_boot_reason
bootstat: Service started: /system/bin/bootstat --set_system_boot_reason
bootstat: Service started: /system/bin/bootstat --record_time_since_factory_reset
@@ -388,7 +386,6 @@ init : processing action (sys.bootstat.first_zygote_start=0 && zygote-start)
init    : processing action (sys.boot_completed=1 && sys.bootstat.first_boot_completed=0) from (/system/etc/init/bootstat.rc
 (/system/bin/bootstat --record_boot_complete --record_boot_reason --record_time_since_factory_reset -l)'
 (/system/bin/bootstat --set_system_boot_reason --record_boot_complete --record_boot_reason --record_time_since_factory_reset -l)'
 (/system/bin/bootstat -r post_decrypt_time_elapsed)'
init    : Command 'exec - system log -- /system/bin/bootstat --record_boot_complete' action=sys.boot_completed=1 && sys.bootstat.first_boot_completed=0 (/system/etc/init/bootstat.rc:
init    : Command 'exec - system log -- /system/bin/bootstat --record_boot_reason' action=sys.boot_completed=1 && sys.bootstat.first_boot_completed=0 (/system/etc/init/bootstat.rc:
init    : Command 'exec - system log -- /system/bin/bootstat --record_time_since_factory_reset' action=sys.boot_completed=1 && sys.bootstat.first_boot_completed=0 (/system/etc/init/bootstat.rc:
+9 −36
Original line number Diff line number Diff line
@@ -67,15 +67,9 @@ const std::unordered_map<std::string_view, AtomInfo> kBootEventToAtomInfo = {
    {"boot_complete",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__BOOT_COMPLETE}},
    {"boot_decryption_complete",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__BOOT_COMPLETE_ENCRYPTION}},
    {"boot_complete_no_encryption",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__BOOT_COMPLETE_NO_ENCRYPTION}},
    {"boot_complete_post_decrypt",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__BOOT_COMPLETE_POST_DECRYPT}},
    {"factory_reset_boot_complete",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__FACTORY_RESET_BOOT_COMPLETE}},
@@ -83,22 +77,12 @@ const std::unordered_map<std::string_view, AtomInfo> kBootEventToAtomInfo = {
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::
          BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__FACTORY_RESET_BOOT_COMPLETE_NO_ENCRYPTION}},
    {"factory_reset_boot_complete_post_decrypt",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::
          BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__FACTORY_RESET_BOOT_COMPLETE_POST_DECRYPT}},
    {"ota_boot_complete",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__OTA_BOOT_COMPLETE}},
    {"ota_boot_complete_no_encryption",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__OTA_BOOT_COMPLETE_NO_ENCRYPTION}},
    {"ota_boot_complete_post_decrypt",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__OTA_BOOT_COMPLETE_POST_DECRYPT}},
    {"post_decrypt_time_elapsed",
     {android::util::BOOT_TIME_EVENT_ELAPSED_TIME_REPORTED,
      android::util::BOOT_TIME_EVENT_ELAPSED_TIME__EVENT__POST_DECRYPT}},
    // DURATION
    {"absolute_boot_time",
     {android::util::BOOT_TIME_EVENT_DURATION_REPORTED,
@@ -1313,8 +1297,7 @@ android::base::boot_clock::duration GetUptime() {
  return android::base::boot_clock::now().time_since_epoch() - GetBootTimeOffset();
}

// Records several metrics related to the time it takes to boot the device,
// including disambiguating boot time on encrypted or non-encrypted devices.
// Records several metrics related to the time it takes to boot the device.
void RecordBootComplete() {
  BootEventRecordStore boot_event_store;
  BootEventRecordStore::BootEventRecord record;
@@ -1341,25 +1324,15 @@ void RecordBootComplete() {
    return;
  }

  // post_decrypt_time_elapsed is only logged on encrypted devices.
  if (boot_event_store.GetBootEvent("post_decrypt_time_elapsed", &record)) {
    // Log the amount of time elapsed until the device is decrypted, which
    // includes the variable amount of time the user takes to enter the
    // decryption password.
    boot_event_store.AddBootEventWithValue("boot_decryption_complete", uptime_s.count());

    // Subtract the decryption time to normalize the boot cycle timing.
    std::chrono::seconds boot_complete = std::chrono::seconds(uptime_s.count() - record.second);
    boot_event_store.AddBootEventWithValue(boot_complete_prefix + "_post_decrypt",
                                           boot_complete.count());
  } else {
  // The *_no_encryption events are emitted unconditionally, since they are left
  // over from a time when encryption meant "full-disk encryption".  But Android
  // now always uses file-based encryption instead of full-disk encryption.  At
  // some point, these misleading and redundant events should be removed.
  boot_event_store.AddBootEventWithValue(boot_complete_prefix + "_no_encryption",
                                         uptime_s.count());
  }

  // Record the total time from device startup to boot complete, regardless of
  // encryption state.
  // Note: we are recording seconds here even though the field in statsd atom specifies
  // Record the total time from device startup to boot complete.  Note: we are
  // recording seconds here even though the field in statsd atom specifies
  // milliseconds.
  boot_event_store.AddBootEventWithValue(boot_complete_prefix, uptime_s.count());

+0 −1
Original line number Diff line number Diff line
@@ -33,7 +33,6 @@ on post-fs-data
    chown system log /data/misc/bootstat/last_boot_time_utc
    chown system log /data/misc/bootstat/ota_boot_complete
    chown system log /data/misc/bootstat/ota_boot_complete_no_encryption
    chown system log /data/misc/bootstat/post_decrypt_time_elapsed
    chown system log /data/misc/bootstat/ro.boottime.init
    chown system log /data/misc/bootstat/ro.boottime.init.cold_boot_wait
    chown system log /data/misc/bootstat/ro.boottime.init.selinux