Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 17 May 2016 00:17:24 +0000 (17:17 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 17 May 2016 00:17:24 +0000 (17:17 -0700)
Pull arm64 updates from Will Deacon:

 - virt_to_page/page_address optimisations

 - support for NUMA systems described using device-tree

 - support for hibernate/suspend-to-disk

 - proper support for maxcpus= command line parameter

 - detection and graceful handling of AArch64-only CPUs

 - miscellaneous cleanups and non-critical fixes

* tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (92 commits)
  arm64: do not enforce strict 16 byte alignment to stack pointer
  arm64: kernel: Fix incorrect brk randomization
  arm64: cpuinfo: Missing NULL terminator in compat_hwcap_str
  arm64: secondary_start_kernel: Remove unnecessary barrier
  arm64: Ensure pmd_present() returns false after pmd_mknotpresent()
  arm64: Replace hard-coded values in the pmd/pud_bad() macros
  arm64: Implement pmdp_set_access_flags() for hardware AF/DBM
  arm64: Fix typo in the pmdp_huge_get_and_clear() definition
  arm64: mm: remove unnecessary EXPORT_SYMBOL_GPL
  arm64: always use STRICT_MM_TYPECHECKS
  arm64: kvm: Fix kvm teardown for systems using the extended idmap
  arm64: kaslr: increase randomization granularity
  arm64: kconfig: drop CONFIG_RTC_LIB dependency
  arm64: make ARCH_SUPPORTS_DEBUG_PAGEALLOC depend on !HIBERNATION
  arm64: hibernate: Refuse to hibernate if the boot cpu is offline
  arm64: kernel: Add support for hibernate/suspend-to-disk
  PM / Hibernate: Call flush_icache_range() on pages restored in-place
  arm64: Add new asm macro copy_page
  arm64: Promote KERNEL_START/KERNEL_END definitions to a header file
  arm64: kernel: Include _AC definition in page.h
  ...

12 files changed:
1  2 
Documentation/kernel-parameters.txt
arch/arm/kvm/arm.c
arch/arm/kvm/mmu.c
arch/arm64/include/asm/kvm_arm.h
arch/arm64/include/asm/kvm_asm.h
arch/arm64/include/asm/kvm_host.h
arch/arm64/kernel/head.S
arch/arm64/kernel/hw_breakpoint.c
arch/arm64/kernel/image.h
drivers/firmware/efi/arm-init.c
include/linux/mm.h
include/linux/of.h

Simple merge
index dded1b763c164c029432860c9a4fb9332ba9a300,1687e1450c3a62a7ffdf259d7e0c73a48a01c941..9ef013d86cc5c7a5f3924071bbe8044e8d17a783
@@@ -1198,8 -1226,6 +1233,7 @@@ static void teardown_hyp_mode(void
        free_hyp_pgds();
        for_each_possible_cpu(cpu)
                free_page(per_cpu(kvm_arm_hyp_stack_page, cpu));
-       unregister_cpu_notifier(&hyp_init_cpu_nb);
 +      hyp_cpu_pm_exit();
  }
  
  static int init_vhe_mode(void)
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index ef90f0c4b70a735def7eb9c56aec980f7813a8fe,ca708fb18c1dfc859487a9f19c4e7352e8b726ac..a850cbc48d8d17a3de7ba51cb7ea033e57ed4fcd
@@@ -178,7 -143,15 +178,15 @@@ static __init void reserve_regions(void
        if (efi_enabled(EFI_DBG))
                pr_info("Processing EFI memory map:\n");
  
 -      for_each_efi_memory_desc(&memmap, md) {
+       /*
+        * Discard memblocks discovered so far: if there are any at this
+        * point, they originate from memory nodes in the DT, and UEFI
+        * uses its own memory map instead.
+        */
+       memblock_dump_all();
+       memblock_remove(0, (phys_addr_t)ULLONG_MAX);
 +      for_each_efi_memory_desc(md) {
                paddr = md->phys_addr;
                npages = md->num_pages;
  
Simple merge
Simple merge