Merge tag 'powerpc-4.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Feb 2017 18:30:38 +0000 (10:30 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 22 Feb 2017 18:30:38 +0000 (10:30 -0800)
Pull powerpc updates from Michael Ellerman:
 "Highlights include:

   - Support for direct mapped LPC on POWER9, giving Linux direct access
     to devices that may be on there such as a UART.

   - Memory hotplug support for the Power9 Radix MMU.

   - Add new AUX vectors describing the processor's cache geometry, to
     be used by glibc.

   - The ability for a guest to ask the hypervisor to resize the guest's
     hash table, and in addition support for doing so automatically when
     memory is hotplugged into/out-of the guest. This allows the hash
     table to be sized based on the current memory usage of the guest,
     rather than the maximum possible memory usage.

   - Implementation of optprobes (kprobe optimisation) for powerpc.

  In addition there's the topic branch shared with the KVM tree, which
  includes support for guests to use the Radix MMU on Power9.

  Thanks to:
    Alistair Popple, Andrew Donnellan, Aneesh Kumar K.V, Anju T, Anton
    Blanchard, Benjamin Herrenschmidt, Chris Packham, Daniel Axtens,
    Daniel Borkmann, David Gibson, Finn Thain, Gautham R. Shenoy, Gavin
    Shan, Greg Kurz, Joel Stanley, John Allen, Madhavan Srinivasan,
    Mahesh Salgaonkar, Markus Elfring, Michael Neuling, Nathan Fontenot,
    Naveen N. Rao, Nicholas Piggin, Paul Mackerras, Ravi Bangoria, Reza
    Arbab, Shailendra Singh, Vaibhav Jain, Wei Yongjun"

* tag 'powerpc-4.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (129 commits)
  powerpc/mm/radix: Skip ptesync in pte update helpers
  powerpc/mm/radix: Use ptep_get_and_clear_full when clearing pte for full mm
  powerpc/mm/radix: Update pte update sequence for pte clear case
  powerpc/mm: Update PROTFAULT handling in the page fault path
  powerpc/xmon: Fix data-breakpoint
  powerpc/mm: Fix build break with BOOK3S_64=n and MEMORY_HOTPLUG=y
  powerpc/mm: Fix build break when CMA=n && SPAPR_TCE_IOMMU=y
  powerpc/mm: Fix build break with RADIX=y & HUGETLBFS=n
  powerpc/pseries: Fix typo in parameter description
  powerpc/kprobes: Remove kprobe_exceptions_notify()
  kprobes: Introduce weak variant of kprobe_exceptions_notify()
  powerpc/ftrace: Fix confusing help text for DISABLE_MPROFILE_KERNEL
  powerpc/powernv: Fix opal_exit tracepoint opcode
  powerpc: Add a prototype for mcount() so it can be versioned
  powerpc: Drop GPL from of_node_to_nid() export to match other arches
  powerpc/kprobes: Optimize kprobe in kretprobe_trampoline()
  powerpc/kprobes: Implement Optprobes
  powerpc/kprobes: Fixes for kprobe_lookup_name() on BE
  powerpc: Add helper to check if offset is within relative branch range
  powerpc/bpf: Introduce __PPC_SH64()
  ...

15 files changed:
1  2 
arch/m68k/mac/misc.c
arch/powerpc/Kconfig
arch/powerpc/include/asm/mmu.h
arch/powerpc/include/asm/reg.h
arch/powerpc/kernel/Makefile
arch/powerpc/kernel/asm-offsets.c
arch/powerpc/kernel/prom_init.c
arch/powerpc/mm/fault.c
arch/powerpc/mm/init_64.c
arch/powerpc/mm/pgtable-radix.c
arch/powerpc/net/bpf_jit_comp64.c
arch/powerpc/platforms/powernv/smp.c
arch/powerpc/xmon/xmon.c
kernel/kprobes.c
scripts/Makefile.gcc-plugins

Simple merge
index 281f4f1fcd1f68ab2fbc613afa3f2597bd090550,260dd6a371e05ce62beaf0ca88ebd88fa27044d6..8582121d7a455f6181c374fbf4cba97c3dfbdb8c
@@@ -164,9 -166,11 +166,10 @@@ config PP
        select ARCH_HAS_SCALED_CPUTIME if VIRT_CPU_ACCOUNTING_NATIVE
        select HAVE_ARCH_HARDENED_USERCOPY
        select HAVE_KERNEL_GZIP
 -      select HAVE_CC_STACKPROTECTOR
+       select HAVE_CONTEXT_TRACKING if PPC64
  
  config GENERIC_CSUM
-       def_bool CPU_LITTLE_ENDIAN
+       def_bool n
  
  config EARLY_PRINTK
        bool
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 8e1588021d1c90d37073d91962d8822777a152fe,10c9a545a646940680e303c08c800e9b81a23d7e..6aa3b76aa0d66b0b0d53b7e30685ab26745e2603
@@@ -347,10 -373,18 +373,19 @@@ static void early_check_vec5(void
  void __init mmu_early_init_devtree(void)
  {
        /* Disable radix mode based on kernel command line. */
 -      if (disable_radix)
 +      /* We don't yet have the machinery to do radix as a guest. */
 +      if (disable_radix || !(mfmsr() & MSR_HV))
                cur_cpu_spec->mmu_features &= ~MMU_FTR_TYPE_RADIX;
  
+       /*
+        * Check /chosen/ibm,architecture-vec-5 if running as a guest.
+        * When running bare-metal, we can use radix if we like
+        * even though the ibm,architecture-vec-5 property created by
+        * skiboot doesn't have the necessary bits set.
+        */
+       if (early_radix_enabled() && !(mfmsr() & MSR_HV))
+               early_check_vec5();
        if (early_radix_enabled())
                radix__early_init_devtree();
        else
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge