Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull arm64 fixes from Catalin Marinas:
- compat renameat2 syscall wiring and __NR_compat_syscalls fix
- TLB fix for transparent huge pages following switch to generic
mmu_gather
- spinlock initialisation for init_mm's context
- move of_clk_init() earlier
- Kconfig duplicate entry fix

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
arm64: init: Move of_clk_init to time_init
arm64: initialize spinlock for init_mm's context
arm64: debug: remove noisy, pointless warning
arm64: mm: Add THP TLB entries to general mmu_gather
arm64: add renameat2 compat syscall
ARM64: Remove duplicated Kconfig entry for "kernel/power/Kconfig"
arm64: __NR_compat_syscalls fix

Changed files
+13 -7
arch
-2
arch/arm64/Kconfig
··· 323 323 324 324 source "drivers/cpuidle/Kconfig" 325 325 326 - source "kernel/power/Kconfig" 327 - 328 326 source "drivers/cpufreq/Kconfig" 329 327 330 328 endmenu
+3
arch/arm64/include/asm/mmu.h
··· 22 22 void *vdso; 23 23 } mm_context_t; 24 24 25 + #define INIT_MM_CONTEXT(name) \ 26 + .context.id_lock = __RAW_SPIN_LOCK_UNLOCKED(name.context.id_lock), 27 + 25 28 #define ASID(mm) ((mm)->context.id & 0xffff) 26 29 27 30 extern void paging_init(void);
+6
arch/arm64/include/asm/tlb.h
··· 19 19 #ifndef __ASM_TLB_H 20 20 #define __ASM_TLB_H 21 21 22 + #define __tlb_remove_pmd_tlb_entry __tlb_remove_pmd_tlb_entry 22 23 23 24 #include <asm-generic/tlb.h> 24 25 ··· 100 99 } 101 100 #endif 102 101 102 + static inline void __tlb_remove_pmd_tlb_entry(struct mmu_gather *tlb, pmd_t *pmdp, 103 + unsigned long address) 104 + { 105 + tlb_add_flush(tlb, address); 106 + } 103 107 104 108 #endif
+2 -1
arch/arm64/include/asm/unistd32.h
··· 403 403 __SYSCALL(379, sys_finit_module) 404 404 __SYSCALL(380, sys_sched_setattr) 405 405 __SYSCALL(381, sys_sched_getattr) 406 + __SYSCALL(382, sys_renameat2) 406 407 407 - #define __NR_compat_syscalls 379 408 + #define __NR_compat_syscalls 383 408 409 409 410 /* 410 411 * Compat syscall numbers used by the AArch64 kernel.
-3
arch/arm64/kernel/debug-monitors.c
··· 318 318 if (call_break_hook(regs, esr) == DBG_HOOK_HANDLED) 319 319 return 0; 320 320 321 - pr_warn("unexpected brk exception at %lx, esr=0x%x\n", 322 - (long)instruction_pointer(regs), esr); 323 - 324 321 if (!user_mode(regs)) 325 322 return -EFAULT; 326 323
-1
arch/arm64/kernel/setup.c
··· 393 393 394 394 static int __init arm64_device_init(void) 395 395 { 396 - of_clk_init(NULL); 397 396 of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); 398 397 return 0; 399 398 }
+2
arch/arm64/kernel/time.c
··· 33 33 #include <linux/irq.h> 34 34 #include <linux/delay.h> 35 35 #include <linux/clocksource.h> 36 + #include <linux/clk-provider.h> 36 37 37 38 #include <clocksource/arm_arch_timer.h> 38 39 ··· 66 65 { 67 66 u32 arch_timer_rate; 68 67 68 + of_clk_init(NULL); 69 69 clocksource_of_init(); 70 70 71 71 arch_timer_rate = arch_timer_get_rate();