Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754552AbcJEOD4 (ORCPT ); Wed, 5 Oct 2016 10:03:56 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52868 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753488AbcJEODz (ORCPT ); Wed, 5 Oct 2016 10:03:55 -0400 Subject: Re: [PATCH 2/9] x86/fpu: Hard-disable lazy fpu mode To: Rik van Riel , linux-kernel@vger.kernel.org References: <1475627678-20788-1-git-send-email-riel@redhat.com> <1475627678-20788-3-git-send-email-riel@redhat.com> <1475675843.11869.8.camel@redhat.com> Cc: dave.hansen@linux.intel.com, x86@kernel.org, tglx@linutronix.de, mingo@redhat.com, luto@kernel.org, pa@zytor.com, bp@suse.de From: Paolo Bonzini Message-ID: Date: Wed, 5 Oct 2016 16:03:49 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <1475675843.11869.8.camel@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Wed, 05 Oct 2016 14:03:55 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1557 Lines: 40 On 05/10/2016 15:57, Rik van Riel wrote: > On Wed, 2016-10-05 at 09:14 +0200, Paolo Bonzini wrote: >> >> On 05/10/2016 02:34, riel@redhat.com wrote: >>> >>> From: Andy Lutomirski >>> >>> Since commit 58122bf1d856 ("x86/fpu: Default eagerfpu=on on all >>> CPUs") in Linux 4.6, eager FPU mode has been the default on all x86 >>> systems, and no one has reported any regressions. >>> >>> This patch removes the ability to enable lazy mode: use_eager_fpu() >>> becomes "return true" and all of the FPU mode selection machinery >>> is >>> removed. >> >> I haven't quite followed up on my promise to benchmark lazy vs. eager >> FPU, but I probably should do that now... >> >> I see two possible issues with this. First, AMD as far as I know does >> not have XSAVEOPT. Second, when using virtualization, depending on >> how you configure your cluster it's enough to have one pre-SandyBridge >> Intel machine to force no XSAVE on all machines. > > The "OPT" part of XSAVEOPT does not work across the > host/guest boundary, anyway. Yes, but it works for bare metal (and in fact eager FPU was keyed on XSAVEOPT before 58122bf1d856, not XSAVE). I'm not talking about KVM here; I am just saying that the lazy FPU code might be used more than we'd like to, because of AMD machines and of cases where XSAVE is hidden altogether from guests. Of course it is quite unlikely that it be reported as a regression, since things just work. But as far as I know 58122bf1d856 went in without any substantial (or not-so-substantial) benchmarking. Paolo