Messages in this thread | | | Subject | Re: [PATCH 3/3 v11] printk: Add monotonic, boottime, and realtime timestamps | From | Mark Salyzyn <> | Date | Wed, 13 Sep 2017 11:30:51 -0700 |
| |
On 09/05/2017 05:06 AM, Prarit Bhargava wrote: > 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. > > 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. > > 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. > > v7: Add default case to printk_set_timestamp() and add PRINTK_TIME_DEBUG > for users that want to set timestamp to different values during runtime. > Add jstultz' Kconfig to avoid defconfig churn. > > v8: Add CONFIG_PRINTK_TIME_DEBUG to allow timestamp runtime switching. > Rename PRINTK_TIME_DISABLE to PRINTK_TIME_DISABLED. Rename > printk_set_timestamp() to printk_set_ts_func(). Separate > printk_set_ts_func() and printk_get_first_ts() portions. Rename param > functions. Adjust configs, enum, and timestamp_sources_str to be 0-4. > Add mention realtime clock is UTC in Documentation. > > v9: Fix typo. Add __ktime_get_real_fast_ns_unsafe(). > > v10: Remove time parameter restrictions. > Ack and unit tested on Backport to 4.9.
(you are missing the v11 respin comment, NBD)
-- Mark
| |