From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 6 May 2016 11:47:19 +0200 (CEST) From: Thomas Gleixner To: Chen Yu cc: x86@kernel.org, linux-kernel@vger.kernel.org, Ingo Molnar , "H. Peter Anvin" , Bin Gao , Len Brown , "Rafael J. Wysocki" , "3 . 14+ # 3 . 14+" Subject: Re: [PATCH] x86, tsc: Fix tsc ratio calibration to avoid broken mdelay In-Reply-To: <1462505619-5516-1-git-send-email-yu.c.chen@intel.com> Message-ID: References: <1462505619-5516-1-git-send-email-yu.c.chen@intel.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: On Fri, 6 May 2016, yu.c.chen@intel.com wrote: > From: Chen Yu > > Currently we fetch the tsc radio by: > ratio = (lo >> 8) & 0x1f; > thus get bit8~bit12 of the MSR_PLATFORM_INFO, however according > to Intel 64 and IA-32 Architectures Software Developer Manual 35.5, > the ratio bit should be bit8~bit15, otherwise we might get incorrect > tsc ratio and cause system hang later(mdelay corrupted). The resulting issue is that both TSC frequency, which is used for udelay, and the lapic timer frequency are wrong. mdelay is just the visible damage caused by that. Thanks, tglx