Thread (7 messages) 7 messages, 3 authors, 2016-08-28

Re: [PATCH][RFC v4] timekeeping: ignore the bogus sleep time if pm_trace is enabled

From: Oliver Neukum <oneukum@suse.com>
Date: 2016-08-18 10:41:44
Also in: lkml

On Thu, 2016-08-18 at 18:43 +0800, Chen Yu wrote:
Previously we encountered some memory overflow issues due to
the bogus sleep time brought by inconsistent rtc, which is
triggered when pm_trace is enabled, please refer to:
https://patchwork.kernel.org/patch/9286365/
It's improper in the first place to call __timekeeping_inject_sleeptime()
in case that pm_trace is enabled simply because that "hash" time value
will wreckage the timekeeping subsystem.
Hi,

do you know since when this bug exists?
quoted hunk ↗ jump to hunk
 /**
@@ -1662,6 +1668,12 @@ void timekeeping_resume(void)
 	} else if (timespec64_compare(&ts_new, &timekeeping_suspend_time) > 0) {
 		ts_delta = timespec64_sub(ts_new, timekeeping_suspend_time);
 		sleeptime_injected = true;
+		/*
+		 * If rtc is used as persist clock thus it
+		 * would be bogus when pm_trace is enabled.
+		 */
+		if (!persistent_clock_is_usable())
+			sleeptime_injected = false;
 	}
 
 	if (sleeptime_injected)
How about

sleeptime_injected = persistent_clock_is_usable();

	Regards
		Oliver

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help