linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, David Woodhouse <dwmw@amazon.co.uk>,
	Andy Lutomirski <luto@kernel.org>,
	Arjan van de Ven <arjan@linux.intel.com>,
	Borislav Petkov <bp@alien8.de>,
	Dan Williams <dan.j.williams@intel.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	David Woodhouse <dwmw2@infradead.org>,
	Josh Poimboeuf <jpoimboe@redhat.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>
Subject: [PATCH 4.9 56/77] x86/speculation: Clean up various Spectre related details
Date: Wed, 21 Feb 2018 13:49:05 +0100	[thread overview]
Message-ID: <20180221124434.575054820@linuxfoundation.org> (raw)
In-Reply-To: <20180221124432.172390020@linuxfoundation.org>

4.9-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Ingo Molnar <mingo@kernel.org>

commit 21e433bdb95bdf3aa48226fd3d33af608437f293 upstream.

Harmonize all the Spectre messages so that a:

    dmesg | grep -i spectre

... gives us most Spectre related kernel boot messages.

Also fix a few other details:

 - clarify a comment about firmware speculation control

 - s/KPTI/PTI

 - remove various line-breaks that made the code uglier

Acked-by: David Woodhouse <dwmw@amazon.co.uk>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Arjan van de Ven <arjan@linux.intel.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/x86/kernel/cpu/bugs.c |   28 +++++++++++-----------------
 1 file changed, 11 insertions(+), 17 deletions(-)

--- a/arch/x86/kernel/cpu/bugs.c
+++ b/arch/x86/kernel/cpu/bugs.c
@@ -161,8 +161,7 @@ static enum spectre_v2_mitigation_cmd __
 	if (cmdline_find_option_bool(boot_command_line, "nospectre_v2"))
 		return SPECTRE_V2_CMD_NONE;
 	else {
-		ret = cmdline_find_option(boot_command_line, "spectre_v2", arg,
-					  sizeof(arg));
+		ret = cmdline_find_option(boot_command_line, "spectre_v2", arg, sizeof(arg));
 		if (ret < 0)
 			return SPECTRE_V2_CMD_AUTO;
 
@@ -174,8 +173,7 @@ static enum spectre_v2_mitigation_cmd __
 		}
 
 		if (i >= ARRAY_SIZE(mitigation_options)) {
-			pr_err("unknown option (%s). Switching to AUTO select\n",
-			       mitigation_options[i].option);
+			pr_err("unknown option (%s). Switching to AUTO select\n", mitigation_options[i].option);
 			return SPECTRE_V2_CMD_AUTO;
 		}
 	}
@@ -184,8 +182,7 @@ static enum spectre_v2_mitigation_cmd __
 	     cmd == SPECTRE_V2_CMD_RETPOLINE_AMD ||
 	     cmd == SPECTRE_V2_CMD_RETPOLINE_GENERIC) &&
 	    !IS_ENABLED(CONFIG_RETPOLINE)) {
-		pr_err("%s selected but not compiled in. Switching to AUTO select\n",
-		       mitigation_options[i].option);
+		pr_err("%s selected but not compiled in. Switching to AUTO select\n", mitigation_options[i].option);
 		return SPECTRE_V2_CMD_AUTO;
 	}
 
@@ -255,14 +252,14 @@ static void __init spectre_v2_select_mit
 			goto retpoline_auto;
 		break;
 	}
-	pr_err("kernel not compiled with retpoline; no mitigation available!");
+	pr_err("Spectre mitigation: kernel not compiled with retpoline; no mitigation available!");
 	return;
 
 retpoline_auto:
 	if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD) {
 	retpoline_amd:
 		if (!boot_cpu_has(X86_FEATURE_LFENCE_RDTSC)) {
-			pr_err("LFENCE not serializing. Switching to generic retpoline\n");
+			pr_err("Spectre mitigation: LFENCE not serializing, switching to generic retpoline\n");
 			goto retpoline_generic;
 		}
 		mode = retp_compiler() ? SPECTRE_V2_RETPOLINE_AMD :
@@ -280,7 +277,7 @@ retpoline_auto:
 	pr_info("%s\n", spectre_v2_strings[mode]);
 
 	/*
-	 * If neither SMEP or KPTI are available, there is a risk of
+	 * If neither SMEP nor PTI are available, there is a risk of
 	 * hitting userspace addresses in the RSB after a context switch
 	 * from a shallow call stack to a deeper one. To prevent this fill
 	 * the entire RSB, even when using IBRS.
@@ -294,21 +291,20 @@ retpoline_auto:
 	if ((!boot_cpu_has(X86_FEATURE_KAISER) &&
 	     !boot_cpu_has(X86_FEATURE_SMEP)) || is_skylake_era()) {
 		setup_force_cpu_cap(X86_FEATURE_RSB_CTXSW);
-		pr_info("Filling RSB on context switch\n");
+		pr_info("Spectre v2 mitigation: Filling RSB on context switch\n");
 	}
 
 	/* Initialize Indirect Branch Prediction Barrier if supported */
 	if (boot_cpu_has(X86_FEATURE_IBPB)) {
 		setup_force_cpu_cap(X86_FEATURE_USE_IBPB);
-		pr_info("Enabling Indirect Branch Prediction Barrier\n");
+		pr_info("Spectre v2 mitigation: Enabling Indirect Branch Prediction Barrier\n");
 	}
 }
 
 #undef pr_fmt
 
 #ifdef CONFIG_SYSFS
