diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-03-16 13:45:17 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-03-16 13:45:17 -0400 |
commit | a9c55d58bc36b5a0ef7021772fc2508e693ed534 (patch) | |
tree | 0426fc075a8aa7534a2f4ffaaeb0a06010fbfff1 | |
parent | 924973508bf15f2cabbbef7b5c428131fbbd812b (diff) | |
parent | de3c83c2fd2b87cf68214eda76dfa66989d78cb6 (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_defconfig | 12 | ||||
-rw-r--r-- | arch/powerpc/include/asm/book3s/64/hugetlb.h | 8 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_fsl_booke.S | 7 | ||||
-rw-r--r-- | arch/powerpc/kernel/traps.c | 1 | ||||
-rw-r--r-- | arch/powerpc/mm/Makefile | 3 | ||||
-rw-r--r-- | arch/powerpc/platforms/powernv/opal-call.c | 1 |
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 | |||
37 | CONFIG_MODULE_SIG_FORCE=y | 37 | CONFIG_MODULE_SIG_FORCE=y |
38 | CONFIG_MODULE_SIG_SHA512=y | 38 | CONFIG_MODULE_SIG_SHA512=y |
39 | CONFIG_PARTITION_ADVANCED=y | 39 | CONFIG_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 | |||
49 | CONFIG_NUMA=y | 50 | CONFIG_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 | ||
53 | CONFIG_PPC_64K_PAGES=y | 53 | CONFIG_PPC_64K_PAGES=y |
54 | CONFIG_SCHED_SMT=y | 54 | CONFIG_SCHED_SMT=y |
55 | CONFIG_CMDLINE_BOOL=y | 55 | CONFIG_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 | ||
139 | CONFIG_TIGON3=m | 140 | CONFIG_TIGON3=m |
140 | CONFIG_BNX2X=m | 141 | CONFIG_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 |
144 | CONFIG_CHELSIO_T1=m | 146 | CONFIG_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 |
153 | CONFIG_E1000=m | 155 | CONFIG_E1000=m |
156 | CONFIG_E1000E=m | ||
154 | CONFIG_IGB=m | 157 | CONFIG_IGB=m |
155 | CONFIG_IXGB=m | 158 | CONFIG_IXGB=m |
156 | CONFIG_IXGBE=m | 159 | CONFIG_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 |
162 | CONFIG_MLX5_CORE=m | 165 | CONFIG_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 | ||
164 | CONFIG_MYRI10GE=m | 168 | CONFIG_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 |
171 | CONFIG_QLGE=m | 175 | CONFIG_QLGE=m |
172 | CONFIG_NETXEN_NIC=m | 176 | CONFIG_NETXEN_NIC=m |
177 | CONFIG_QED=m | ||
178 | CONFIG_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 |
40 | static inline bool gigantic_page_supported(void) | 40 | static 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) |
76 | int (*__debugger)(struct pt_regs *regs) __read_mostly; | 77 | int (*__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 |
53 | KCOV_INSTRUMENT_tlb_nohash.o := n | 53 | KCOV_INSTRUMENT_tlb_nohash.o := n |
54 | KCOV_INSTRUMENT_fsl_booke_mmu.o := n | 54 | KCOV_INSTRUMENT_fsl_booke_mmu.o := n |
55 | |||
56 | # Instrumenting the SLB fault path can lead to duplicate SLB entries | ||
57 | KCOV_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 |