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

Skip to content
Snippets Groups Projects
Commit 48402951 authored by Elliott Hughes's avatar Elliott Hughes Committed by Gerrit Code Review
Browse files

Merge "Clarify a few things about bootcharts."

parents 8f03e3cb 59abac27
Branches
Tags
No related merge requests found
...@@ -195,13 +195,8 @@ static int bootchart_init() { ...@@ -195,13 +195,8 @@ static int bootchart_init() {
} }
// Create kernel process accounting file. // Create kernel process accounting file.
{ close(open(LOG_ACCT, O_WRONLY | O_CREAT | O_TRUNC | O_CLOEXEC, 0644));
int fd = open( LOG_ACCT, O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC,0644); acct(LOG_ACCT);
if (fd >= 0) {
close(fd);
acct( LOG_ACCT );
}
}
log_header(); log_header();
return count; return count;
...@@ -210,11 +205,12 @@ static int bootchart_init() { ...@@ -210,11 +205,12 @@ static int bootchart_init() {
int do_bootchart_init(int nargs, char** args) { int do_bootchart_init(int nargs, char** args) {
g_remaining_samples = bootchart_init(); g_remaining_samples = bootchart_init();
if (g_remaining_samples < 0) { if (g_remaining_samples < 0) {
ERROR("bootcharting init failure: %s\n", strerror(errno)); ERROR("Bootcharting init failure: %s\n", strerror(errno));
} else if (g_remaining_samples > 0) { } else if (g_remaining_samples > 0) {
NOTICE("bootcharting started (will run for %d ms)\n", g_remaining_samples*BOOTCHART_POLLING_MS); NOTICE("Bootcharting started (will run for %d s).\n",
(g_remaining_samples * BOOTCHART_POLLING_MS) / 1000);
} else { } else {
NOTICE("bootcharting ignored\n"); NOTICE("Not bootcharting.\n");
} }
return 0; return 0;
} }
......
...@@ -323,12 +323,11 @@ init.svc.<name> ...@@ -323,12 +323,11 @@ init.svc.<name>
Bootcharting Bootcharting
------------ ------------
This version of init contains code to perform "bootcharting": generating log This version of init contains code to perform "bootcharting": generating log
files that can be later processed by the tools provided by www.bootchart.org. files that can be later processed by the tools provided by www.bootchart.org.
On the emulator, use the new -bootchart <timeout> option to boot with On the emulator, use the -bootchart <timeout> option to boot with bootcharting
bootcharting activated for <timeout> seconds. activated for <timeout> seconds.
On a device, create /data/bootchart/start with a command like the following: On a device, create /data/bootchart/start with a command like the following:
...@@ -349,9 +348,13 @@ retrieve them and create a bootchart.tgz file that can be used with the ...@@ -349,9 +348,13 @@ retrieve them and create a bootchart.tgz file that can be used with the
bootchart command-line utility: bootchart command-line utility:
sudo apt-get install pybootchartgui sudo apt-get install pybootchartgui
ANDROID_SERIAL=<device serial number> # grab-bootchart.sh uses $ANDROID_SERIAL.
$ANDROID_BUILD_TOP/system/core/init/grab-bootchart.sh $ANDROID_BUILD_TOP/system/core/init/grab-bootchart.sh
One thing to watch for is that the bootchart will show init as if it started
running at 0s. You'll have to look at dmesg to work out when the kernel
actually started init.
Debugging init Debugging init
-------------- --------------
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment