提交 a9c55d58 编写于 作者: L Linus Torvalds

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
...@@ -37,7 +37,8 @@ CONFIG_MODULE_SIG=y ...@@ -37,7 +37,8 @@ CONFIG_MODULE_SIG=y
CONFIG_MODULE_SIG_FORCE=y CONFIG_MODULE_SIG_FORCE=y
CONFIG_MODULE_SIG_SHA512=y CONFIG_MODULE_SIG_SHA512=y
CONFIG_PARTITION_ADVANCED=y CONFIG_PARTITION_ADVANCED=y
# CONFIG_IOSCHED_DEADLINE is not set # CONFIG_MQ_IOSCHED_DEADLINE is not set
# CONFIG_MQ_IOSCHED_KYBER is not set
# CONFIG_PPC_VAS is not set # CONFIG_PPC_VAS is not set
# CONFIG_PPC_PSERIES is not set # CONFIG_PPC_PSERIES is not set
# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set # CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set
...@@ -49,7 +50,6 @@ CONFIG_IRQ_ALL_CPUS=y ...@@ -49,7 +50,6 @@ CONFIG_IRQ_ALL_CPUS=y
CONFIG_NUMA=y CONFIG_NUMA=y
# CONFIG_COMPACTION is not set # CONFIG_COMPACTION is not set
# CONFIG_MIGRATION is not set # CONFIG_MIGRATION is not set
# CONFIG_BOUNCE is not set
CONFIG_PPC_64K_PAGES=y CONFIG_PPC_64K_PAGES=y
CONFIG_SCHED_SMT=y CONFIG_SCHED_SMT=y
CONFIG_CMDLINE_BOOL=y CONFIG_CMDLINE_BOOL=y
...@@ -136,9 +136,11 @@ CONFIG_ACENIC_OMIT_TIGON_I=y ...@@ -136,9 +136,11 @@ CONFIG_ACENIC_OMIT_TIGON_I=y
# CONFIG_NET_VENDOR_AQUANTIA is not set # CONFIG_NET_VENDOR_AQUANTIA is not set
# CONFIG_NET_VENDOR_ARC is not set # CONFIG_NET_VENDOR_ARC is not set
# CONFIG_NET_VENDOR_ATHEROS is not set # CONFIG_NET_VENDOR_ATHEROS is not set
# CONFIG_NET_VENDOR_AURORA is not set
CONFIG_TIGON3=m CONFIG_TIGON3=m
CONFIG_BNX2X=m CONFIG_BNX2X=m
# CONFIG_NET_VENDOR_BROCADE is not set # CONFIG_NET_VENDOR_BROCADE is not set
# CONFIG_NET_VENDOR_CADENCE is not set
# CONFIG_NET_CADENCE is not set # CONFIG_NET_CADENCE is not set
# CONFIG_NET_VENDOR_CAVIUM is not set # CONFIG_NET_VENDOR_CAVIUM is not set
CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T1=m
...@@ -151,6 +153,7 @@ CONFIG_BE2NET=m ...@@ -151,6 +153,7 @@ CONFIG_BE2NET=m
# CONFIG_NET_VENDOR_HP is not set # CONFIG_NET_VENDOR_HP is not set
# CONFIG_NET_VENDOR_HUAWEI is not set # CONFIG_NET_VENDOR_HUAWEI is not set
CONFIG_E1000=m CONFIG_E1000=m
CONFIG_E1000E=m
CONFIG_IGB=m CONFIG_IGB=m
CONFIG_IXGB=m CONFIG_IXGB=m
CONFIG_IXGBE=m CONFIG_IXGBE=m
...@@ -161,15 +164,18 @@ CONFIG_MLX4_EN=m ...@@ -161,15 +164,18 @@ CONFIG_MLX4_EN=m
# CONFIG_MLX4_CORE_GEN2 is not set # CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX5_CORE=m CONFIG_MLX5_CORE=m
# CONFIG_NET_VENDOR_MICREL is not set # CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MICROSEMI is not set
CONFIG_MYRI10GE=m CONFIG_MYRI10GE=m
# CONFIG_NET_VENDOR_NATSEMI is not set # CONFIG_NET_VENDOR_NATSEMI is not set
# CONFIG_NET_VENDOR_NETRONOME is not set # CONFIG_NET_VENDOR_NETRONOME is not set
# CONFIG_NET_VENDOR_NI is not set # CONFIG_NET_VENDOR_NI is not set
# CONFIG_NET_VENDOR_NVIDIA is not set # CONFIG_NET_VENDOR_NVIDIA is not set
# CONFIG_NET_VENDOR_OKI is not set # CONFIG_NET_VENDOR_OKI is not set
# CONFIG_NET_PACKET_ENGINE is not set # CONFIG_NET_VENDOR_PACKET_ENGINES is not set
CONFIG_QLGE=m CONFIG_QLGE=m
CONFIG_NETXEN_NIC=m CONFIG_NETXEN_NIC=m
CONFIG_QED=m
CONFIG_QEDE=m
# CONFIG_NET_VENDOR_QUALCOMM is not set # CONFIG_NET_VENDOR_QUALCOMM is not set
# CONFIG_NET_VENDOR_RDC is not set # CONFIG_NET_VENDOR_RDC is not set
# CONFIG_NET_VENDOR_REALTEK is not set # CONFIG_NET_VENDOR_REALTEK is not set
......
...@@ -39,6 +39,14 @@ static inline int hstate_get_psize(struct hstate *hstate) ...@@ -39,6 +39,14 @@ static inline int hstate_get_psize(struct hstate *hstate)
#ifdef CONFIG_ARCH_HAS_GIGANTIC_PAGE #ifdef CONFIG_ARCH_HAS_GIGANTIC_PAGE
static inline bool gigantic_page_supported(void) static inline bool gigantic_page_supported(void)
{ {
/*
* We used gigantic page reservation with hypervisor assist in some case.
* We cannot use runtime allocation of gigantic pages in those platforms
* This is hash translation mode LPARs.
*/
if (firmware_has_feature(FW_FEATURE_LPAR) && !radix_enabled())
return false;
return true; return true;
} }
#endif #endif
......
...@@ -194,13 +194,6 @@ set_ivor: ...@@ -194,13 +194,6 @@ set_ivor:
#endif #endif
mtspr SPRN_MAS4, r2 mtspr SPRN_MAS4, r2
#if 0
/* Enable DOZE */
mfspr r2,SPRN_HID0
oris r2,r2,HID0_DOZE@h
mtspr SPRN_HID0, r2
#endif
#if !defined(CONFIG_BDI_SWITCH) #if !defined(CONFIG_BDI_SWITCH)
/* /*
* The Abatron BDI JTAG debugger does not tolerate others * The Abatron BDI JTAG debugger does not tolerate others
......
...@@ -71,6 +71,7 @@ ...@@ -71,6 +71,7 @@
#include <sysdev/fsl_pci.h> #include <sysdev/fsl_pci.h>
#include <asm/kprobes.h> #include <asm/kprobes.h>
#include <asm/stacktrace.h> #include <asm/stacktrace.h>
#include <asm/nmi.h>
#if defined(CONFIG_DEBUGGER) || defined(CONFIG_KEXEC_CORE) #if defined(CONFIG_DEBUGGER) || defined(CONFIG_KEXEC_CORE)
int (*__debugger)(struct pt_regs *regs) __read_mostly; int (*__debugger)(struct pt_regs *regs) __read_mostly;
......
...@@ -52,3 +52,6 @@ obj-$(CONFIG_PPC_MEM_KEYS) += pkeys.o ...@@ -52,3 +52,6 @@ obj-$(CONFIG_PPC_MEM_KEYS) += pkeys.o
# This is necessary for booting with kcov enabled on book3e machines # This is necessary for booting with kcov enabled on book3e machines
KCOV_INSTRUMENT_tlb_nohash.o := n KCOV_INSTRUMENT_tlb_nohash.o := n
KCOV_INSTRUMENT_fsl_booke_mmu.o := n KCOV_INSTRUMENT_fsl_booke_mmu.o := n
# Instrumenting the SLB fault path can lead to duplicate SLB entries
KCOV_INSTRUMENT_slb.o := n
...@@ -86,6 +86,7 @@ static s64 __opal_call_trace(s64 a0, s64 a1, s64 a2, s64 a3, ...@@ -86,6 +86,7 @@ static s64 __opal_call_trace(s64 a0, s64 a1, s64 a2, s64 a3,
s64 a4, s64 a5, s64 a6, s64 a7, s64 a4, s64 a5, s64 a6, s64 a7,
unsigned long opcode, unsigned long msr) unsigned long opcode, unsigned long msr)
{ {
return 0;
} }
#define DO_TRACE false #define DO_TRACE false
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册