-ssize_t cpu_show_meltdown(struct device *dev,
-			  struct device_attribute *attr, char *buf)
+ssize_t cpu_show_meltdown(struct device *dev, struct device_attribute *attr, char *buf)
 {
 	if (!boot_cpu_has_bug(X86_BUG_CPU_MELTDOWN))
 		return sprintf(buf, "Not affected\n");
@@ -317,16 +313,14 @@ ssize_t cpu_show_meltdown(struct device
 	return sprintf(buf, "Vulnerable\n");
 }
 
-ssize_t cpu_show_spectre_v1(struct device *dev,
-			    struct device_attribute *attr, char *buf)
+ssize_t cpu_show_spectre_v1(struct device *dev, struct device_attribute *attr, char *buf)
 {
 	if (!boot_cpu_has_bug(X86_BUG_SPECTRE_V1))
 		return sprintf(buf, "Not affected\n");
 	return sprintf(buf, "Mitigation: __user pointer sanitization\n");
 }
 
-ssize_t cpu_show_spectre_v2(struct device *dev,
-			    struct device_attribute *attr, char *buf)
+ssize_t cpu_show_spectre_v2(struct device *dev, struct device_attribute *attr, char *buf)
 {
 	if (!boot_cpu_has_bug(X86_BUG_SPECTRE_V2))
 		return sprintf(buf, "Not affected\n");

  parent reply	other threads:[~2018-02-21 12:49 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-21 12:48 [PATCH 4.9 00/77] 4.9.83-stable review Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 01/77] scsi: smartpqi: allow static build ("built-in") Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 02/77] drm/radeon: Add dpm quirk for Jet PRO (v2) Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 03/77] drm/radeon: adjust tested variable Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 04/77] rtc-opal: Fix handling of firmware error codes, prevent busy loops Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 05/77] mbcache: initialize entry->e_referenced in mb_cache_entry_create() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 06/77] jbd2: fix sphinx kernel-doc build warnings Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 07/77] ext4: fix a race in the ext4 shutdown path Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 08/77] ext4: save error to disk in __ext4_grp_locked_error() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 09/77] ext4: correct documentation for grpid mount option Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 10/77] mm: hide a #warning for COMPILE_TEST Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 11/77] mm: Fix memory size alignment in devm_memremap_pages_release() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 12/77] MIPS: Fix typo BIG_ENDIAN to CPU_BIG_ENDIAN Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 13/77] PCI: keystone: Fix interrupt-controller-node lookup Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 14/77] video: fbdev: atmel_lcdfb: fix display-timings lookup Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 15/77] console/dummy: leave .con_font_get set to NULL Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 16/77] rtlwifi: rtl8821ae: Fix connection lost problem correctly Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 17/77] target/iscsi: avoid NULL dereference in CHAP auth error path Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 18/77] Btrfs: fix deadlock in run_delalloc_nocow Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 19/77] Btrfs: fix crash due to not cleaning up tree log blocks dirty bits Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 20/77] Btrfs: fix extent state leak from tree log Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 21/77] Btrfs: fix btrfs_evict_inode to handle abnormal inodes correctly Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 22/77] Btrfs: fix unexpected -EEXIST when creating new inode Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 23/77] 9p/trans_virtio: discard zero-length reply Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 24/77] mtd: nand: vf610: set correct ooblayout Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 25/77] ALSA: hda - Fix headset mic detection problem for two Dell machines Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 26/77] ALSA: usb-audio: Fix UAC2 get_ctl request with a RANGE attribute Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 27/77] ALSA: hda/realtek - Enable Thinkpad Dock device for ALC298 platform Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 28/77] ALSA: hda/realtek: PCI quirk for Fujitsu U7x7 Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 29/77] ALSA: usb-audio: add implicit fb quirk for Behringer UFX1204 Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 30/77] ALSA: seq: Fix racy pool initializations Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 31/77] mvpp2: fix multicast address filter Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 32/77] usb: Move USB_UHCI_BIG_ENDIAN_* out of USB_SUPPORT Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 33/77] dm: correctly handle chained bios in dec_pending() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 34/77] powerpc: fix build errors in stable tree Greg Kroah-Hartman
