[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220106185501.1480075-1-catalin.marinas@arm.com>
Date: Thu, 6 Jan 2022 18:55:01 +0000
From: Catalin Marinas <catalin.marinas@....com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Will Deacon <will@...nel.org>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: [GIT PULL] arm64 updates for 5.17
Hi Linus,
Please pull the arm64 updates for 5.17. A patch from Peter Z making
ARCH_STACKWALK independent of STACKTRACE touches x86, s390 and riscv.
The perf changes also touch kernel/events/core.c and arch/x86/events/.
I generated the diffstat manually by merging against current mainline
(75acfdb6fd92), otherwise it's all over the place since I had to merge
the arm64 for-next/fixes (based on -rc1) for a BTI fix dependency into
for-next/core (based on -rc3).
Thanks,
Catalin
The following changes since commit 35b6b28e69985eafb20b3b2c7bd6eca452b56b53:
arm64: ftrace: add missing BTIs (2021-12-02 10:18:32 +0000)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux tags/arm64-upstream
for you to fetch changes up to 945409a6ef442cfe5f2f14e5626d4306d53100f0:
Merge branches 'for-next/misc', 'for-next/cache-ops-dzp', 'for-next/stacktrace', 'for-next/xor-neon', 'for-next/kasan', 'for-next/armv8_7-fp', 'for-next/atomics', 'for-next/bti', 'for-next/sve', 'for-next/kselftest' and 'for-next/kcsan', remote-tracking branch 'arm64/for-next/perf' into for-next/core (2022-01-05 18:14:32 +0000)
----------------------------------------------------------------
arm64 updates for 5.17:
- KCSAN enabled for arm64.
- Additional kselftests to exercise the syscall ABI w.r.t. SVE/FPSIMD.
- Some more SVE clean-ups and refactoring in preparation for SME support
(scalable matrix extensions).
- BTI clean-ups (SYM_FUNC macros etc.)
- arm64 atomics clean-up and codegen improvements.
- HWCAPs for FEAT_AFP (alternate floating point behaviour) and
FEAT_RPRESS (increased precision of reciprocal estimate and reciprocal
square root estimate).
- Use SHA3 instructions to speed-up XOR.
- arm64 unwind code refactoring/unification.
- Avoid DC (data cache maintenance) instructions when DCZID_EL0.DZP == 1
(potentially set by a hypervisor; user-space already does this).
- Perf updates for arm64: support for CI-700, HiSilicon PCIe PMU,
Marvell CN10K LLC-TAD PMU, miscellaneous clean-ups.
- Other fixes and clean-ups; highlights: fix the handling of erratum
1418040, correct the calculation of the nomap region boundaries,
introduce io_stop_wc() mapped to the new DGH instruction (data
gathering hint).
----------------------------------------------------------------
Ard Biesheuvel (1):
arm64/xor: use EOR3 instructions when available
Bhaskara Budiredla (2):
drivers: perf: Add LLC-TAD perf counter support
dt-bindings: perf: Add YAML schemas for Marvell CN10K LLC-TAD pmu bindings
Catalin Marinas (3):
Merge 'arm64/for-next/fixes' into for-next/bti
arm64: Ensure that the 'bti' macro is defined where linkage.h is included
Merge branches 'for-next/misc', 'for-next/cache-ops-dzp', 'for-next/stacktrace', 'for-next/xor-neon', 'for-next/kasan', 'for-next/armv8_7-fp', 'for-next/atomics', 'for-next/bti', 'for-next/sve', 'for-next/kselftest' and 'for-next/kcsan', remote-tracking branch 'arm64/for-next/perf' into for-next/core
D Scott Phillips (1):
arm64: errata: Fix exec handling in erratum 1418040 workaround
Dan Carpenter (1):
drivers: perf: marvell_cn10k: fix an IS_ERR() vs NULL check
Florian Fainelli (1):
arm64: entry: Use SDEI event constants
Guilherme G. Piccoli (1):
arm64: Unhash early pointer print plus improve comment
Huacai Chen (1):
arm64: Use correct method to calculate nomap region boundaries
Jean-Philippe Brucker (2):
dt-bindings: Add Arm SMMUv3 PMCG binding
perf/smmuv3: Add devicetree support
Jisheng Zhang (1):
arm64: extable: remove unused ex_handler_t definition
Joey Gouly (3):
arm64: cpufeature: add HWCAP for FEAT_AFP
arm64: add ID_AA64ISAR2_EL1 sys register
arm64: cpufeature: add HWCAP for FEAT_RPRES
Kees Cook (1):
arm64: Drop outdated links in comments
Kefeng Wang (1):
arm64: Enable KCSAN
Madhavan T. Venkataraman (5):
arm64: Make perf_callchain_kernel() use arch_stack_walk()
arm64: Make __get_wchan() use arch_stack_walk()
arm64: Make return_address() use arch_stack_walk()
arm64: Make profile_pc() use arch_stack_walk()
arm64: Make dump_backtrace() use arch_stack_walk()
Mark Brown (12):
arm64/kvm: Fix bitrotted comment for SVE handling in handle_exit.c
arm64: Add macro version of the BTI instruction
arm64: Unconditionally override SYM_FUNC macros
arm64: Use BTI C directly and unconditionally
arm64/sve: Make sysctl interface for SVE reusable by SME
arm64/sve: Generalise vector length configuration prctl() for SME
arm64/sve: Minor clarification of ABI documentation
kselftest/arm64: Parameterise ptrace vector length information
kselftest/arm64: Allow signal tests to trigger from a function
kselftest/arm64: Add a test program to exercise the syscall ABI
arm64/fp: Add comments documenting the usage of state restore functions
kselftest/arm64: Add pidbench for floating point syscall cases
Mark Rutland (11):
arm64: Add comment for stack_info::kr_cur
arm64: Mark __switch_to() as __sched
arm64: Make some stacktrace functions private
arm64: mm: use die_kernel_fault() in do_mem_abort()
arm64: mm: log potential KASAN shadow alias
arm64: atomics: format whitespace consistently
arm64: atomics lse: define SUBs in terms of ADDs
arm64: atomics: lse: define ANDs in terms of ANDNOTs
arm64: atomics: lse: improve constraints for simple ops
arm64: atomics: lse: define RETURN ops in terms of FETCH ops
arm64: remove __dma_*_area() aliases
Peter Zijlstra (1):
arch: Make ARCH_STACKWALK independent of STACKTRACE
Qi Liu (2):
docs: perf: Add description for HiSilicon PCIe PMU driver
drivers/perf: hisi: Add driver for HiSilicon PCIe PMU
Raphael Gault (1):
Documentation: arm64: Document PMU counters access from userspace
Reiji Watanabe (2):
arm64: clear_page() shouldn't use DC ZVA when DCZID_EL0.DZP == 1
arm64: mte: DC {GVA,GZVA} shouldn't be used when DCZID_EL0.DZP == 1
Rob Herring (5):
arm64: Simplify checking for populated DT
x86: perf: Move RDPMC event flag to a common definition
perf: Add a counter for number of user access events in context
arm64: perf: Add userspace counter access disable switch
arm64: perf: Enable PMU counter userspace access for perf event
Robin Murphy (17):
perf/arm-cmn: Fix CPU hotplug unregistration
perf/arm-cmn: Account for NUMA affinity
perf/arm-cmn: Drop compile-test restriction
perf/arm-cmn: Refactor node ID handling
perf/arm-cmn: Streamline node iteration
perf/arm-cmn: Refactor DTM handling
perf/arm-cmn: Optimise DTM counter reads
perf/arm-cmn: Optimise DTC counter accesses
perf/arm-cmn: Move group validation data off-stack
perf/arm-cmn: Demarcate CMN-600 specifics
perf/arm-cmn: Support new IP features
dt-bindings: perf: arm-cmn: Add CI-700
perf/arm-cmn: Add CI-700 Support
perf/arm-cmn: Add debugfs topology info
perf/smmuv3: Synthesize IIDR from CoreSight ID registers
arm64: perf: Simplify registration boilerplate
arm64: perf: Support new DT compatibles
Rongwei Wang (1):
arm64: kexec: reduce calls to page_address()
Thierry Reding (1):
arm64: perf: Support Denver and Carmel PMUs
Will Deacon (8):
Merge branch 'for-next/perf-cmn' into for-next/perf
Merge branch 'for-next/perf-cn10k' into for-next/perf
Merge branch 'for-next/perf-hisi' into for-next/perf
Merge branch 'for-next/perf-smmu' into for-next/perf
Merge branch 'for-next/perf-user-counter-access' into for-next/perf
Merge branch 'for-next/perf-cpu' into for-next/perf
perf/smmuv3: Fix unused variable warning when CONFIG_OF=n
arm64: perf: Don't register user access sysctl handler multiple times
Xiongfeng Wang (1):
asm-generic: introduce io_stop_wc() and add implementation for ARM64
Yanteng Si (1):
docs/arm64: delete a space from tagged-address-abi
Yunfeng Ye (2):
arm64: mm: Rename asid2idx() to ctxid2asid()
arm64: mm: Use asid feature macro for cheanup
Documentation/admin-guide/perf/hisi-pcie-pmu.rst | 106 ++
Documentation/admin-guide/sysctl/kernel.rst | 11 +
Documentation/arm64/cpu-feature-registers.rst | 17 +
Documentation/arm64/elf_hwcaps.rst | 8 +
Documentation/arm64/perf.rst | 78 +-
Documentation/arm64/sve.rst | 2 +-
Documentation/arm64/tagged-address-abi.rst | 2 +-
.../devicetree/bindings/perf/arm,cmn.yaml | 21 +-
.../devicetree/bindings/perf/arm,smmu-v3-pmcg.yaml | 70 ++
.../bindings/perf/marvell-cn10k-tad.yaml | 63 ++
Documentation/memory-barriers.txt | 8 +
MAINTAINERS | 2 +
arch/arm64/Kconfig | 8 +
arch/arm64/Makefile | 5 +
arch/arm64/crypto/aes-modes.S | 10 +-
arch/arm64/include/asm/assembler.h | 10 +
arch/arm64/include/asm/atomic_ll_sc.h | 86 +-
arch/arm64/include/asm/atomic_lse.h | 270 ++---
arch/arm64/include/asm/barrier.h | 9 +
arch/arm64/include/asm/cpu.h | 1 +
arch/arm64/include/asm/fpsimd.h | 6 +-
arch/arm64/include/asm/hwcap.h | 2 +
arch/arm64/include/asm/linkage.h | 35 +-
arch/arm64/include/asm/mte-kasan.h | 8 +-
arch/arm64/include/asm/stacktrace.h | 10 +-
arch/arm64/include/asm/sysreg.h | 16 +
arch/arm64/include/uapi/asm/hwcap.h | 2 +
arch/arm64/kernel/acpi.c | 35 +-
arch/arm64/kernel/cpufeature.c | 13 +
arch/arm64/kernel/cpuinfo.c | 3 +
arch/arm64/kernel/entry-ftrace.S | 8 +-
arch/arm64/kernel/entry.S | 6 +-
arch/arm64/kernel/fpsimd.c | 69 +-
arch/arm64/kernel/hibernate.c | 4 -
arch/arm64/kernel/machine_kexec.c | 6 +-
arch/arm64/kernel/perf_callchain.c | 15 +-
arch/arm64/kernel/perf_event.c | 252 +++--
arch/arm64/kernel/process.c | 84 +-
arch/arm64/kernel/ptrace.c | 4 +-
arch/arm64/kernel/return_address.c | 8 +-
arch/arm64/kernel/setup.c | 13 +-
arch/arm64/kernel/stacktrace.c | 60 +-
arch/arm64/kernel/time.c | 25 +-
arch/arm64/kernel/vdso/Makefile | 1 +
arch/arm64/kvm/handle_exit.c | 5 +-
arch/arm64/kvm/hyp/nvhe/Makefile | 1 +
arch/arm64/kvm/reset.c | 8 +-
arch/arm64/kvm/sys_regs.c | 2 +-
arch/arm64/lib/clear_page.S | 10 +
arch/arm64/lib/kasan_sw_tags.S | 4 +-
arch/arm64/lib/mte.S | 8 +-
arch/arm64/lib/xor-neon.c | 147 ++-
arch/arm64/mm/cache.S | 24 +-
arch/arm64/mm/context.c | 22 +-
arch/arm64/mm/extable.c | 3 -
arch/arm64/mm/fault.c | 9 +-
arch/powerpc/kernel/Makefile | 3 +-
arch/riscv/kernel/stacktrace.c | 4 -
arch/s390/kernel/Makefile | 3 +-
arch/x86/events/core.c | 10 +-
arch/x86/events/perf_event.h | 2 +-
arch/x86/kernel/Makefile | 2 +-
drivers/perf/Kconfig | 9 +-
drivers/perf/Makefile | 1 +
drivers/perf/arm-cmn.c | 1111 +++++++++++++-------
drivers/perf/arm_smmuv3_pmu.c | 68 +-
drivers/perf/hisilicon/Kconfig | 9 +
drivers/perf/hisilicon/Makefile | 2 +
drivers/perf/hisilicon/hisi_pcie_pmu.c | 948 +++++++++++++++++
drivers/perf/marvell_cn10k_tad_pmu.c | 429 ++++++++
include/asm-generic/barrier.h | 11 +
include/linux/cpuhotplug.h | 1 +
include/linux/perf_event.h | 10 +
include/linux/stacktrace.h | 35 +-
kernel/events/core.c | 4 +
kernel/kcsan/Makefile | 1 +
tools/testing/selftests/arm64/Makefile | 2 +-
tools/testing/selftests/arm64/abi/.gitignore | 1 +
tools/testing/selftests/arm64/abi/Makefile | 8 +
.../testing/selftests/arm64/abi/syscall-abi-asm.S | 240 +++++
tools/testing/selftests/arm64/abi/syscall-abi.c | 318 ++++++
tools/testing/selftests/arm64/fp/.gitignore | 1 +
tools/testing/selftests/arm64/fp/Makefile | 4 +-
tools/testing/selftests/arm64/fp/fp-pidbench.S | 71 ++
tools/testing/selftests/arm64/fp/sve-ptrace.c | 219 ++--
.../selftests/arm64/signal/test_signals_utils.c | 12 +-
86 files changed, 4184 insertions(+), 1070 deletions(-)
Powered by blists - more mailing lists