Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'timers-urgent-2025-07-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timer fix from Thomas Gleixner:
"A single fix for the PTP systemcounter mechanism:

The rework of this mechanism added a 'use_nsec' member to struct
system_counterval. get_device_system_crosststamp() instantiates that
struct on the stack and hands a pointer to the driver callback.

Only the drivers which set use_nsec to true, initialize that field,
but all others ignore it. As get_device_system_crosststamp() does not
initialize the struct, the use_nsec field contains random stack
content in those cases. That causes a miscalulation usually resulting
in a failing range check in the best case.

Initialize the structure before handing it to the drivers to cure
that"

* tag 'timers-urgent-2025-07-27' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
timekeeping: Zero initialize system_counterval when querying time from phc drivers

+1 -1
+1 -1
kernel/time/timekeeping.c
··· 1256 1256 struct system_time_snapshot *history_begin, 1257 1257 struct system_device_crosststamp *xtstamp) 1258 1258 { 1259 - struct system_counterval_t system_counterval; 1259 + struct system_counterval_t system_counterval = {}; 1260 1260 struct timekeeper *tk = &tk_core.timekeeper; 1261 1261 u64 cycles, now, interval_start; 1262 1262 unsigned int clock_was_set_seq = 0;