2018-02-22  1:01   ` Michael Ellerman
2018-02-22  6:57     ` Greg Kroah-Hartman
2018-02-22  9:33     ` Yves-Alexis Perez
2018-02-22 11:08       ` Greg Kroah-Hartman
2018-02-22 12:02         ` Yves-Alexis Perez
2018-02-22 13:59           ` Yves-Alexis Perez
2018-02-22 13:16       ` Michael Ellerman
2018-02-22 13:32         ` Yves-Alexis Perez
2018-02-22 22:31           ` Michael Ellerman
2018-02-21 12:48 ` [PATCH 4.9 35/77] IB/qib: Fix comparison error with qperf compare/swap test Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 36/77] IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH ports Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 37/77] kselftest: fix OOM in memory compaction test Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 38/77] RDMA/rxe: Fix a race condition related to the QP error state Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 39/77] cpufreq: powernv: Dont assume distinct pstate values for nominal and pmin Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 40/77] PM / devfreq: Propagate error from devfreq_add_device() Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 41/77] ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 42/77] s390: fix handling of -1 in set{,fs}[gu]id16 syscalls Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 43/77] arm64: dts: msm8916: Correct ipc references for smsm Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 44/77] ARM: lpc3250: fix uda1380 gpio numbers Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 45/77] ARM: dts: STi: Add gpio polarity for "hdmi,hpd-gpio" property Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 46/77] ARM: dts: nomadik: add interrupt-parent for clcd Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 47/77] arm: spear600: Add missing interrupt-parent of rtc Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 48/77] arm: spear13xx: Fix dmas cells Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 49/77] arm: spear13xx: Fix spics gpio controllers warning Greg Kroah-Hartman
2018-02-21 12:48 ` [PATCH 4.9 50/77] x86/entry/64/compat: Clear registers for compat syscalls, to reduce speculation attack surface Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 51/77] compiler-gcc.h: Introduce __optimize function attribute Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 52/77] x86/speculation: Update Speculation Control microcode blacklist Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 53/77] x86/speculation: Correct Speculation Control microcode blacklist again Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 54/77] KVM/x86: Reduce retpoline performance impact in slot_handle_level_range(), by always inlining iterator helper methods Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 55/77] X86/nVMX: Properly set spec_ctrl and pred_cmd before merging MSRs Greg Kroah-Hartman
2018-02-21 12:49 ` Greg Kroah-Hartman [this message]
2018-02-21 12:49 ` [PATCH 4.9 57/77] selftests/x86/pkeys: Remove unused functions Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 58/77] selftests/x86: Do not rely on "int $0x80" in test_mremap_vdso.c Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 59/77] selftests/x86: Do not rely on "int $0x80" in single_step_syscall.c Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 60/77] x86/speculation: Fix up array_index_nospec_mask() asm constraint Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 61/77] nospec: Move array_index_nospec() parameter checking into separate macro Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 62/77] x86/speculation: Add <asm/msr-index.h> dependency Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 63/77] selftests/x86/mpx: Fix incorrect bounds with old _sigfault Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 64/77] x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 65/77] x86/spectre: Fix an error message Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 66/77] x86/cpu: Change type of x86_cache_size variable to unsigned int Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 67/77] x86: fix build warnign with 32-bit PAE Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 68/77] vfs: dont do RCU lookup of empty pathnames Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 69/77] ARM: dts: exynos: fix RTC interrupt for exynos5410 Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 70/77] ARM: pxa/tosa-bt: add MODULE_LICENSE tag Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 71/77] arm64: dts: msm8916: Add missing #phy-cells Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 72/77] ARM: dts: s5pv210: add interrupt-parent for ohci Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 73/77] arm: dts: mt2701: Add reset-cells Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 74/77] ARM: dts: Delete bogus reference to the charlcd Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 75/77] media: r820t: fix r820t_write_reg for KASAN Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 76/77] mmc: sdhci-of-esdhc: fix eMMC couldnt work after kexec Greg Kroah-Hartman
2018-02-21 12:49 ` [PATCH 4.9 77/77] mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb Greg Kroah-Hartman
2018-02-21 13:21   ` Naresh Kamboju
2018-02-21 13:42     ` Greg Kroah-Hartman
2018-02-21 18:44 ` [PATCH 4.9 00/77] 4.9.83-stable review Dan Rue
2018-02-21 20:14 ` Shuah Khan
2018-02-22 14:12 ` Guenter Roeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180221124434.575054820@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=arjan@linux.intel.com \
    --cc=bp@alien8.de \
    --cc=dan.j.williams@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=dwmw2@infradead.org \
    --cc=dwmw@amazon.co.uk \
    --cc=jpoimboe@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=stable@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).