From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rik van Riel Subject: Re: [PATCH v2] sched/cputime: add steal clock warp handling Date: Fri, 03 Jun 2016 09:10:07 -0400 Message-ID: <1464959407.16365.120.camel@redhat.com> References: <1464931288-5886-1-git-send-email-wanpeng.li@hotmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-Wzt6W+CLFflvDd4OdRW7" Cc: Wanpeng Li , Ingo Molnar , "Peter Zijlstra (Intel)" , Thomas Gleixner , Frederic Weisbecker , Paolo Bonzini , Radim To: Wanpeng Li , linux-kernel@vger.kernel.org, kvm@vger.kernel.org Return-path: In-Reply-To: <1464931288-5886-1-git-send-email-wanpeng.li@hotmail.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org --=-Wzt6W+CLFflvDd4OdRW7 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, 2016-06-03 at 13:21 +0800, Wanpeng Li wrote: > From: Wanpeng Li >=20 > I observed that sometimes st is 100% instantaneous, then idle is > 100%=C2=A0 > even if there is a cpu hog on the guest cpu after the cpu hotplug > comes=C2=A0 > back(N.B. this can not always be readily reproduced). I add trace to=C2= =A0 > capture it as below: >=20 > cpuhp/1-12=C2=A0=C2=A0=C2=A0=C2=A0[001] d.h1=C2=A0=C2=A0=C2=A0167.461657:= account_process_tick: steal =3D > 1291385514, prev_steal_time =3D 0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 > cpuhp/1-12=C2=A0=C2=A0=C2=A0=C2=A0[001] d.h1=C2=A0=C2=A0=C2=A0167.461659:= account_process_tick: > steal_jiffies =3D 1291=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 > -0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0[001] d.h1=C2=A0=C2=A0=C2=A0167.462= 663: account_process_tick: steal =3D > 18732255, prev_steal_time =3D 1291000000=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 > -0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0[001] d.h1=C2=A0=C2=A0=C2=A0167.462= 664: account_process_tick: > steal_jiffies =3D 18446744072437 >=20 > The steal clock warp and then steal_jiffies overflow. >=20 > Rik also pointed out to me: > =C2=A0 > >=20 > > I have seen stuff like that with live migration too, in the past=C2=A0 > This patch adds steal clock warp handling by a safe threshold to > only=C2=A0 > apply steal times that are positive and smaller than one second (as=C2=A0 > long as nohz_full has the one second timer tick left), ignoring > intervals=C2=A0 > that are negative or longer than a second, and using those to sync > up=C2=A0 > the guest with the host. >=20 > Cc: Ingo Molnar > Cc: Peter Zijlstra (Intel) > Cc: Rik van Riel > Cc: Thomas Gleixner > Cc: Frederic Weisbecker > Cc: Paolo Bonzini > Cc: Radim > Signed-off-by: Wanpeng Li >=20 Reviewed-by: Rik van Riel --=20 All Rights Reversed. --=-Wzt6W+CLFflvDd4OdRW7 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAABCAAGBQJXUYGwAAoJEM553pKExN6DQKsIAJcBECzYHBNjAG3U7vcPnKQX sZpMOwMcGp6Ya4/Qf+aHGIpsEs2GfOywTdYhm10hRzxehjgo7KD1IbIaY5PMbplM WcJK8imCPlWGZjCHMJHv2EO3Guqevr3UNTW0lA1wW6dTItstSCm4W8kzwp40pgBq p00MP9Ygq+JvSSWy1sLgctdGZlrIiViKesDeIqAt2drtqECdhEnZzyNc0Qfqr2pg 8Ou1tCLxBlp+EPJ7Nw6WUvcCgNlkEXDNf+t4pGVMG7hVeBzLKfGqvDgZEvIeUXXH y1yLw2CkEBqpz1XLaWbztvBmaH3eIqjaFMeHZVxoAMSDnF7rS+KIDDu1gHE88CA= =bI36 -----END PGP SIGNATURE----- --=-Wzt6W+CLFflvDd4OdRW7--