init のログが心許ない!何が実行されているのかイマイチ分からない!
何とかしましょう。
$ANDROID_SRC/system/core/init$ diff -u init.h.orig init.h
--- init.h.orig 2010-12-26 14:25:41.821284874 +0900
+++ init.h 2010-12-26 14:26:02.398613084 +0900
@@ -37,7 +37,7 @@
#define INFO(x...) log_write(6, "<6>init: " x)
#define LOG_DEFAULT_LEVEL 3 /* messages <= this level are logged */
-#define LOG_UEVENTS 0 /* log uevent messages if 1. verbose */
+#define LOG_UEVENTS 1 /* log uevent messages if 1. verbose */
unsigned int decode_uid(const char *s);
一文字変えるだけ!以上。
もしかしたら、init.rcで指定できるかもですが、調べるのが面倒なのでソース修正を行った。
(2010/12/28 01:34追記)
2.3.1_r1はデフォルトで LOG_UEVENTS が 1 でした。
そして、init.rc のloglevelは
loglevel 5
とかすると良いかもです。
$ANDROID_SRC/system/core/init/util.c はこんな感じで文字列パーサーも atoi() を使ってたので大きい数字でも良いはず!
void log_write(int level, const char *fmt, ...)
{
char buf[LOG_BUF_MAX];
va_list ap;
if (level > log_level) return;
でも、コマンド名と戻り値しか分からない。。。。
もっと詳しく出せないか?
後で解析します…。。。。
コメント
最終更新:2010年12月28日 01:35