• Linus Torvalds's avatar
    Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 18fd0497
    Linus Torvalds authored
    Pull arm64 updates from Catalin Marinas:
    
     - arm64 perf: DDR PMU driver for Alibaba's T-Head Yitian 710 SoC, SVE
       vector granule register added to the user regs together with SVE perf
       extensions documentation.
    
     - SVE updates: add HWCAP for SVE EBF16, update the SVE ABI
       documentation to match the actual kernel behaviour (zeroing the
       registers on syscall rather than "zeroed or preserved" previously).
    
     - More conversions to automatic system registers generation.
    
     - vDSO: use self-synchronising virtual counter access in gettimeofday()
       if the architecture supports it.
    
     - arm64 stacktrace cleanups and improvements.
    
     - arm64 atomics improvements: always inline assembly, remove LL/SC
       trampolines.
    
     - Improve the reporting of EL1 exceptions: rework BTI and FPAC
       exception handling, better EL1 undefs reporting.
    
     - Cortex-A510 erratum 2658417: remove BF16 support due to incorrect
       result.
    
     - arm64 defconfig updates: build CoreSight as a module, enable options
       necessary for docker, memory hotplug/hotremove, enable all PMUs
       provided by Arm.
    
     - arm64 ptrace() support for TPIDR2_EL0 (register provided with the SME
       extensions).
    
     - arm64 ftraces updates/fixes: fix module PLTs with mcount, remove
       unused function.
    
     - kselftest updates for arm64: simple HWCAP validation, FP stress test
       improvements, validation of ZA regs in signal handlers, include
       larger SVE and SME vector lengths in signal tests, various cleanups.
    
     - arm64 alternatives (code patching) improvements to robustness and
       consistency: replace cpucap static branches with equivalent
       alternatives, associate callback alternatives with a cpucap.
    
     - Miscellaneous updates: optimise kprobe performance of patching
       single-step slots, simplify uaccess_mask_ptr(), move MTE registers
       initialisation to C, support huge vmalloc() mappings, run softirqs on
       the per-CPU IRQ stack, compat (arm32) misalignment fixups for
       multiword accesses.
    
    * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (126 commits)
      arm64: alternatives: Use vdso/bits.h instead of linux/bits.h
      arm64/kprobe: Optimize the performance of patching single-step slot
      arm64: defconfig: Add Coresight as module
      kselftest/arm64: Handle EINTR while reading data from children
      kselftest/arm64: Flag fp-stress as exiting when we begin finishing up
      kselftest/arm64: Don't repeat termination handler for fp-stress
      ARM64: reloc_test: add __init/__exit annotations to module init/exit funcs
      arm64/mm: fold check for KFENCE into can_set_direct_map()
      arm64: ftrace: fix module PLTs with mcount
      arm64: module: Remove unused plt_entry_is_initialized()
      arm64: module: Make plt_equals_entry() static
      arm64: fix the build with binutils 2.27
      kselftest/arm64: Don't enable v8.5 for MTE selftest builds
      arm64: uaccess: simplify uaccess_mask_ptr()
      arm64: asm/perf_regs.h: Avoid C++-style comment in UAPI header
      kselftest/arm64: Fix typo in hwcap check
      arm64: mte: move register initialization to C
      arm64: mm: handle ARM64_KERNEL_USES_PMD_MAPS in vmemmap_populate()
      arm64: dma: Drop cache invalidation from arch_dma_prep_coherent()
      arm64/sve: Add Perf extensions documentation
      ...
    18fd0497
traps.c 28 KB