diff options
author | David Yu <davyu@nvidia.com> | 2014-01-20 15:27:18 +0900 |
---|---|---|
committer | Harry Hong <hhong@nvidia.com> | 2014-01-20 16:52:18 -0800 |
commit | 5c516f04999c8c6a23e42af2ab645f610edae0d0 (patch) | |
tree | 5cbdceb367854d40bd279e6f7103b0c8e879b5f4 /kernel | |
parent | 2c0336c6c590c27f90b8c2a6e32b5687f7098db9 (diff) |
printk: apply timezone in the kernel log time
- fix recursion bug
- show timezone applied log since logcat shows it
Change-Id: If25195ddd729d9897494aaa846525f25df1c872d
Signed-off-by: David Yu <davyu@nvidia.com>
Reviewed-on: http://git-master/r/357582
Reviewed-by: Harry Hong <hhong@nvidia.com>
Tested-by: Harry Hong <hhong@nvidia.com>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/printk.c | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/kernel/printk.c b/kernel/printk.c index b477c9d63a05..3384d363bfae 100644 --- a/kernel/printk.c +++ b/kernel/printk.c @@ -999,27 +999,29 @@ asmlinkage int vprintk(const char *fmt, va_list args) /* Add the current time stamp */ char tbuf[50], *tp; unsigned tlen; - unsigned long long t; - unsigned long nanosec_rem; - struct timespec ts; - struct rtc_time tm; - t = cpu_clock(printk_cpu); - nanosec_rem = do_div(t, 1000000000); + if (system_state == SYSTEM_BOOTING) { + unsigned long long t; + unsigned long nanosec_rem; - if (t < 30) { + t = cpu_clock(printk_cpu); + nanosec_rem = do_div(t, 1000000000); tlen = sprintf(tbuf, "[%5lu.%06lu] ", (unsigned long) t, nanosec_rem / 1000); } else { - getnstimeofday(&ts); - rtc_time_to_tm(ts.tv_sec, &tm); - tlen = sprintf(tbuf, - "[%02d-%02d %02d:%02d:%02d.%03d] ", - tm.tm_mon + 1, - tm.tm_mday, tm.tm_hour, - tm.tm_min, tm.tm_sec, - (int)ts.tv_nsec/1000000); + struct timespec ts; + struct tm tm; + + ts = __current_kernel_time(); + time_to_tm(ts.tv_sec, -sys_tz.tz_minuteswest * 60, &tm); + tlen = sprintf(tbuf, "[%02d-%02d %02d:%02d:%02d.%03lu] ", + tm.tm_mon+1, + tm.tm_mday, + tm.tm_hour, + tm.tm_min, + tm.tm_sec, + (unsigned long) ts.tv_nsec/1000000); } for (tp = tbuf; tp < tbuf + tlen; tp++) |