Revert: Unify CLOCK_MONOTONIC and CLOCK_BOOTTIME
Revert commits 92af4dcb ("tracing: Unify the "boot" and "mono" tracing clocks") 127bfa5f ("hrtimer: Unify MONOTONIC and BOOTTIME clock behavior") 7250a404 ("posix-timers: Unify MONOTONIC and BOOTTIME clock behavior") d6c7270e ("timekeeping: Remove boot time specific code") f2d6fdbf ("Input: Evdev - unify MONOTONIC and BOOTTIME clock behavior") d6ed449a ("timekeeping: Make the MONOTONIC clock behave like the BOOTTIME clock") 72199320 ("timekeeping: Add the new CLOCK_MONOTONIC_ACTIVE clock") As stated in the pull request for the unification of CLOCK_MONOTONIC and CLOCK_BOOTTIME, it was clear that we might have to revert the change. As reported by several folks systemd and other applications rely on the documented behaviour of CLOCK_MONOTONIC on Linux and break with the above changes. After resume daemons time out and other timeout related issues are observed. Rafael compiled this list: * systemd kills daemons on resume, after >WatchdogSec seconds of suspending (Genki Sky). [Verified that that's because systemd uses CLOCK_MONOTONIC and expects it to not include the suspend time.] * systemd-journald misbehaves after resume: systemd-journald[7266]: File /var/log/journal/016627c3c4784cd4812d4b7e96a34226/system.journal corrupted or uncleanly shut down, renaming and replacing. (Mike Galbraith). * NetworkManager reports "networking disabled" and networking is broken after resume 50% of the time (Pavel). [May be because of systemd.] * MATE desktop dims the display and starts the screensaver right after system resume (Pavel). * Full system hang during resume (me). [May be due to systemd or NM or both.] That happens on debian and open suse systems. It's sad, that these problems were neither catched in -next nor by those folks who expressed interest in this change. Reported-by:Rafael J. Wysocki <rjw@rjwysocki.net> Reported-by:
Genki Sky <sky@genki.is>,> Reported-by:
Pavel Machek <pavel@ucw.cz> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: John Stultz <john.stultz@linaro.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Kevin Easton <kevin@guarana.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mark Salyzyn <salyzyn@android.com> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Petr Mladek <pmladek@suse.com> Cc: Prarit Bhargava <prarit@redhat.com> Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Cc: Steven Rostedt <rostedt@goodmis.org>
Showing
- Documentation/trace/ftrace.rst 11 additions, 3 deletionsDocumentation/trace/ftrace.rst
- drivers/input/evdev.c 6 additions, 1 deletiondrivers/input/evdev.c
- include/linux/hrtimer.h 2 additions, 0 deletionsinclude/linux/hrtimer.h
- include/linux/timekeeper_internal.h 0 additions, 2 deletionsinclude/linux/timekeeper_internal.h
- include/linux/timekeeping.h 25 additions, 12 deletionsinclude/linux/timekeeping.h
- include/uapi/linux/time.h 0 additions, 1 deletioninclude/uapi/linux/time.h
- kernel/time/hrtimer.c 14 additions, 2 deletionskernel/time/hrtimer.c
- kernel/time/posix-stubs.c 0 additions, 2 deletionskernel/time/posix-stubs.c
- kernel/time/posix-timers.c 17 additions, 9 deletionskernel/time/posix-timers.c
- kernel/time/tick-common.c 0 additions, 15 deletionskernel/time/tick-common.c
- kernel/time/tick-internal.h 0 additions, 6 deletionskernel/time/tick-internal.h
- kernel/time/tick-sched.c 0 additions, 9 deletionskernel/time/tick-sched.c
- kernel/time/timekeeping.c 37 additions, 41 deletionskernel/time/timekeeping.c
- kernel/time/timekeeping.h 1 addition, 0 deletionskernel/time/timekeeping.h
- kernel/trace/trace.c 1 addition, 1 deletionkernel/trace/trace.c
Loading
Please register or sign in to comment