Received: by 2002:ac0:e34a:0:0:0:0:0 with SMTP id g10csp481261imn; Wed, 27 Jul 2022 11:24:25 -0700 (PDT) X-Google-Smtp-Source: AGRyM1tuiJI2lomJH85L7ZuQrf2AEjya2q/rmuGNwhRghIlPa8RNgvuTNMrcJjbCY/uKG/vYMcdd X-Received: by 2002:a17:90a:1048:b0:1f3:e9b:2ab4 with SMTP id y8-20020a17090a104800b001f30e9b2ab4mr3839104pjd.106.1658946265114; Wed, 27 Jul 2022 11:24:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658946265; cv=none; d=google.com; s=arc-20160816; b=aam1+VNOqLxrXRk+JwHqPpqj7YLYQUszfT7EldAPpy2KsEly3njT2MAIXyNhYx29wv hQEo0W3WjWs/4OJhJXSf0hQLJ5PPK/A1+CJuSsrTGlnM+WODgLErtyMR9VhMMpnVQcaS U9/nQOxqIfy6hIlmVpZW3/kY660eICTmtxrlRfUsEoKnMh17z1c598X+Sp+K0YmlAHVQ yU0czm5Syr/2+aGLvzl0QB7PNwZAEQji4REriteNZmGfSJ2TinU1018AVSJTbO74S0nE rVSm/95j4jLneFlDYLIsbvrz/Bz+bTYAihlGZo+YiLw3NYtUYV2tQ2uzowyHmfkBKqD2 Yy0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=sLkIaSDnuqbDaFVhuWPNVkpa/ePVQoq2G1Jh4g2zZxQ=; b=KISA9l56rLC390T8UlqA7/k9ouqpYgLq3Lh3WSjIF8Eh7xpUs3NFEkI9wm1q0AGi5q CmiSweSwW0lzIJBscMbaf0UkNdyoyBU46XqKEsMHxJCXcqINZItcD/h/92y6fwu8I1Xi atAvbivpLhOh09BvqkgB21C3dNjRQ+nu6Hak4lAqnZxi2BjNIKPid3PUy+UOtkpcJzK+ FetAmFyxDFMSABzjtvm+oQZe3UdbcLprV/KKK5d6OyRwMoE3FYQKR+b3PX7NPMi4eMh7 pqJ18MS9ts5C5Mu+Y+AlqydplAdSZOXMLxOWg2ecsQU48Ly+VXoclR1siSB60m3o7u3P XsRA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=op31ULRH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cp18-20020a056a00349200b0050dd86727b8si19602326pfb.349.2022.07.27.11.24.10; Wed, 27 Jul 2022 11:24:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=op31ULRH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S241093AbiG0Qzq (ORCPT + 99 others); Wed, 27 Jul 2022 12:55:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42670 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241090AbiG0QyT (ORCPT ); Wed, 27 Jul 2022 12:54:19 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E3B38550A5; Wed, 27 Jul 2022 09:35:30 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1FBCC61A3F; Wed, 27 Jul 2022 16:35:30 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1D90FC433C1; Wed, 27 Jul 2022 16:35:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1658939729; bh=0Jadx+C+a0mw1bHyeJzABIsob/Z/w1uORvsOwJChtE4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=op31ULRHTz29ivwFoE5NSwxou32c3c6nvdy3bfUj6iDs0NCBvVBEfoDK2+GxC3CB7 sl20hZS5DHVcRxSXGEKbNYH5q4ZXs2dthZgrntjHrwR8mRV/9JWsZ69/z6YI3Q+ga9 EUIdOQTIKhiyT6xucxEDIIzuxI1GiY+wlG4AErqY= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Pawan Gupta , "Peter Zijlstra (Intel)" , Thadeu Lima de Souza Cascardo Subject: [PATCH 5.10 082/105] x86/bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts Date: Wed, 27 Jul 2022 18:11:08 +0200 Message-Id: <20220727161015.389362802@linuxfoundation.org> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20220727161012.056867467@linuxfoundation.org> References: <20220727161012.056867467@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.7 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Pawan Gupta commit eb23b5ef9131e6d65011de349a4d25ef1b3d4314 upstream. IBRS mitigation for spectre_v2 forces write to MSR_IA32_SPEC_CTRL at every kernel entry/exit. On Enhanced IBRS parts setting MSR_IA32_SPEC_CTRL[IBRS] only once at boot is sufficient. MSR writes at every kernel entry/exit incur unnecessary performance loss. When Enhanced IBRS feature is present, print a warning about this unnecessary performance loss. Signed-off-by: Pawan Gupta Signed-off-by: Peter Zijlstra (Intel) Reviewed-by: Thadeu Lima de Souza Cascardo Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/2a5eaf54583c2bfe0edc4fea64006656256cca17.1657814857.git.pawan.kumar.gupta@linux.intel.com Signed-off-by: Greg Kroah-Hartman --- arch/x86/kernel/cpu/bugs.c | 3 +++ 1 file changed, 3 insertions(+) --- a/arch/x86/kernel/cpu/bugs.c +++ b/arch/x86/kernel/cpu/bugs.c @@ -931,6 +931,7 @@ static inline const char *spectre_v2_mod #define SPECTRE_V2_LFENCE_MSG "WARNING: LFENCE mitigation is not recommended for this CPU, data leaks possible!\n" #define SPECTRE_V2_EIBRS_EBPF_MSG "WARNING: Unprivileged eBPF is enabled with eIBRS on, data leaks possible via Spectre v2 BHB attacks!\n" #define SPECTRE_V2_EIBRS_LFENCE_EBPF_SMT_MSG "WARNING: Unprivileged eBPF is enabled with eIBRS+LFENCE mitigation and SMT, data leaks possible via Spectre v2 BHB attacks!\n" +#define SPECTRE_V2_IBRS_PERF_MSG "WARNING: IBRS mitigation selected on Enhanced IBRS CPU, this may cause unnecessary performance loss\n" #ifdef CONFIG_BPF_SYSCALL void unpriv_ebpf_notify(int new_state) @@ -1371,6 +1372,8 @@ static void __init spectre_v2_select_mit case SPECTRE_V2_IBRS: setup_force_cpu_cap(X86_FEATURE_KERNEL_IBRS); + if (boot_cpu_has(X86_FEATURE_IBRS_ENHANCED)) + pr_warn(SPECTRE_V2_IBRS_PERF_MSG); break; case SPECTRE_V2_LFENCE: