From bf02f87bcce50e54eb60500cfe35bb966aecd70d Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 30 Jan 2022 13:56:33 +0100 Subject: [PATCH] 4.9-stable patches added patches: powerpc-32-fix-boot-failure-with-gcc-latent-entropy-plugin.patch --- ...ilure-with-gcc-latent-entropy-plugin.patch | 54 +++++++++++++++++++ queue-4.9/series | 1 + 2 files changed, 55 insertions(+) create mode 100644 queue-4.9/powerpc-32-fix-boot-failure-with-gcc-latent-entropy-plugin.patch diff --git a/queue-4.9/powerpc-32-fix-boot-failure-with-gcc-latent-entropy-plugin.patch b/queue-4.9/powerpc-32-fix-boot-failure-with-gcc-latent-entropy-plugin.patch new file mode 100644 index 00000000000..b4a06943de0 --- /dev/null +++ b/queue-4.9/powerpc-32-fix-boot-failure-with-gcc-latent-entropy-plugin.patch @@ -0,0 +1,54 @@ +From bba496656a73fc1d1330b49c7f82843836e9feb1 Mon Sep 17 00:00:00 2001 +From: Christophe Leroy +Date: Wed, 22 Dec 2021 13:07:31 +0000 +Subject: powerpc/32: Fix boot failure with GCC latent entropy plugin + +From: Christophe Leroy + +commit bba496656a73fc1d1330b49c7f82843836e9feb1 upstream. + +Boot fails with GCC latent entropy plugin enabled. + +This is due to early boot functions trying to access 'latent_entropy' +global data while the kernel is not relocated at its final +destination yet. + +As there is no way to tell GCC to use PTRRELOC() to access it, +disable latent entropy plugin in early_32.o and feature-fixups.o and +code-patching.o + +Fixes: 38addce8b600 ("gcc-plugins: Add latent_entropy plugin") +Cc: stable@vger.kernel.org # v4.9+ +Reported-by: Erhard Furtner +Signed-off-by: Christophe Leroy +Signed-off-by: Michael Ellerman +Link: https://bugzilla.kernel.org/show_bug.cgi?id=215217 +Link: https://lore.kernel.org/r/2bac55483b8daf5b1caa163a45fa5f9cdbe18be4.1640178426.git.christophe.leroy@csgroup.eu +Signed-off-by: Greg Kroah-Hartman +--- + arch/powerpc/kernel/Makefile | 1 + + arch/powerpc/lib/Makefile | 3 +++ + 2 files changed, 4 insertions(+) + +--- a/arch/powerpc/kernel/Makefile ++++ b/arch/powerpc/kernel/Makefile +@@ -14,6 +14,7 @@ CFLAGS_prom_init.o += -fPIC + CFLAGS_btext.o += -fPIC + endif + ++CFLAGS_setup_32.o += $(DISABLE_LATENT_ENTROPY_PLUGIN) + CFLAGS_cputable.o += $(DISABLE_LATENT_ENTROPY_PLUGIN) + CFLAGS_prom_init.o += $(DISABLE_LATENT_ENTROPY_PLUGIN) + CFLAGS_btext.o += $(DISABLE_LATENT_ENTROPY_PLUGIN) +--- a/arch/powerpc/lib/Makefile ++++ b/arch/powerpc/lib/Makefile +@@ -9,6 +9,9 @@ ccflags-$(CONFIG_PPC64) := $(NO_MINIMAL_ + CFLAGS_REMOVE_code-patching.o = $(CC_FLAGS_FTRACE) + CFLAGS_REMOVE_feature-fixups.o = $(CC_FLAGS_FTRACE) + ++CFLAGS_code-patching.o += $(DISABLE_LATENT_ENTROPY_PLUGIN) ++CFLAGS_feature-fixups.o += $(DISABLE_LATENT_ENTROPY_PLUGIN) ++ + obj-y += string.o alloc.o crtsavres.o code-patching.o \ + feature-fixups.o + diff --git a/queue-4.9/series b/queue-4.9/series index c339ea57a78..9b2747a14b5 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -11,3 +11,4 @@ tty-add-support-for-brainboxes-uc-cards.patch usb-storage-add-unusual-devs-entry-for-vl817-usb-sata-bridge.patch usb-gadget-f_sourcesink-fix-isoc-transfer-for-usb_speed_super_plus.patch usb-core-fix-hang-in-usb_kill_urb-by-adding-memory-barriers.patch +powerpc-32-fix-boot-failure-with-gcc-latent-entropy-plugin.patch -- 2.47.2