Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: [PATCH 1/1] x86: tsc: avoid system instability in hibernation | Date | Thu, 26 Jul 2018 10:54:06 +0200 |
| |
Hi Eduardo,
On Wednesday, July 25, 2018 8:18:46 PM CEST Eduardo Valentin wrote: > System instability are seen during resume from hibernation when system > is under heavy CPU load. This is due to the lack of update of sched > clock data, and the scheduler would then think that heavy CPU hog > tasks need more time in CPU, causing the system to freeze > during the unfreezing of tasks. For example, threaded irqs, > and kernel processes servicing network interface may be delayed > for several tens of seconds, causing the system to be unreachable. > > Situation like this can be reported by using lockup detectors > such as workqueue lockup detectors: > > Message from syslogd@ip-172-31-67-114 at May 7 18:23:21 ... > kernel:BUG: workqueue lockup - pool cpus=0 node=0 flags=0x0 nice=0 stuck for 57s! > > Message from syslogd@ip-172-31-67-114 at May 7 18:23:21 ... > kernel:BUG: workqueue lockup - pool cpus=1 node=0 flags=0x0 nice=0 stuck for 57s! > > Message from syslogd@ip-172-31-67-114 at May 7 18:23:21 ... > kernel:BUG: workqueue lockup - pool cpus=3 node=0 flags=0x1 nice=0 stuck for 57s! > > Message from syslogd@ip-172-31-67-114 at May 7 18:29:06 ... > kernel:BUG: workqueue lockup - pool cpus=3 node=0 flags=0x1 nice=0 stuck for 403s! > > The fix for this situation is to mark the sched clock as unstable > as early as possible in the resume path, leaving it unstable > for the duration of the resume process. This will force the > scheduler to attempt to align the sched clock across CPUs using > the delta with time of day, updating sched clock data. In a post > hibernation event, we can then mark the sched clock as stable > again, avoiding unnecessary syncs with time of day on systems > in which TSC is reliable. > > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Ingo Molnar <mingo@redhat.com> > Cc: "H. Peter Anvin" <hpa@zytor.com> > Cc: Peter Zijlstra <peterz@infradead.org> > Cc: Dou Liyang <douly.fnst@cn.fujitsu.com> > Cc: Len Brown <len.brown@intel.com> > Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com> > Cc: Eduardo Valentin <eduval@amazon.com> > Cc: "mike.travis@hpe.com" <mike.travis@hpe.com> > Cc: Rajvi Jingar <rajvi.jingar@intel.com> > Cc: Pavel Tatashin <pasha.tatashin@oracle.com> > Cc: Philippe Ombredanne <pombredanne@nexb.com> > Cc: Kate Stewart <kstewart@linuxfoundation.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Cc: x86@kernel.org > Cc: linux-kernel@vger.kernel.org > Signed-off-by: Eduardo Valentin <eduval@amazon.com>
Can you please resend this with a CC to linux-pm?
Cheers, Rafael
| |