From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933214AbbLSKUI (ORCPT ); Sat, 19 Dec 2015 05:20:08 -0500 Received: from terminus.zytor.com ([198.137.202.10]:36695 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932557AbbLSKUE (ORCPT ); Sat, 19 Dec 2015 05:20:04 -0500 Date: Sat, 19 Dec 2015 02:19:44 -0800 From: tip-bot for Borislav Petkov Message-ID: Cc: mingo@kernel.org, josh@joshtriplett.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, hpa@zytor.com, bp@suse.de Reply-To: josh@joshtriplett.org, mingo@kernel.org, tglx@linutronix.de, bp@suse.de, hpa@zytor.com, linux-kernel@vger.kernel.org In-Reply-To: <1449481182-27541-5-git-send-email-bp@alien8.de> References: <1449481182-27541-5-git-send-email-bp@alien8.de> To: linux-tip-commits@vger.kernel.org Subject: [tip:x86/cpufeature] x86/cpu: Provide a config option to disable static_cpu_has Git-Commit-ID: a4eb0afca79fd699b33e059f81d204e84f2b6760 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: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: a4eb0afca79fd699b33e059f81d204e84f2b6760 Gitweb: http://git.kernel.org/tip/a4eb0afca79fd699b33e059f81d204e84f2b6760 Author: Borislav Petkov AuthorDate: Mon, 7 Dec 2015 10:39:42 +0100 Committer: Thomas Gleixner CommitDate: Sat, 19 Dec 2015 11:14:01 +0100 x86/cpu: Provide a config option to disable static_cpu_has This brings .text savings of about ~1.6K when building a tinyconfig. It is off by default so nothing changes for the default. Kconfig help text from Josh. Signed-off-by: Borislav Petkov Reviewed-by: Josh Triplett Link: http://lkml.kernel.org/r/1449481182-27541-5-git-send-email-bp@alien8.de Signed-off-by: Thomas Gleixner --- arch/x86/Kconfig | 11 +++++++++++ arch/x86/include/asm/cpufeature.h | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index db3622f..a2abc2f 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -349,6 +349,17 @@ config X86_FEATURE_NAMES If in doubt, say Y. +config X86_FAST_FEATURE_TESTS + bool "Fast CPU feature tests" if EMBEDDED + default y + ---help--- + Some fast-paths in the kernel depend on the capabilities of the CPU. + Say Y here for the kernel to patch in the appropriate code at runtime + based on the capabilities of the CPU. The infrastructure for patching + code at runtime takes up some additional space; space-constrained + embedded systems may wish to say N here to produce smaller, slightly + slower code. + config X86_X2APIC bool "Support x2apic" depends on X86_LOCAL_APIC && X86_64 && (IRQ_REMAP || HYPERVISOR_GUEST) diff --git a/arch/x86/include/asm/cpufeature.h b/arch/x86/include/asm/cpufeature.h index 144b042..43e1444 100644 --- a/arch/x86/include/asm/cpufeature.h +++ b/arch/x86/include/asm/cpufeature.h @@ -409,7 +409,7 @@ extern const char * const x86_bug_flags[NBUGINTS*32]; * fast paths and boot_cpu_has() otherwise! */ -#if __GNUC__ >= 4 +#if __GNUC__ >= 4 && defined(CONFIG_X86_FAST_FEATURE_TESTS) extern void warn_pre_alternatives(void); extern bool __static_cpu_has_safe(u16 bit);