aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2019-03-16 13:45:17 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2019-03-16 13:45:17 -0400
commita9c55d58bc36b5a0ef7021772fc2508e693ed534 (patch)
tree0426fc075a8aa7534a2f4ffaaeb0a06010fbfff1
parent924973508bf15f2cabbbef7b5c428131fbbd812b (diff)
parentde3c83c2fd2b87cf68214eda76dfa66989d78cb6 (diff)
Merge tag 'powerpc-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
Pull powerpc fixes from Michael Ellerman: "One fix to prevent runtime allocation of 16GB pages when running in a VM (as opposed to bare metal), because it doesn't work. A small fix to our recently added KCOV support to exempt some more code from being instrumented. Plus a few minor build fixes, a small dead code removal and a defconfig update. Thanks to: Alexey Kardashevskiy, Aneesh Kumar K.V, Christophe Leroy, Jason Yan, Joel Stanley, Mahesh Salgaonkar, Mathieu Malaterre" * tag 'powerpc-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: powerpc/64s: Include <asm/nmi.h> header file to fix a warning powerpc/powernv: Fix compile without CONFIG_TRACEPOINTS powerpc/mm: Disable kcov for SLB routines powerpc: remove dead code in head_fsl_booke.S powerpc/configs: Sync skiroot defconfig powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR configuration
-rw-r--r--arch/powerpc/configs/skiroot_defconfig12
-rw-r--r--arch/powerpc/include/asm/book3s/64/hugetlb.h8
-rw-r--r--arch/powerpc/kernel/head_fsl_booke.S7
-rw-r--r--arch/powerpc/kernel/traps.c1
-rw-r--r--arch/powerpc/mm/Makefile3
-rw-r--r--arch/powerpc/platforms/powernv/opal-call.c1
6 files changed, 22 insertions, 10 deletions
diff --git a/arch/powerpc/configs/skiroot_defconfig b/arch/powerpc/configs/skiroot_defconfig
index cfdd08897a06..5ba131c30f6b 100644
--- a/arch/powerpc/configs/skiroot_defconfig
+++ b/arch/powerpc/configs/skiroot_defconfig
@@ -37,7 +37,8 @@ CONFIG_MODULE_SIG=y
37CONFIG_MODULE_SIG_FORCE=y 37CONFIG_MODULE_SIG_FORCE=y
38CONFIG_MODULE_SIG_SHA512=y 38CONFIG_MODULE_SIG_SHA512=y
39CONFIG_PARTITION_ADVANCED=y 39CONFIG_PARTITION_ADVANCED=y
40# CONFIG_IOSCHED_DEADLINE is not set 40# CONFIG_MQ_IOSCHED_DEADLINE is not set
41# CONFIG_MQ_IOSCHED_KYBER is not set
41# CONFIG_PPC_VAS is not set 42# CONFIG_PPC_VAS is not set
42# CONFIG_PPC_PSERIES is not set 43# CONFIG_PPC_PSERIES is not set
43# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set 44# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set
@@ -49,7 +50,6 @@ CONFIG_IRQ_ALL_CPUS=y
49CONFIG_NUMA=y 50CONFIG_NUMA=y
50# CONFIG_COMPACTION is not set 51# CONFIG_COMPACTION is not set
51# CONFIG_MIGRATION is not set 52# CONFIG_MIGRATION is not set
52# CONFIG_BOUNCE is not set
53CONFIG_PPC_64K_PAGES=y 53CONFIG_PPC_64K_PAGES=y
54CONFIG_SCHED_SMT=y 54CONFIG_SCHED_SMT=y
55CONFIG_CMDLINE_BOOL=y 55CONFIG_CMDLINE_BOOL=y
@@ -136,9 +136,11 @@ CONFIG_ACENIC_OMIT_TIGON_I=y
136# CONFIG_NET_VENDOR_AQUANTIA is not set 136# CONFIG_NET_VENDOR_AQUANTIA is not set
137# CONFIG_NET_VENDOR_ARC is not set 137# CONFIG_NET_VENDOR_ARC is not set
138# CONFIG_NET_VENDOR_ATHEROS is not set 138# CONFIG_NET_VENDOR_ATHEROS is not set
139# CONFIG_NET_VENDOR_AURORA is not set
139CONFIG_TIGON3=m 140CONFIG_TIGON3=m
140CONFIG_BNX2X=m 141CONFIG_BNX2X=m
141# CONFIG_NET_VENDOR_BROCADE is not set 142# CONFIG_NET_VENDOR_BROCADE is not set
143# CONFIG_NET_VENDOR_CADENCE is not set
142# CONFIG_NET_CADENCE is not set 144# CONFIG_NET_CADENCE is not set
143# CONFIG_NET_VENDOR_CAVIUM is not set 145# CONFIG_NET_VENDOR_CAVIUM is not set
144CONFIG_CHELSIO_T1=m 146CONFIG_CHELSIO_T1=m
@@ -151,6 +153,7 @@ CONFIG_BE2NET=m
151# CONFIG_NET_VENDOR_HP is not set 153# CONFIG_NET_VENDOR_HP is not set
152# CONFIG_NET_VENDOR_HUAWEI is not set 154# CONFIG_NET_VENDOR_HUAWEI is not set
153CONFIG_E1000=m 155CONFIG_E1000=m
156CONFIG_E1000E=m
154CONFIG_IGB=m 157CONFIG_IGB=m
155CONFIG_IXGB=m 158CONFIG_IXGB=m
156CONFIG_IXGBE=m 159CONFIG_IXGBE=m
@@ -161,15 +164,18 @@ CONFIG_MLX4_EN=m
161# CONFIG_MLX4_CORE_GEN2 is not set 164# CONFIG_MLX4_CORE_GEN2 is not set
162CONFIG_MLX5_CORE=m 165CONFIG_MLX5_CORE=m
163# CONFIG_NET_VENDOR_MICREL is not set 166# CONFIG_NET_VENDOR_MICREL is not set
167# CONFIG_NET_VENDOR_MICROSEMI is not set
164CONFIG_MYRI10GE=m 168CONFIG_MYRI10GE=m
165# CONFIG_NET_VENDOR_NATSEMI is not set 169# CONFIG_NET_VENDOR_NATSEMI is not set
166# CONFIG_NET_VENDOR_NETRONOME is not set 170# CONFIG_NET_VENDOR_NETRONOME is not set
167# CONFIG_NET_VENDOR_NI is not set 171# CONFIG_NET_VENDOR_NI is not set
168# CONFIG_NET_VENDOR_NVIDIA is not set 172# CONFIG_NET_VENDOR_NVIDIA is not set
169# CONFIG_NET_VENDOR_OKI is not set 173# CONFIG_NET_VENDOR_OKI is not set
170# CONFIG_NET_PACKET_ENGINE is not set 174# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
171CONFIG_QLGE=m 175CONFIG_QLGE=m
172CONFIG_NETXEN_NIC=m 176CONFIG_NETXEN_NIC=m
177CONFIG_QED=m
178CONFIG_QEDE=m
173# CONFIG_NET_VENDOR_QUALCOMM is not set 179# CONFIG_NET_VENDOR_QUALCOMM is not set
174# CONFIG_NET_VENDOR_RDC is not set 180# CONFIG_NET_VENDOR_RDC is not set
175# CONFIG_NET_VENDOR_REALTEK is not set 181# CONFIG_NET_VENDOR_REALTEK is not set
diff --git a/arch/powerpc/include/asm/book3s/64/hugetlb.h b/arch/powerpc/include/asm/book3s/64/hugetlb.h
index 66c1e4f88d65..ec2a55a553c7 100644
--- a/arch/powerpc/include/asm/book3s/64/hugetlb.h
+++ b/arch/powerpc/include/asm/book3s/64/hugetlb.h
@@ -39,6 +39,14 @@ static inline int hstate_get_psize(struct hstate *hstate)
39#ifdef CONFIG_ARCH_HAS_GIGANTIC_PAGE 39#ifdef CONFIG_ARCH_HAS_GIGANTIC_PAGE
40static inline bool gigantic_page_supported(void) 40static inline bool gigantic_page_supported(void)
41{ 41{
42 /*
43 * We used gigantic page reservation with hypervisor assist in some case.
44 * We cannot use runtime allocation of gigantic pages in those platforms
45 * This is hash translation mode LPARs.
46 */
47 if (firmware_has_feature(FW_FEATURE_LPAR) && !radix_enabled())
48 return false;
49
42 return true; 50 return true;
43} 51}
44#endif 52#endif
diff --git a/arch/powerpc/kernel/head_fsl_booke.S b/arch/powerpc/kernel/head_fsl_booke.S
index 1881127682e9..32332e24e421 100644
--- a/arch/powerpc/kernel/head_fsl_booke.S
+++ b/arch/powerpc/kernel/head_fsl_booke.S
@@ -194,13 +194,6 @@ set_ivor:
194#endif 194#endif
195 mtspr SPRN_MAS4, r2 195 mtspr SPRN_MAS4, r2
196 196
197#if 0
198 /* Enable DOZE */
199 mfspr r2,SPRN_HID0
200 oris r2,r2,HID0_DOZE@h
201 mtspr SPRN_HID0, r2
202#endif
203
204#if !defined(CONFIG_BDI_SWITCH) 197#if !defined(CONFIG_BDI_SWITCH)
205 /* 198 /*
206 * The Abatron BDI JTAG debugger does not tolerate others 199 * The Abatron BDI JTAG debugger does not tolerate others
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index a21200c6aaea..1fd45a8650e1 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -71,6 +71,7 @@
71#include <sysdev/fsl_pci.h> 71#include <sysdev/fsl_pci.h>
72#include <asm/kprobes.h> 72#include <asm/kprobes.h>
73#include <asm/stacktrace.h> 73#include <asm/stacktrace.h>
74#include <asm/nmi.h>
74 75
75#if defined(CONFIG_DEBUGGER) || defined(CONFIG_KEXEC_CORE) 76#if defined(CONFIG_DEBUGGER) || defined(CONFIG_KEXEC_CORE)
76int (*__debugger)(struct pt_regs *regs) __read_mostly; 77int (*__debugger)(struct pt_regs *regs) __read_mostly;
diff --git a/arch/powerpc/mm/Makefile b/arch/powerpc/mm/Makefile
index d52ec118e09d..3c1bd9fa23cd 100644
--- a/arch/powerpc/mm/Makefile
+++ b/arch/powerpc/mm/Makefile
@@ -52,3 +52,6 @@ obj-$(CONFIG_PPC_MEM_KEYS) += pkeys.o
52# This is necessary for booting with kcov enabled on book3e machines 52# This is necessary for booting with kcov enabled on book3e machines
53KCOV_INSTRUMENT_tlb_nohash.o := n 53KCOV_INSTRUMENT_tlb_nohash.o := n
54KCOV_INSTRUMENT_fsl_booke_mmu.o := n 54KCOV_INSTRUMENT_fsl_booke_mmu.o := n
55
56# Instrumenting the SLB fault path can lead to duplicate SLB entries
57KCOV_INSTRUMENT_slb.o := n
diff --git a/arch/powerpc/platforms/powernv/opal-call.c b/arch/powerpc/platforms/powernv/opal-call.c
index 578757d403ab..daad8c45c8e7 100644
--- a/arch/powerpc/platforms/powernv/opal-call.c
+++ b/arch/powerpc/platforms/powernv/opal-call.c
@@ -86,6 +86,7 @@ static s64 __opal_call_trace(s64 a0, s64 a1, s64 a2, s64 a3,
86 s64 a4, s64 a5, s64 a6, s64 a7, 86 s64 a4, s64 a5, s64 a6, s64 a7,
87 unsigned long opcode, unsigned long msr) 87 unsigned long opcode, unsigned long msr)
88{ 88{
89 return 0;
89} 90}
90 91
91#define DO_TRACE false 92#define DO_TRACE false