Path: csiph.com!eternal-september.org!feeder.eternal-september.org!aioe.org!bofh.it!news.nic.it!robomod From: tip-bot for Vitaly Kuznetsov Newsgroups: linux.kernel Subject: [tip:x86/platform] x86/hyperv: Mark the Hyper-V TSC as unstable Date: Fri, 21 Aug 2015 09:50:01 +0200 Message-ID: References: X-Original-To: linux-tip-commits@vger.kernel.org Reply-To: mingo@kernel.org, haiyangz@microsoft.com, tglx@linutronix.de, peterz@infradead.org, hpa@zytor.com, vkuznets@redhat.com, kys@microsoft.com, torvalds@linux-foundation.org, linux-kernel@vger.kernel.org Git-Commit-ID: 88c9281a9fba67636ab26c1fd6afbc78a632374f X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 53 Organization: linux.* mail to news gateway X-Original-Cc: hpa@zytor.com, vkuznets@redhat.com, peterz@infradead.org, tglx@linutronix.de, haiyangz@microsoft.com, mingo@kernel.org, linux-kernel@vger.kernel.org, kys@microsoft.com, torvalds@linux-foundation.org X-Original-Date: Fri, 21 Aug 2015 00:45:50 -0700 X-Original-Message-ID: X-Original-References: <1440003264-9949-1-git-send-email-vkuznets@redhat.com> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1210974 Commit-ID: 88c9281a9fba67636ab26c1fd6afbc78a632374f Gitweb: http://git.kernel.org/tip/88c9281a9fba67636ab26c1fd6afbc78a632374f Author: Vitaly Kuznetsov AuthorDate: Wed, 19 Aug 2015 09:54:24 -0700 Committer: Ingo Molnar CommitDate: Fri, 21 Aug 2015 08:44:38 +0200 x86/hyperv: Mark the Hyper-V TSC as unstable The Hyper-V top-level functional specification states, that "algorithms should be resilient to sudden jumps forward or backward in the TSC value", this means that we should consider TSC as unstable. In some cases tsc tests are able to detect the instability, it was detected in 543 out of 646 boots in my testing: Measured 6277 cycles TSC warp between CPUs, turning off TSC clock. tsc: Marking TSC unstable due to check_tsc_sync_source failed This is, however, just a heuristic. On Hyper-V platform there are two good clocksources: MSR-based hyperv_clocksource and recently introduced TSC page. Signed-off-by: Vitaly Kuznetsov Cc: Haiyang Zhang Cc: K. Y. Srinivasan Cc: Linus Torvalds Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: devel@linuxdriverproject.org Link: http://lkml.kernel.org/r/1440003264-9949-1-git-send-email-vkuznets@redhat.com Signed-off-by: Ingo Molnar --- arch/x86/kernel/cpu/mshyperv.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c index aad4bd8..6fd023d 100644 --- a/arch/x86/kernel/cpu/mshyperv.c +++ b/arch/x86/kernel/cpu/mshyperv.c @@ -141,6 +141,7 @@ static void __init ms_hyperv_init_platform(void) no_timer_check = 1; #endif + mark_tsc_unstable("running on Hyper-V"); } const __refconst struct hypervisor_x86 x86_hyper_ms_hyperv = { -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/