printk: Add new timestamps
Subsystems (32)
v6 cover printk: Add new timestamps
printk.time=1/CONFIG_PRINTK_TIME=1 adds a unmodified local hardware clock timestamp to printk messages. The local hardware clock loses time each day making it difficult to determine exactly when an issue has occurred in the kernel log, and making it difficult to determine how kernel and hardware issues relate to each other in real time.
Add monotonic, boottime, and real clock timestamps in addition to the existing local hardware clock timestamp.
Prarit Bhargava (2):
time: Make fast functions return 0 before timekeeping is initialized
printk: Add monotonic, boottime, and realtime timestamps
Documentation/admin-guide/kernel-parameters.txt | 6 +- arch/arm/configs/aspeed_g4_defconfig | 2 +- arch/arm/configs/aspeed_g5_defconfig | 2 +- arch/arm/configs/axm55xx_defconfig | 2 +- arch/arm/configs/bcm2835_defconfig | 2 +- arch/arm/configs/colibri_pxa270_defconfig | 2 +- arch/arm/configs/colibri_pxa300_defconfig | 2 +- arch/arm/configs/dove_defconfig | 2 +- arch/arm/configs/efm32_defconfig | 2 +- arch/arm/configs/exynos_defconfig | 2 +- arch/arm/configs/ezx_defconfig | 2 +- arch/arm/configs/h5000_defconfig | 2 +- arch/arm/configs/hisi_defconfig | 2 +- arch/arm/configs/imote2_defconfig | 2 +- arch/arm/configs/imx_v6_v7_defconfig | 2 +- arch/arm/configs/keystone_defconfig | 2 +- arch/arm/configs/lpc18xx_defconfig | 2 +- arch/arm/configs/magician_defconfig | 2 +- arch/arm/configs/mmp2_defconfig | 2 +- arch/arm/configs/moxart_defconfig | 2 +- arch/arm/configs/mps2_defconfig | 2 +- arch/arm/configs/multi_v7_defconfig | 2 +- arch/arm/configs/mvebu_v7_defconfig | 2 +- arch/arm/configs/mxs_defconfig | 2 +- arch/arm/configs/omap2plus_defconfig | 2 +- arch/arm/configs/pxa168_defconfig | 2 +- arch/arm/configs/pxa3xx_defconfig | 2 +- arch/arm/configs/pxa910_defconfig | 2 +- arch/arm/configs/pxa_defconfig | 2 +- arch/arm/configs/qcom_defconfig | 2 +- arch/arm/configs/raumfeld_defconfig | 2 +- arch/arm/configs/shmobile_defconfig | 2 +- arch/arm/configs/socfpga_defconfig | 2 +- arch/arm/configs/stm32_defconfig | 2 +- arch/arm/configs/sunxi_defconfig | 2 +- arch/arm/configs/tango4_defconfig | 2 +- arch/arm/configs/tegra_defconfig | 2 +- arch/arm/configs/u300_defconfig | 2 +- arch/arm/configs/u8500_defconfig | 2 +- arch/arm/configs/vt8500_v6_v7_defconfig | 2 +- arch/arm/configs/xcep_defconfig | 2 +- arch/arm/configs/zx_defconfig | 2 +- arch/arm64/configs/defconfig | 2 +- arch/m68k/configs/amcore_defconfig | 2 +- arch/mips/configs/ath25_defconfig | 2 +- arch/mips/configs/bcm47xx_defconfig | 2 +- arch/mips/configs/bmips_be_defconfig | 2 +- arch/mips/configs/bmips_stb_defconfig | 2 +- arch/mips/configs/ci20_defconfig | 2 +- arch/mips/configs/generic_defconfig | 2 +- arch/mips/configs/lemote2f_defconfig | 2 +- arch/mips/configs/loongson3_defconfig | 2 +- arch/mips/configs/nlm_xlp_defconfig | 2 +- arch/mips/configs/nlm_xlr_defconfig | 2 +- arch/mips/configs/pistachio_defconfig | 2 +- arch/mips/configs/qi_lb60_defconfig | 2 +- arch/mips/configs/rt305x_defconfig | 2 +- arch/mips/configs/xway_defconfig | 2 +- arch/parisc/configs/generic-64bit_defconfig | 2 +- arch/powerpc/configs/40x/virtex_defconfig | 2 +- arch/powerpc/configs/44x/fsp2_defconfig | 2 +- arch/powerpc/configs/44x/virtex5_defconfig | 2 +- arch/powerpc/configs/44x/warp_defconfig | 2 +- arch/powerpc/configs/52xx/cm5200_defconfig | 2 +- arch/powerpc/configs/52xx/lite5200b_defconfig | 2 +- arch/powerpc/configs/52xx/motionpro_defconfig | 2 +- arch/powerpc/configs/52xx/tqm5200_defconfig | 2 +- arch/powerpc/configs/gamecube_defconfig | 2 +- arch/powerpc/configs/mpc5200_defconfig | 2 +- arch/powerpc/configs/pasemi_defconfig | 2 +- arch/powerpc/configs/wii_defconfig | 2 +- arch/s390/configs/default_defconfig | 2 +- arch/s390/configs/gcov_defconfig | 2 +- arch/s390/configs/performance_defconfig | 2 +- arch/s390/configs/zfcpdump_defconfig | 2 +- arch/sh/configs/edosk7760_defconfig | 2 +- arch/sh/configs/sdk7786_defconfig | 2 +- arch/sh/configs/se7722_defconfig | 2 +- arch/sh/configs/sh7785lcr_32bit_defconfig | 2 +- arch/sh/configs/urquell_defconfig | 2 +- arch/sparc/configs/sparc64_defconfig | 2 +- arch/x86/configs/i386_defconfig | 2 +- arch/x86/configs/x86_64_defconfig | 2 +- arch/xtensa/configs/audio_kc705_defconfig | 2 +- arch/xtensa/configs/cadence_csp_defconfig | 2 +- arch/xtensa/configs/generic_kc705_defconfig | 2 +- arch/xtensa/configs/nommu_kc705_defconfig | 2 +- arch/xtensa/configs/smp_lx200_defconfig | 2 +- include/linux/timekeeping.h | 1 + kernel/printk/printk.c | 147 ++++++++++++++++++++- kernel/time/timekeeping.c | 46 +++++-- lib/Kconfig.debug | 54 +++++++- .../selftests/rcutorture/configs/lock/CFcommon | 2 +- .../selftests/rcutorture/configs/rcu/CFcommon | 2 +- .../selftests/rcutorture/configs/rcuperf/CFcommon | 2 +- 95 files changed, 320 insertions(+), 114 deletions(-)
Signature · 1 line
1.8.5.5
PATCH v6 1/2 time: Make fast functions return 0 before timekeeping is initialized
printk timestamps will be extended to include mono and boot time by using the fast timekeeping functions ktime_get_mono|boot_fast_ns() functions. The functions can return garbage before timekeeping is initialized resulting in garbage timestamps.
The fast time functions must return 0 before timekeeping is initialized.
v6: Separate these changes out into their own patch.
--- kernel/time/timekeeping.c | 47 +++++++++++++++++++++++++++++++++-------------- 1 file changed, 33 insertions(+), 14 deletions(-)
kernel/time/timekeeping.c +33 -14
@@ -60,8 +60,39 @@ struct tk_fast {struct tk_read_base base[2 ]; }; -static struct tk_fast tk_fast_mono____cacheline_aligned ; -static struct tk_fast tk_fast_raw____cacheline_aligned ; +/* Suspend-time cycles value for halted fast timekeeper. */ +static u64 cycles_at_suspend; + +static u64 dummy_clock_read (struct clocksource *cs) +{ +return cycles_at_suspend; +} + +static struct clocksource dummy_clock = { + .read = dummy_clock_read, +}; + +static struct tk_fast tk_fast_mono____cacheline_aligned = { + .base = { + (struct tk_read_base ){ + .clock = &dummy_clock, + }, + (struct tk_read_base ){ + .clock = &dummy_clock, + }, + }, +}; + +static struct tk_fast tk_fast_raw____cacheline_aligned = { + .base = { + (struct tk_read_base ){ + .clock = &dummy_clock, + }, + (struct tk_read_base ){ + .clock = &dummy_clock, + }, + }, +};/* flag for if timekeeping is suspended */ int __read_mostly timekeeping_suspended;
@@ -477,18 +508,6 @@ u64 notrace ktime_get_boot_fast_ns(void) }EXPORT_SYMBOL_GPL (ktime_get_boot_fast_ns); -/* Suspend-time cycles value for halted fast timekeeper. */ -static u64 cycles_at_suspend; - -static u64 dummy_clock_read (struct clocksource *cs) -{ -return cycles_at_suspend; -} - -static struct clocksource dummy_clock = { - .read = dummy_clock_read, -}; -/** * halt_fast_timekeeper - Prevent fast timekeeper from accessing clocksource. * @tk: Timekeeper to snapshot.
Signature · 1 line
1.8.5.5
Re: [PATCH 1/2 v6] time: Make fast functions return 0 before timekeeping is initialized
Quoted 7 lines · Prarit Bhargava
printk timestamps will be extended to include mono and boot time by using the fast timekeeping functions ktime_get_mono|boot_fast_ns() functions. The functions can return garbage before timekeeping is initialized resulting in garbage timestamps.
The fast time functions must return 0 before timekeeping is initialized.
This looks reasonable. I can queue it, but you still have feedback to address on 2/2, so I may wait until that is sorted.
thanks
-john
PATCH v6 2/2 printk: Add monotonic, boottime, and realtime timestamps
In reply to Prarit Bhargavaprintk.time=1/CONFIG_PRINTK_TIME=1 adds a unmodified local hardware clock timestamp to printk messages. The local hardware clock loses time each day making it difficult to determine exactly when an issue has occurred in the kernel log, and making it difficult to determine how kernel and hardware issues relate to each other in real time.
Make printk output different timestamps by adding options for no timestamp, the local hardware clock, the monotonic clock, the boottime clock, and the real clock. Allow a user to pick one of the clocks by using the printk.time kernel parameter. Output the type of clock in /sys/module/printk/parameters/time so userspace programs can interpret the timestamp.
Real clock & 32-bit systems: Selecting the real clock printk timestamp may lead to unlikely situations where a timestamp is wrong because the real time without the protection of a sequence lock when printk_get_ts() is set printk_get_real_ns().
v2: Use peterz's suggested Kconfig options. Merge patchset together. Fix i386 !CONFIG_PRINTK builds.
v3: Fixed x86_64_defconfig. Added printk_time_type enum and printk_time_str for better output. Added BOOTTIME clock functionality.
v4: Fix messages, add additional printk.time options, and fix configs.
v5: Renaming of structures, and allow printk_time_set() to evaluate substrings of entries (eg: allow 'r', 'real', 'realtime'). From peterz, make fast functions return 0 until timekeeping is initialized (removes timekeeping_active & ktime_get_boot|real_log_ts() suggested by
tglx and adds ktime_get_real_offset()). Switch to a function pointer
for printk_get_ts() and reference fast functions. Make timestamp_sources enum match choice options for CONFIG_PRINTK_TIME (adds PRINTK_TIME_UNDEFINED).
v6: Define PRINTK_TIME_UNDEFINED for !CONFIG_PRINTK builds. Separate timekeeping changes into separate patch. Minor include file cleanup.
--- Documentation/admin-guide/kernel-parameters.txt | 6 +- arch/arm/configs/aspeed_g4_defconfig | 2 +- arch/arm/configs/aspeed_g5_defconfig | 2 +- arch/arm/configs/axm55xx_defconfig | 2 +- arch/arm/configs/bcm2835_defconfig | 2 +- arch/arm/configs/colibri_pxa270_defconfig | 2 +- arch/arm/configs/colibri_pxa300_defconfig | 2 +- arch/arm/configs/dove_defconfig | 2 +- arch/arm/configs/efm32_defconfig | 2 +- arch/arm/configs/exynos_defconfig | 2 +- arch/arm/configs/ezx_defconfig | 2 +- arch/arm/configs/h5000_defconfig | 2 +- arch/arm/configs/hisi_defconfig | 2 +- arch/arm/configs/imote2_defconfig | 2 +- arch/arm/configs/imx_v6_v7_defconfig | 2 +- arch/arm/configs/keystone_defconfig | 2 +- arch/arm/configs/lpc18xx_defconfig | 2 +- arch/arm/configs/magician_defconfig | 2 +- arch/arm/configs/mmp2_defconfig | 2 +- arch/arm/configs/moxart_defconfig | 2 +- arch/arm/configs/mps2_defconfig | 2 +- arch/arm/configs/multi_v7_defconfig | 2 +- arch/arm/configs/mvebu_v7_defconfig | 2 +- arch/arm/configs/mxs_defconfig | 2 +- arch/arm/configs/omap2plus_defconfig | 2 +- arch/arm/configs/pxa168_defconfig | 2 +- arch/arm/configs/pxa3xx_defconfig | 2 +- arch/arm/configs/pxa910_defconfig | 2 +- arch/arm/configs/pxa_defconfig | 2 +- arch/arm/configs/qcom_defconfig | 2 +- arch/arm/configs/raumfeld_defconfig | 2 +- arch/arm/configs/shmobile_defconfig | 2 +- arch/arm/configs/socfpga_defconfig | 2 +- arch/arm/configs/stm32_defconfig | 2 +- arch/arm/configs/sunxi_defconfig | 2 +- arch/arm/configs/tango4_defconfig | 2 +- arch/arm/configs/tegra_defconfig | 2 +- arch/arm/configs/u300_defconfig | 2 +- arch/arm/configs/u8500_defconfig | 2 +- arch/arm/configs/vt8500_v6_v7_defconfig | 2 +- arch/arm/configs/xcep_defconfig | 2 +- arch/arm/configs/zx_defconfig | 2 +- arch/arm64/configs/defconfig | 2 +- arch/m68k/configs/amcore_defconfig | 2 +- arch/mips/configs/ath25_defconfig | 2 +- arch/mips/configs/bcm47xx_defconfig | 2 +- arch/mips/configs/bmips_be_defconfig | 2 +- arch/mips/configs/bmips_stb_defconfig | 2 +- arch/mips/configs/ci20_defconfig | 2 +- arch/mips/configs/generic_defconfig | 2 +- arch/mips/configs/lemote2f_defconfig | 2 +- arch/mips/configs/loongson3_defconfig | 2 +- arch/mips/configs/nlm_xlp_defconfig | 2 +- arch/mips/configs/nlm_xlr_defconfig | 2 +- arch/mips/configs/pistachio_defconfig | 2 +- arch/mips/configs/qi_lb60_defconfig | 2 +- arch/mips/configs/rt305x_defconfig | 2 +- arch/mips/configs/xway_defconfig | 2 +- arch/parisc/configs/generic-64bit_defconfig | 2 +- arch/powerpc/configs/40x/virtex_defconfig | 2 +- arch/powerpc/configs/44x/fsp2_defconfig | 2 +- arch/powerpc/configs/44x/virtex5_defconfig | 2 +- arch/powerpc/configs/44x/warp_defconfig | 2 +- arch/powerpc/configs/52xx/cm5200_defconfig | 2 +- arch/powerpc/configs/52xx/lite5200b_defconfig | 2 +- arch/powerpc/configs/52xx/motionpro_defconfig | 2 +- arch/powerpc/configs/52xx/tqm5200_defconfig | 2 +- arch/powerpc/configs/gamecube_defconfig | 2 +- arch/powerpc/configs/mpc5200_defconfig | 2 +- arch/powerpc/configs/pasemi_defconfig | 2 +- arch/powerpc/configs/wii_defconfig | 2 +- arch/s390/configs/default_defconfig | 2 +- arch/s390/configs/gcov_defconfig | 2 +- arch/s390/configs/performance_defconfig | 2 +- arch/s390/configs/zfcpdump_defconfig | 2 +- arch/sh/configs/edosk7760_defconfig | 2 +- arch/sh/configs/sdk7786_defconfig | 2 +- arch/sh/configs/se7722_defconfig | 2 +- arch/sh/configs/sh7785lcr_32bit_defconfig | 2 +- arch/sh/configs/urquell_defconfig | 2 +- arch/sparc/configs/sparc64_defconfig | 2 +- arch/x86/configs/i386_defconfig | 2 +- arch/x86/configs/x86_64_defconfig | 2 +- arch/xtensa/configs/audio_kc705_defconfig | 2 +- arch/xtensa/configs/cadence_csp_defconfig | 2 +- arch/xtensa/configs/generic_kc705_defconfig | 2 +- arch/xtensa/configs/nommu_kc705_defconfig | 2 +- arch/xtensa/configs/smp_lx200_defconfig | 2 +- include/linux/timekeeping.h | 1 + kernel/printk/printk.c | 147 ++++++++++++++++++++- kernel/time/timekeeping.c | 5 + lib/Kconfig.debug | 54 +++++++- .../selftests/rcutorture/configs/lock/CFcommon | 2 +- .../selftests/rcutorture/configs/rcu/CFcommon | 2 +- .../selftests/rcutorture/configs/rcuperf/CFcommon | 2 +- 95 files changed, 290 insertions(+), 103 deletions(-)
Documentation/admin-guide/kernel-parameters.txt +4 -2
@@ -3188,8 +3188,10 @@ ratelimit - ratelimit the logging Default: ratelimit - printk.time= Show timing data prefixed to each printk message line - Format: <bool> (1/Y/y=enable, 0/N/n=disable) + printk.time= Show timestamp prefixed to each printk message line + Format: <string> + (0/N/n/disable, 1/Y/y/local, + b/boot, m/monotonic, r/realtime) processor.max_cstate= [HW,ACPI] Limit processor to maximum C-state
arch/arm/configs/aspeed_g4_defconfig +1 -1
@@ -162,7 +162,7 @@ CONFIG_JFFS2_FS_XATTR=y CONFIG_UBIFS_FS=y CONFIG_SQUASHFS=y CONFIG_SQUASHFS_XZ=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_FS=y
arch/arm/configs/aspeed_g5_defconfig +1 -1
@@ -165,7 +165,7 @@ CONFIG_JFFS2_FS_XATTR=y CONFIG_UBIFS_FS=y CONFIG_SQUASHFS=y CONFIG_SQUASHFS_XZ=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_FS=y
arch/arm/configs/axm55xx_defconfig +1 -1
@@ -231,7 +231,7 @@ CONFIG_NFS_FSCACHE=y CONFIG_SUNRPC_DEBUG=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y
arch/arm/configs/bcm2835_defconfig +1 -1
@@ -141,7 +141,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_BOOT_PRINTK_DELAY=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y
arch/arm/configs/colibri_pxa270_defconfig +1 -1
@@ -144,7 +144,7 @@ CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_FS=y CONFIG_DEBUG_KERNEL=y
arch/arm/configs/colibri_pxa300_defconfig +1 -1
@@ -51,7 +51,7 @@ CONFIG_EXT3_FS=y CONFIG_NFS_FS=y CONFIG_NFS_V3=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_USER=y
arch/arm/configs/dove_defconfig +1 -1
@@ -118,7 +118,7 @@ CONFIG_NLS_CODEPAGE_850=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_2=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_FS=y # CONFIG_SCHED_DEBUG is not set
arch/arm/configs/efm32_defconfig +1 -1
@@ -92,7 +92,7 @@ CONFIG_EXT2_FS=y CONFIG_ROMFS_FS=y CONFIG_ROMFS_BACKED_BY_MTD=y # CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set
arch/arm/configs/exynos_defconfig +1 -1
@@ -253,7 +253,7 @@ CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y
arch/arm/configs/ezx_defconfig +1 -1
@@ -363,7 +363,7 @@ CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_DEBUG_KERNEL=y # CONFIG_SCHED_DEBUG is not set
arch/arm/configs/h5000_defconfig +1 -1
@@ -61,7 +61,7 @@ CONFIG_TMPFS=y CONFIG_JFFS2_FS=y CONFIG_JFFS2_COMPRESSION_OPTIONS=y # CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_KERNEL=y # CONFIG_SCHED_DEBUG is not set # CONFIG_DEBUG_BUGVERBOSE is not set
arch/arm/configs/hisi_defconfig +1 -1
@@ -82,7 +82,7 @@ CONFIG_NFS_FS=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y
arch/arm/configs/imote2_defconfig +1 -1
@@ -336,7 +336,7 @@ CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_DEBUG_KERNEL=y # CONFIG_SCHED_DEBUG is not set
arch/arm/configs/imx_v6_v7_defconfig +1 -1
@@ -382,7 +382,7 @@ CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y # CONFIG_SCHED_DEBUG is not set
arch/arm/configs/keystone_defconfig +1 -1
@@ -200,7 +200,7 @@ CONFIG_NFSD_V3=y CONFIG_NFSD_V3_ACL=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_SHIRQ=y CONFIG_DEBUG_USER=y
arch/arm/configs/lpc18xx_defconfig +1 -1
@@ -160,7 +160,7 @@ CONFIG_EXT2_FS=y # CONFIG_INOTIFY_USER is not set CONFIG_JFFS2_FS=y # CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set
arch/arm/configs/magician_defconfig +1 -1
@@ -154,7 +154,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_1251=m CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_KERNEL=y # CONFIG_SCHED_DEBUG is not set CONFIG_TIMER_STATS=y
arch/arm/configs/mmp2_defconfig +1 -1
@@ -74,7 +74,7 @@ CONFIG_NFS_V3=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_FS=y CONFIG_DEBUG_KERNEL=y
arch/arm/configs/moxart_defconfig +1 -1
@@ -123,7 +123,7 @@ CONFIG_EXT3_FS=y CONFIG_TMPFS=y CONFIG_CONFIGFS_FS=y CONFIG_JFFS2_FS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set
arch/arm/configs/mps2_defconfig +1 -1
@@ -98,7 +98,7 @@ CONFIG_NFS_V4_1=y CONFIG_NFS_V4_2=y CONFIG_ROOT_NFS=y CONFIG_NLS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set
arch/arm/configs/multi_v7_defconfig +1 -1
@@ -929,7 +929,7 @@ CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y CONFIG_LOCKUP_DETECTOR=y
arch/arm/configs/mvebu_v7_defconfig +1 -1
@@ -152,7 +152,7 @@ CONFIG_NLS_CODEPAGE_850=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_2=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y
arch/arm/configs/mxs_defconfig +1 -1
@@ -167,7 +167,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_850=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_15=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_FRAME_WARN=2048 CONFIG_UNUSED_SYMBOLS=y
arch/arm/configs/omap2plus_defconfig +1 -1
@@ -493,7 +493,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO_SPLIT=y CONFIG_DEBUG_INFO_DWARF4=y
arch/arm/configs/pxa168_defconfig +1 -1
@@ -50,7 +50,7 @@ CONFIG_NFS_V3=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y # CONFIG_DEBUG_PREEMPT is not set
arch/arm/configs/pxa3xx_defconfig +1 -1
@@ -109,7 +109,7 @@ CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_SHIRQ=y
arch/arm/configs/pxa910_defconfig +1 -1
@@ -58,7 +58,7 @@ CONFIG_NFS_V3=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y # CONFIG_DEBUG_PREEMPT is not set
arch/arm/configs/pxa_defconfig +1 -1
@@ -727,7 +727,7 @@ CONFIG_NLS_ASCII=m CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_FRAME_WARN=0
arch/arm/configs/qcom_defconfig +1 -1
@@ -231,7 +231,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y
arch/arm/configs/raumfeld_defconfig +1 -1
@@ -187,7 +187,7 @@ CONFIG_NLS_ISO8859_15=y CONFIG_NLS_KOI8_R=y CONFIG_NLS_KOI8_U=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_USER=y
arch/arm/configs/shmobile_defconfig +1 -1
@@ -218,7 +218,7 @@ CONFIG_NFS_V4_1=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set # CONFIG_ARM_UNWIND is not set
arch/arm/configs/socfpga_defconfig +1 -1
@@ -155,7 +155,7 @@ CONFIG_NFSD_V3_ACL=y CONFIG_NFSD_V4=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y CONFIG_DETECT_HUNG_TASK=y
arch/arm/configs/stm32_defconfig +1 -1
@@ -74,7 +74,7 @@ CONFIG_STM32_ADC=y # CONFIG_DNOTIFY is not set # CONFIG_INOTIFY_USER is not set CONFIG_NLS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set
arch/arm/configs/sunxi_defconfig +1 -1
@@ -151,6 +151,6 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_CRYPTO_DEV_SUN4I_SS=y
arch/arm/configs/tango4_defconfig +1 -1
@@ -90,5 +90,5 @@ CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=m CONFIG_NLS_ISO8859_1=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_CRYPTO_ECHAINIV is not set
arch/arm/configs/tegra_defconfig +1 -1
@@ -286,7 +286,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y
arch/arm/configs/u300_defconfig +1 -1
@@ -62,7 +62,7 @@ CONFIG_VFAT_FS=y CONFIG_TMPFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y # CONFIG_SCHED_DEBUG is not set
arch/arm/configs/u8500_defconfig +1 -1
@@ -127,7 +127,7 @@ CONFIG_NFS_FS=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y
arch/arm/configs/vt8500_v6_v7_defconfig +1 -1
@@ -84,6 +84,6 @@ CONFIG_NFS_FS=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_KERNEL=y CONFIG_LOCKUP_DETECTOR=y
arch/arm/configs/xcep_defconfig +1 -1
@@ -79,7 +79,7 @@ CONFIG_NFS_V3=y CONFIG_NLS=m CONFIG_NLS_DEFAULT="utf8" CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_KERNEL=y # CONFIG_SCHED_DEBUG is not set
arch/arm/configs/zx_defconfig +1 -1
@@ -95,7 +95,7 @@ CONFIG_TMPFS_POSIX_ACL=y CONFIG_NLS_CODEPAGE_936=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_INFO=y
arch/arm64/configs/defconfig +1 -1
@@ -549,7 +549,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_VIRTUALIZATION=y CONFIG_KVM=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y
arch/m68k/configs/amcore_defconfig +1 -1
@@ -107,7 +107,7 @@ CONFIG_JFFS2_FS=y CONFIG_ROMFS_FS=y CONFIG_ROMFS_BACKED_BY_BOTH=y # CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set # CONFIG_SECTION_MISMATCH_WARN_ONLY is not set
arch/mips/configs/ath25_defconfig +1 -1
@@ -105,7 +105,7 @@ CONFIG_SQUASHFS_FILE_DIRECT=y CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y # CONFIG_SQUASHFS_ZLIB is not set CONFIG_SQUASHFS_XZ=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_FS=y
arch/mips/configs/bcm47xx_defconfig +1 -1
@@ -74,7 +74,7 @@ CONFIG_USB_HCD_BCMA=y CONFIG_USB_HCD_SSB=y CONFIG_LEDS_TRIGGER_TIMER=y CONFIG_LEDS_TRIGGER_DEFAULT_ON=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO_REDUCED=y CONFIG_STRIP_ASM_SYMS=y
arch/mips/configs/bmips_be_defconfig +1 -1
@@ -32,7 +32,7 @@ CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y # CONFIG_STANDALONE is not set # CONFIG_PREVENT_FIRMWARE_BUILD is not set -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_BRCMSTB_GISB_ARB=y CONFIG_MTD=y CONFIG_MTD_BCM63XX_PARTS=y
arch/mips/configs/bmips_stb_defconfig +1 -1
@@ -85,7 +85,7 @@ CONFIG_CIFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y CONFIG_CMDLINE_BOOL=y
arch/mips/configs/ci20_defconfig +1 -1
@@ -147,7 +147,7 @@ CONFIG_NLS_ISO8859_15=y CONFIG_NLS_KOI8_R=y CONFIG_NLS_KOI8_U=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_FS=y
arch/mips/configs/generic_defconfig +1 -1
@@ -83,7 +83,7 @@ CONFIG_NFS_V4=y CONFIG_NFS_V4_1=y CONFIG_NFS_V4_2=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO_REDUCED=y CONFIG_DEBUG_FS=y
arch/mips/configs/lemote2f_defconfig +1 -1
@@ -394,7 +394,7 @@ CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_FRAME_WARN=1024 CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_FS=y
arch/mips/configs/loongson3_defconfig +1 -1
@@ -327,7 +327,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_936=y CONFIG_NLS_ASCII=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_FRAME_WARN=1024 CONFIG_STRIP_ASM_SYMS=y CONFIG_MAGIC_SYSRQ=y
arch/mips/configs/nlm_xlp_defconfig +1 -1
@@ -549,7 +549,7 @@ CONFIG_NLS_ISO8859_14=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_FRAME_WARN=1024
arch/mips/configs/nlm_xlr_defconfig +1 -1
@@ -506,7 +506,7 @@ CONFIG_NLS_ISO8859_14=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_UNUSED_SYMBOLS=y
arch/mips/configs/pistachio_defconfig +1 -1
@@ -297,7 +297,7 @@ CONFIG_NLS_DEFAULT="utf8" CONFIG_NLS_CODEPAGE_437=m CONFIG_NLS_ASCII=m CONFIG_NLS_ISO8859_1=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0
arch/mips/configs/qi_lb60_defconfig +1 -1
@@ -170,7 +170,7 @@ CONFIG_NLS_ISO8859_15=y CONFIG_NLS_KOI8_R=y CONFIG_NLS_KOI8_U=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_STRIP_ASM_SYMS=y CONFIG_READABLE_ASM=y
arch/mips/configs/rt305x_defconfig +1 -1
@@ -143,7 +143,7 @@ CONFIG_JFFS2_COMPRESSION_OPTIONS=y CONFIG_SQUASHFS=y # CONFIG_SQUASHFS_ZLIB is not set CONFIG_SQUASHFS_XZ=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y CONFIG_STRIP_ASM_SYMS=y
arch/mips/configs/xway_defconfig +1 -1
@@ -151,7 +151,7 @@ CONFIG_JFFS2_COMPRESSION_OPTIONS=y CONFIG_SQUASHFS=y # CONFIG_SQUASHFS_ZLIB is not set CONFIG_SQUASHFS_XZ=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_STRIP_ASM_SYMS=y CONFIG_DEBUG_FS=y
arch/parisc/configs/generic-64bit_defconfig +1 -1
@@ -272,7 +272,7 @@ CONFIG_NLS_ASCII=m CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_2=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_STRIP_ASM_SYMS=y CONFIG_UNUSED_SYMBOLS=y CONFIG_DEBUG_FS=y
arch/powerpc/configs/40x/virtex_defconfig +1 -1
@@ -71,7 +71,7 @@ CONFIG_CRC_CCITT=y CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_KERNEL=y # CONFIG_CRYPTO_ANSI_CPRNG is not set
arch/powerpc/configs/44x/fsp2_defconfig +1 -1
@@ -111,7 +111,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_DEFAULT="n" CONFIG_XZ_DEC=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MESSAGE_LOGLEVEL_DEFAULT=3 CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y
arch/powerpc/configs/44x/virtex5_defconfig +1 -1
@@ -70,7 +70,7 @@ CONFIG_CRC_CCITT=y CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_KERNEL=y # CONFIG_CRYPTO_ANSI_CPRNG is not set
arch/powerpc/configs/44x/warp_defconfig +1 -1
@@ -90,7 +90,7 @@ CONFIG_NLS_ISO8859_15=y CONFIG_NLS_UTF8=y CONFIG_CRC_CCITT=y CONFIG_CRC_T10DIF=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y
arch/powerpc/configs/52xx/cm5200_defconfig +1 -1
@@ -72,7 +72,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DETECT_HUNG_TASK=y # CONFIG_DEBUG_BUGVERBOSE is not set CONFIG_CRYPTO_ECB=y
arch/powerpc/configs/52xx/lite5200b_defconfig +1 -1
@@ -58,7 +58,7 @@ CONFIG_TMPFS=y CONFIG_NFS_FS=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DETECT_HUNG_TASK=y # CONFIG_DEBUG_BUGVERBOSE is not set
arch/powerpc/configs/52xx/motionpro_defconfig +1 -1
@@ -84,7 +84,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DETECT_HUNG_TASK=y # CONFIG_DEBUG_BUGVERBOSE is not set
arch/powerpc/configs/52xx/tqm5200_defconfig +1 -1
@@ -86,7 +86,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DETECT_HUNG_TASK=y # CONFIG_DEBUG_BUGVERBOSE is not set
arch/powerpc/configs/gamecube_defconfig +1 -1
@@ -89,7 +89,7 @@ CONFIG_CIFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_CRC_CCITT=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_SPINLOCK=y CONFIG_DEBUG_MUTEXES=y CONFIG_LATENCYTOP=y
arch/powerpc/configs/mpc5200_defconfig +1 -1
@@ -126,7 +126,7 @@ CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_KERNEL=y CONFIG_DETECT_HUNG_TASK=y
arch/powerpc/configs/pasemi_defconfig +1 -1
@@ -166,7 +166,7 @@ CONFIG_NFSD_V4=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_CRC_CCITT=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_FS=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y
arch/powerpc/configs/wii_defconfig +1 -1
@@ -110,7 +110,7 @@ CONFIG_CIFS=m CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_CRC_CCITT=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_SPINLOCK=y CONFIG_DEBUG_MUTEXES=y
arch/s390/configs/default_defconfig +1 -1
@@ -564,7 +564,7 @@ CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=m CONFIG_DLM=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO_DWARF4=y
arch/s390/configs/gcov_defconfig +1 -1
@@ -558,7 +558,7 @@ CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=m CONFIG_DLM=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO_DWARF4=y CONFIG_GDB_SCRIPTS=y
arch/s390/configs/performance_defconfig +1 -1
@@ -556,7 +556,7 @@ CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=m CONFIG_DLM=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_INFO_DWARF4=y CONFIG_GDB_SCRIPTS=y
arch/s390/configs/zfcpdump_defconfig +1 -1
@@ -57,7 +57,7 @@ CONFIG_RAW_DRIVER=y CONFIG_CONFIGFS_FS=y # CONFIG_MISC_FILESYSTEMS is not set # CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_KERNEL=y CONFIG_PANIC_ON_OOPS=y
arch/sh/configs/edosk7760_defconfig +1 -1
@@ -109,7 +109,7 @@ CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_15=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y CONFIG_UNUSED_SYMBOLS=y
arch/sh/configs/sdk7786_defconfig +1 -1
@@ -215,7 +215,7 @@ CONFIG_NLS_ASCII=m CONFIG_NLS_ISO8859_1=y CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y
arch/sh/configs/se7722_defconfig +1 -1
@@ -53,7 +53,7 @@ CONFIG_EXT3_FS=y CONFIG_PROC_KCORE=y CONFIG_TMPFS=y CONFIG_HUGETLBFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_FS=y
arch/sh/configs/sh7785lcr_32bit_defconfig +1 -1
@@ -144,7 +144,7 @@ CONFIG_NFSD_V3=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_932=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y
arch/sh/configs/urquell_defconfig +1 -1
@@ -142,7 +142,7 @@ CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_CODEPAGE_932=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENABLE_MUST_CHECK is not set CONFIG_DEBUG_FS=y
arch/sparc/configs/sparc64_defconfig +1 -1
@@ -200,7 +200,7 @@ CONFIG_EXT3_FS_SECURITY=y CONFIG_PROC_KCORE=y CONFIG_TMPFS=y CONFIG_HUGETLBFS=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_KERNEL=y
arch/x86/configs/i386_defconfig +1 -1
@@ -284,7 +284,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set CONFIG_FRAME_WARN=1024 CONFIG_MAGIC_SYSRQ=y
arch/x86/configs/x86_64_defconfig +1 -1
@@ -283,7 +283,7 @@ CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y CONFIG_NLS_ISO8859_1=y CONFIG_NLS_UTF8=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y # CONFIG_ENABLE_WARN_DEPRECATED is not set CONFIG_MAGIC_SYSRQ=y # CONFIG_UNUSED_SYMBOLS is not set
arch/xtensa/configs/audio_kc705_defconfig +1 -1
@@ -123,7 +123,7 @@ CONFIG_ROOT_NFS=y CONFIG_SUNRPC_DEBUG=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y
arch/xtensa/configs/cadence_csp_defconfig +1 -1
@@ -102,7 +102,7 @@ CONFIG_ROOT_NFS=y CONFIG_SUNRPC_DEBUG=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y
arch/xtensa/configs/generic_kc705_defconfig +1 -1
@@ -110,7 +110,7 @@ CONFIG_ROOT_NFS=y CONFIG_SUNRPC_DEBUG=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y
arch/xtensa/configs/nommu_kc705_defconfig +1 -1
@@ -107,7 +107,7 @@ CONFIG_ROOT_NFS=y CONFIG_SUNRPC_DEBUG=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y # CONFIG_FRAME_POINTER is not set
arch/xtensa/configs/smp_lx200_defconfig +1 -1
@@ -114,7 +114,7 @@ CONFIG_ROOT_NFS=y CONFIG_SUNRPC_DEBUG=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y CONFIG_DYNAMIC_DEBUG=y CONFIG_DEBUG_INFO=y CONFIG_MAGIC_SYSRQ=y
include/linux/timekeeping.h +1 -0
@@ -239,6 +239,7 @@ static inline u64 ktime_get_raw_ns(void)extern u64 ktime_get_mono_fast_ns (void );extern u64 ktime_get_raw_fast_ns (void );extern u64 ktime_get_boot_fast_ns (void ); +extern u64 ktime_get_real_offset (void );/* * Timespec interfaces utilizing the ktime based ones
kernel/printk/printk.c +142 -5
188 lines not on this page · raw message
kernel/time/timekeeping.c +5 -0
@@ -508,6 +508,11 @@ u64 notrace ktime_get_boot_fast_ns(void) }EXPORT_SYMBOL_GPL (ktime_get_boot_fast_ns); +u64 ktime_get_real_offset (void ) +{ +return ktime_to_ns (tk_core.timekeeper.offs_real); +} +/** * halt_fast_timekeeper - Prevent fast timekeeper from accessing clocksource. * @tk: Timekeeper to snapshot.
lib/Kconfig.debug +48 -6
67 lines not on this page · raw message
tools/testing/selftests/rcutorture/configs/lock/CFcommon +1 -1
@@ -1,2 +1,2 @@ CONFIG_LOCK_TORTURE_TEST=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y
tools/testing/selftests/rcutorture/configs/rcu/CFcommon +1 -1
@@ -1,2 +1,2 @@ CONFIG_RCU_TORTURE_TEST=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y
tools/testing/selftests/rcutorture/configs/rcuperf/CFcommon +1 -1
@@ -1,2 +1,2 @@ CONFIG_RCU_PERF_TEST=y -CONFIG_PRINTK_TIME=y +CONFIG_PRINTK_TIME_LOCAL=y
Signature · 1 line
1.8.5.5
Re: [PATCH 2/2 v6] printk: Add monotonic, boottime, and realtime timestamps
Quoted 58 lines · Prarit Bhargava
. . .
kernel/printk/printk.c +4
-1@@ -576,6 +576,9 @@ static u32 truncate_msg(u16 *text_len, u16 *trunc_msg_len,return msg_used_size (*text_len + *trunc_msg_len,0 , pad_len); } +static u64 printk_set_timestamp (void ); +static u64 (*printk_get_ts)(void ) = printk_set_timestamp; +/* insert record into the buffer, discard old ones, update heads */ static int log_store(int facility, int level, enum log_flags flags, u64 ts_nsec,@@ -624,7 +627,7 @@ static int log_store(int facility, int level,if (ts_nsec >0 ) msg->ts_nsec = ts_nsec;else - msg->ts_nsec =local_clock (); + msg->ts_nsec =printk_get_ts ();memset (log_dict (msg) + dict_len,0 , pad_len); msg->len = size;. . .
kernel/printk/printk.c +33
-0+/** +* enum timestamp_sources - Timestamp sources for printk() messages. +* @PRINTK_TIME_UNDEFINED: Timestamp undefined. This option is not selectable +* from the configs, and is used as a reference in the code. +* @PRINTK_TIME_DISABLE: No time stamp. +* @PRINTK_TIME_LOCAL: Local hardware clock timestamp. +* @PRINTK_TIME_BOOT: Boottime clock timestamp. +* @PRINTK_TIME_MONO: Monotonic clock timestamp. +* @PRINTK_TIME_REAL: Realtime clock timestamp. On 32-bit +* systems selecting the real clock printk timestamp may lead to unlikely +* situations where a timestamp is wrong because the real time offset is read +* without the protection of a sequence lock when printk_get_ts() is set to +* printk_get_real_ns(). +*/ +enum timestamp_sources { +PRINTK_TIME_UNDEFINED =0 , +PRINTK_TIME_DISABLE =1 , +PRINTK_TIME_LOCAL =2 , +PRINTK_TIME_BOOT =3 , +PRINTK_TIME_MONO =4 , +PRINTK_TIME_REAL =5 , +}; +. . . + +static u64 printk_set_timestamp (void ) +{ +switch (printk_time) { +case PRINTK_TIME_LOCAL : +case PRINTK_TIME_DISABLE : + printk_get_ts = local_clock; +break ; +case PRINTK_TIME_BOOT : + printk_get_ts = ktime_get_boot_fast_ns;
kernel/printk/printk.c static inline void boot_delay_msec(int level) · line 1272
Quoted 10 lines
kernel/printk/printk.c +10
-0+break ; +case PRINTK_TIME_MONO : + printk_get_ts = ktime_get_mono_fast_ns; +break ; +case PRINTK_TIME_REAL : + printk_get_ts = printk_get_real_ns; +break ; + } +return printk_get_ts (); +}
I am really nervous about the default case, despite PRINTK_TIME_UNDEFINED being declared impossible. Either set printk_get_ts to local_clock for default: (which I prefer), or return (printk_get_ts != printk_set_timestamp) ? printk_get_ts() : 0; (which at least prevents the infinite loop).
Quoted 27 lines
kernel/printk/printk.c +27
-0+ +static int printk_time_set (const char *val,const struct kernel_param *kp) +{ +char *param =strstrip ((char *)val); +int _printk_time =PRINTK_TIME_UNDEFINED ; +int ts; + +if (strlen (param) ==1 ) { +/* Preserve legacy boolean settings */ +if ((param[0 ] =='0' ) || (param[0 ] =='n' ) || + (param[0 ] =='N' )) + _printk_time =PRINTK_TIME_DISABLE ; +if ((param[0 ] =='1' ) || (param[0 ] =='y' ) || + (param[0 ] =='Y' )) + _printk_time =PRINTK_TIME_LOCAL ; + } +if (_printk_time ==PRINTK_TIME_UNDEFINED ) { +for (ts =0 ; ts <ARRAY_SIZE (timestamp_sources_str); ts++) { +if (!strncmp (timestamp_sources_str[ts], param, +strlen (param))) { + _printk_time = ts; +break ; + } + } + } +if (_printk_time ==PRINTK_TIME_UNDEFINED ) { +pr_warn ("printk: invalid timestamp option %s\n" , param);
kernel/printk/printk.c static inline void boot_delay_msec(int level) · line 1309
Quoted 10 lines
kernel/printk/printk.c +10
-0+return -EINVAL ; + } + +/* +* Only allow enabling and disabling of the current printk_time +* setting. Changing it from one setting to another confuses +* userspace. +*/ +if (printk_time_source ==PRINTK_TIME_UNDEFINED ) + printk_time_source = _printk_time;
(I've asked this before) Could we add something like #ifndef PRINTK_TIME_DEBUG around the following to allow the option to chose for those that like to 'play' with the value?
kernel/printk/printk.c static inline void boot_delay_msec(int level) · line 1316
Quoted 7 lines
kernel/printk/printk.c +7
-0+else if ((printk_time_source != _printk_time) && + (_printk_time !=PRINTK_TIME_DISABLE )) { +pr_warn ("printk: timestamp can only be set to 0, disabled, or %s\n" , + timestamp_sources_str[printk_time_source]); +return -EINVAL ; + } +
-- Mark
Re: [PATCH 2/2 v6] printk: Add monotonic, boottime, and realtime timestamps
In reply to Prarit BhargavaQuoted 34 lines
lib/Kconfig.debug +27
-0@@ -1,19 +1,61 @@ menu "printk and dmesg options" +choice + prompt "printk default clock timestamp" + +config PRINTK_TIME_DISABLE + bool "Disabled" + help + Selecting this option disables the time stamps of printk(). + +config PRINTK_TIME_LOCAL + bool "Local Clock" + help + Selecting this option causes the time stamps of printk() to be + stamped with the unadjusted hardware clock. + +config PRINTK_TIME_BOOT + bool "CLOCK_BOOTTIME" + help + Selecting this option causes the time stamps of printk() to be + stamped with the adjusted boottime clock. + +config PRINTK_TIME_MONO + bool "CLOCK_MONOTONIC" + help + Selecting this option causes the time stamps of printk() to be + stamped with the adjusted monotonic clock. + +config PRINTK_TIME_REAL
lib/Kconfig.debug line 38
Quoted 10 lines
lib/Kconfig.debug +8
-1+ bool "CLOCK_REALTIME" + help + Selecting this option causes the time stamps of printk() to be + stamped with the adjusted realtime clock. + +endchoice + config PRINTK_TIME - bool "Show timing information on printks" + int "Show timestamp information on printks"
You need to drop the prompt on this, as it ends up with this insane setup where you chose from the choice list, but then you can go and set the PRINTK_TIME manually to something else?
So PRINTK_TIME_REAL can be y, but PRINTK_TIME can be 2... Yuck.
I'm still annoyed enough with this Kconfig/defconfig noise in the patch that I'm going to take my own shot at it ( hopefully there's a better way, but likely it will help me understand why it was done this way :).
thanks
-john