[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200114192952.GA26755@dev-dsk-anchalag-2a-9c2d1d96.us-west-2.amazon.com>
Date: Tue, 14 Jan 2020 19:29:52 +0000
From: Anchal Agarwal <anchalag@...zon.com>
To: "Rafael J. Wysocki" <rafael@...nel.org>
CC: Peter Zijlstra <peterz@...radead.org>,
"Singh, Balbir" <sblbir@...zon.com>,
"Valentin, Eduardo" <eduval@...zon.com>,
"boris.ostrovsky@...cle.com" <boris.ostrovsky@...cle.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"Woodhouse, David" <dwmw@...zon.co.uk>,
"vkuznets@...hat.com" <vkuznets@...hat.com>,
"sstabellini@...nel.org" <sstabellini@...nel.org>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"pavel@....cz" <pavel@....cz>, "axboe@...nel.dk" <axboe@...nel.dk>,
"x86@...nel.org" <x86@...nel.org>,
"roger.pau@...rix.com" <roger.pau@...rix.com>,
"hpa@...or.com" <hpa@...or.com>,
"rjw@...ysocki.net" <rjw@...ysocki.net>,
"mingo@...hat.com" <mingo@...hat.com>,
"Kamata, Munehisa" <kamatam@...zon.com>,
"bp@...en8.de" <bp@...en8.de>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"konrad.wilk@...cle.co" <konrad.wilk@...cle.co>,
"len.brown@...el.com" <len.brown@...el.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"fllinden@...ozn.com" <fllinden@...ozn.com>,
"xen-devel@...ts.xenproject.org" <xen-devel@...ts.xenproject.org>,
<anchalag@...zon.com>
Subject: Re: [RFC PATCH V2 11/11] x86: tsc: avoid system instability in
hibernation
On Tue, Jan 14, 2020 at 12:30:02AM +0100, Rafael J. Wysocki wrote:
> On Mon, Jan 13, 2020 at 10:50 PM Rafael J. Wysocki <rafael@...nel.org> wrote:
> >
> > On Mon, Jan 13, 2020 at 1:43 PM Peter Zijlstra <peterz@...radead.org> wrote:
> > >
> > > On Mon, Jan 13, 2020 at 11:43:18AM +0000, Singh, Balbir wrote:
> > > > For your original comment, just wanted to clarify the following:
> > > >
> > > > 1. After hibernation, the machine can be resumed on a different but compatible
> > > > host (these are VM images hibernated)
> > > > 2. This means the clock between host1 and host2 can/will be different
> > > >
> > > > In your comments are you making the assumption that the host(s) is/are the
> > > > same? Just checking the assumptions being made and being on the same page with
> > > > them.
> > >
> > > I would expect this to be the same problem we have as regular suspend,
> > > after power off the TSC will have been reset, so resume will have to
> > > somehow bridge that gap. I've no idea if/how it does that.
> >
> > In general, this is done by timekeeping_resume() and the only special
> > thing done for the TSC appears to be the tsc_verify_tsc_adjust(true)
> > call in tsc_resume().
>
> And I forgot about tsc_restore_sched_clock_state() that gets called
> via restore_processor_state() on x86, before calling
> timekeeping_resume().
>
In this case tsc_verify_tsc_adjust(true) this does nothing as
feature bit X86_FEATURE_TSC_ADJUST is not available to guest.
I am no expert in this area, but could this be messing things up?
Thanks,
Anchal
Powered by blists - more mailing lists