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

Commit 69fae7b3 authored by Keun-young Park's avatar Keun-young Park
Browse files

add ro.boottime.init.mount_all.* for measuring mount time

- three properties: .early, .default, .late
- for tracking critical early boot times

bug: 35949600
Test: manual, getprop after boot

Change-Id: I851891518428e6e21cb43a2a6f982ab7db281d4c
parent 4463c820
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
@@ -604,20 +604,27 @@ static int do_mount_all(const std::vector<std::string>& args) {
    int mount_mode = MOUNT_MODE_DEFAULT;
    int mount_mode = MOUNT_MODE_DEFAULT;
    const char* fstabfile = args[1].c_str();
    const char* fstabfile = args[1].c_str();
    std::size_t path_arg_end = args.size();
    std::size_t path_arg_end = args.size();
    const char* prop_post_fix = "default";


    for (na = args.size() - 1; na > 1; --na) {
    for (na = args.size() - 1; na > 1; --na) {
        if (args[na] == "--early") {
        if (args[na] == "--early") {
            path_arg_end = na;
            path_arg_end = na;
            queue_event = false;
            queue_event = false;
            mount_mode = MOUNT_MODE_EARLY;
            mount_mode = MOUNT_MODE_EARLY;
            prop_post_fix = "early";
        } else if (args[na] == "--late") {
        } else if (args[na] == "--late") {
            path_arg_end = na;
            path_arg_end = na;
            import_rc = false;
            import_rc = false;
            mount_mode = MOUNT_MODE_LATE;
            mount_mode = MOUNT_MODE_LATE;
            prop_post_fix = "late";
        }
        }
    }
    }


    std::string prop_name = android::base::StringPrintf("ro.boottime.init.mount_all.%s",
                                                        prop_post_fix);
    Timer t;
    int ret =  mount_fstab(fstabfile, mount_mode);
    int ret =  mount_fstab(fstabfile, mount_mode);
    property_set(prop_name.c_str(), std::to_string(t.duration_ms()).c_str());


    if (import_rc) {
    if (import_rc) {
        /* Paths of .rc files are specified at the 2nd argument and beyond */
        /* Paths of .rc files are specified at the 2nd argument and beyond */