lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aIOXyQG1OA8pv49m@arm.com>
Date: Fri, 25 Jul 2025 15:42:17 +0100
From: Catalin Marinas <cmarinas@...nel.org>
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: Re: [GIT PULL] arm64 updates for 6.17

On Fri, Jul 25, 2025 at 03:39:25PM +0100, Catalin Marinas wrote:
> Please pull the arm64 updates below. A quick summary - perf support for
> Branch Record Buffer Extensions (BRBE), typical PMU hardware updates,
> small additions to MTE for store-only tag checking and exposing
> non-address bits to signal handlers, HAVE_LIVEPATCH enabled on arm64,
> VMAP_STACK forced on. There is also a TLBI optimisation on hardware that
> does not require break-before-make when changing the user PTEs between
> contiguous and non-contiguous. These patches touch the iommu/SMMU code.
> More details in the tag.

I forgot to send the original with my kernel.org address, in case it
ends up in your spam folder. So, here it is.

> Thanks.
> 
> The following changes since commit ef8923e6c051a98164c2889db943df9695a39888:
> 
>   arm64: efi: Fix KASAN false positive for EFI runtime stack (2025-07-04 14:47:06 +0100)
> 
> 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 5b1ae9de71335865d06ff0e60eadcf368a735edf:
> 
>   Merge branch 'for-next/feat_mte_store_only' into for-next/core (2025-07-24 16:03:34 +0100)
> 
> ----------------------------------------------------------------
> arm64 updates for 6.17:
> 
> Perf and PMU updates:
> 
>  - Add support for new (v3) Hisilicon SLLC and DDRC PMUs
> 
>  - Add support for Arm-NI PMU integrations that share interrupts between
>    clock domains within a given instance
> 
>  - Allow SPE to be configured with a lower sample period than the
>    minimum recommendation advertised by PMSIDR_EL1.Interval
> 
>  - Add suppport for Arm's "Branch Record Buffer Extension" (BRBE)
> 
>  - Adjust the perf watchdog period according to cpu frequency changes
> 
>  - Minor driver fixes and cleanups
> 
> Hardware features:
> 
>  - Support for MTE store-only checking (FEAT_MTE_STORE_ONLY)
> 
>  - Support for reporting the non-address bits during a synchronous MTE
>    tag check fault (FEAT_MTE_TAGGED_FAR)
> 
>  - Optimise the TLBI when folding/unfolding contiguous PTEs on hardware
>    with FEAT_BBM (break-before-make) level 2 and no TLB conflict aborts
> 
> Software features:
> 
>  - Enable HAVE_LIVEPATCH after implementing arch_stack_walk_reliable()
>    and using the text-poke API for late module relocations
> 
>  - Force VMAP_STACK always on and change arm64_efi_rt_init() to use
>    arch_alloc_vmap_stack() in order to avoid KASAN false positives
> 
> ACPI:
> 
>  - Improve SPCR handling and messaging on systems lacking an SPCR table
> 
> Debug:
> 
>  - Simplify the debug exception entry path
> 
>  - Drop redundant DBG_MDSCR_* macros
> 
> Kselftests:
> 
>  - Cleanups and improvements for SME, SVE and FPSIMD tests
> 
> Miscellaneous:
> 
>  - Optimise loop to reduce redundant operations in contpte_ptep_get()
> 
>  - Remove ISB when resetting POR_EL0 during signal handling
> 
>  - Mark the kernel as tainted on SEA and SError panic
> 
>  - Remove redundant gcs_free() call
> 
> ----------------------------------------------------------------
> Ada Couprie Diaz (13):
>       arm64: debug: clean up single_step_handler logic
>       arm64: refactor aarch32_break_handler()
>       arm64: debug: call software breakpoint handlers statically
>       arm64: debug: call step handlers statically
>       arm64: debug: remove break/step handler registration infrastructure
>       arm64: entry: Add entry and exit functions for debug exceptions
>       arm64: debug: split hardware breakpoint exception entry
>       arm64: debug: refactor reinstall_suspended_bps()
>       arm64: debug: split single stepping exception entry
>       arm64: debug: split hardware watchpoint exception entry
>       arm64: debug: split brk64 exception entry
>       arm64: debug: split bkpt32 exception entry
>       arm64: debug: remove debug exception registration infrastructure
> 
> Alok Tiwari (3):
>       perf/cxlpmu: Fix devm_kcalloc() argument order in cxl_pmu_probe()
>       perf/cxlpmu: Remove unintended newline from IRQ name format string
>       perf/cxlpmu: Fix typos in cxl_pmu.c comments and documentation
> 
> Anshuman Khandual (6):
>       arm64/debug: Drop redundant DBG_MDSCR_* macros
>       KVM: selftests: Change MDSCR_EL1 register holding variables as uint64_t
>       arm64/sysreg: Add BRBE registers and fields
>       arm64: Handle BRBE booting requirements
>       KVM: arm64: nvhe: Disable branch generation in nVHE guests
>       arm64/mm: Drop redundant addr increment in set_huge_pte_at()
> 
> Breno Leitao (9):
>       arm64: Mandate VMAP_STACK
>       arm64: efi: Remove CONFIG_VMAP_STACK check
>       arm64: Remove CONFIG_VMAP_STACK conditionals from THREAD_SHIFT and THREAD_ALIGN
>       arm64: remove CONFIG_VMAP_STACK conditionals from irq stack setup
>       arm64: remove CONFIG_VMAP_STACK conditionals from traps overflow stack
>       arm64: remove CONFIG_VMAP_STACK checks from stacktrace overflow logic
>       arm64: remove CONFIG_VMAP_STACK checks from SDEI stack handling
>       arm64: remove CONFIG_VMAP_STACK checks from entry code
>       arm64: Mark kernel as tainted on SAE and SError panic
> 
> Catalin Marinas (4):
>       arm64: cpufeature: Introduce MATCH_ALL_EARLY_CPUS capability type
>       arm64: Kconfig: Keep selects somewhat alphabetically ordered
>       Merge branches 'for-next/livepatch', 'for-next/user-contig-bbml2', 'for-next/misc', 'for-next/acpi', 'for-next/debug-entry', 'for-next/feat_mte_tagged_far', 'for-next/kselftest', 'for-next/mdscr-cleanup' and 'for-next/vmap-stack', remote-tracking branch 'arm64/for-next/perf' into for-next/core
>       Merge branch 'for-next/feat_mte_store_only' into for-next/core
> 
> Colin Ian King (1):
>       perf: imx9_perf: make the read-only array mask static const
> 
> Dylan Hatch (1):
>       arm64/module: Use text-poke API for late relocations.
> 
> Jeremy Linton (1):
>       arm64/gcs: task_gcs_el0_enable() should use passed task
> 
> Junhao He (5):
>       drivers/perf: hisi: Simplify the probe process for each DDRC version
>       drivers/perf: hisi: Add support for HiSilicon DDRC v3 PMU driver
>       drivers/perf: hisi: Use ACPI driver_data to retrieve SLLC PMU information
>       drivers/perf: hisi: Add support for HiSilicon SLLC v3 PMU driver
>       drivers/perf: hisi: Relax the event number check of v2 PMUs
> 
> Kevin Brodsky (1):
>       arm64: signal: Remove ISB when resetting POR_EL0
> 
> Leo Yan (1):
>       perf: arm_spe: Relax period restriction
> 
> Li Chen (2):
>       ACPI: Return -ENODEV from acpi_parse_spcr() when SPCR support is disabled
>       ACPI: Suppress misleading SPCR console message when SPCR table is absent
> 
> Mark Brown (11):
>       kselftest/arm64: Convert tpidr2 test to use kselftest.h
>       kselftest/arm64: Fix check for setting new VLs in sve-ptrace
>       kselftest/arm64: Fix test for streaming FPSIMD write in sve-ptrace
>       kselftest/arm64: Specify SVE data when testing VL set in sve-ptrace
>       arm64/gcs: Don't call gcs_free() when releasing task_struct
>       kselftest/arm4: Provide local defines for AT_HWCAP3
>       kselftest/arm64: Allow sve-ptrace to run on SME only systems
>       kselftest/arm64: Test FPSIMD format data writes via NT_ARM_SVE in fp-ptrace
>       kselftest/arm64: Test SME on SME only systems in fp-ptrace
>       kselftest/arm64: Fix SVE write data generation for SME only systems
>       kselftest/arm64: Handle attempts to disable SM on SME only systems
> 
> Mark Rutland (1):
>       arm64: stacktrace: Check kretprobe_find_ret_addr() return value
> 
> Masahiro Yamada (2):
>       arm64: pi: use 'targets' instead of extra-y in Makefile
>       arm64: fix unnecessary rebuilding when CONFIG_DEBUG_EFI=y
> 
> MikoĊ‚aj Lenczewski (3):
>       arm64: Add BBM Level 2 cpu feature
>       iommu/arm: Add BBM Level 2 smmu feature
>       arm64/mm: Elide tlbi in contpte_convert() under BBML2
> 
> Rob Herring (Arm) (1):
>       perf: arm_pmuv3: Add support for the Branch Record Buffer Extension (BRBE)
> 
> Robin Murphy (4):
>       perf/arm-ni: Set initial IRQ affinity
>       perf/arm-cmn: Reduce stack usage during discovery
>       perf/arm: Add missing .suppress_bind_attrs
>       perf/arm-ni: Consolidate CPU affinity handling
> 
> Shouping Wang (1):
>       perf/arm-ni: Support sharing IRQs within an NI instance
> 
> Song Liu (2):
>       arm64: stacktrace: Implement arch_stack_walk_reliable()
>       arm64: Implement HAVE_LIVEPATCH
> 
> Xavier Xia (1):
>       arm64/mm: Optimize loop to reduce redundant operations of contpte_ptep_get
> 
> Yeoreum Yun (18):
>       arm64/cpufeature: Add FEAT_MTE_TAGGED_FAR feature
>       arm64: Report address tag when FEAT_MTE_TAGGED_FAR is supported
>       KVM: arm64: Expose FEAT_MTE_TAGGED_FAR feature to guest
>       kselftest/arm64: Add MTE_FAR hwcap test
>       kselftest/arm64/mte: Register mte signal handler with SA_EXPOSE_TAGBITS
>       kselftest/arm64/mte: Check MTE_FAR feature is supported
>       kselftest/arm64/mte: Add address tag related macro and function
>       kselftest/arm64/mte: Add verification for address tag in signal handler
>       kselftest/arm64/mte: Refactor check_mmap_option test
>       kselftest/arm64/mte: Add mtefar tests on check_mmap_options
>       arm64/cpufeature: Add MTE_STORE_ONLY feature
>       prctl: Introduce PR_MTE_STORE_ONLY
>       arm64/kernel: Support store-only mte tag check
>       arm64/hwcaps: Add MTE_STORE_ONLY hwcaps
>       KVM: arm64: Expose MTE_STORE_ONLY feature to guest
>       kselftest/arm64/abi: Add MTE_STORE_ONLY feature hwcap test
>       kselftest/arm64/mte: Preparation for mte store only test
>       kselftest/arm64/mte: Add MTE_STORE_ONLY testcases
> 
> Yicong Yang (3):
>       watchdog/perf: Provide function for adjusting the event period
>       arm64/watchdog_hld: Add a cpufreq notifier for update watchdog thresh
>       drivers/perf: hisi: Support PMUs with no interrupt
> 
> Zhiyuan Dai (1):
>       perf/arm-cmn: Broaden module description for wider interconnect support
> 
>  Documentation/arch/arm64/booting.rst               |  21 +
>  Documentation/arch/arm64/elf_hwcaps.rst            |   6 +
>  Documentation/arch/arm64/tagged-pointers.rst       |  11 +-
>  arch/arm64/Kconfig                                 |   4 +
>  arch/arm64/include/asm/assembler.h                 |   4 +-
>  arch/arm64/include/asm/cpufeature.h                |  28 +
>  arch/arm64/include/asm/debug-monitors.h            |  40 +-
>  arch/arm64/include/asm/el2_setup.h                 |  71 +-
>  arch/arm64/include/asm/exception.h                 |  14 +-
>  arch/arm64/include/asm/gcs.h                       |   2 +-
>  arch/arm64/include/asm/hwcap.h                     |   2 +
>  arch/arm64/include/asm/kgdb.h                      |  12 +
>  arch/arm64/include/asm/kprobes.h                   |   8 +
>  arch/arm64/include/asm/kvm_host.h                  |   2 +
>  arch/arm64/include/asm/memory.h                    |   6 +-
>  arch/arm64/include/asm/processor.h                 |   2 +
>  arch/arm64/include/asm/stacktrace.h                |   6 +-
>  arch/arm64/include/asm/sysreg.h                    |  16 +-
>  arch/arm64/include/asm/system_misc.h               |   4 -
>  arch/arm64/include/asm/thread_info.h               |   5 +-
>  arch/arm64/include/asm/traps.h                     |   6 +
>  arch/arm64/include/asm/uprobes.h                   |  11 +
>  arch/arm64/include/uapi/asm/hwcap.h                |   2 +
>  arch/arm64/kernel/Makefile                         |   2 +-
>  arch/arm64/kernel/acpi.c                           |  10 +-
>  arch/arm64/kernel/cpufeature.c                     | 116 ++-
>  arch/arm64/kernel/cpuinfo.c                        |   2 +
>  arch/arm64/kernel/debug-monitors.c                 | 277 +++----
>  arch/arm64/kernel/efi.c                            |   5 -
>  arch/arm64/kernel/entry-common.c                   | 156 +++-
>  arch/arm64/kernel/entry.S                          |   6 -
>  arch/arm64/kernel/hw_breakpoint.c                  |  60 +-
>  arch/arm64/kernel/irq.c                            |  13 -
>  arch/arm64/kernel/kgdb.c                           |  39 +-
>  arch/arm64/kernel/module.c                         | 101 ++-
>  arch/arm64/kernel/mte.c                            |  11 +-
>  arch/arm64/kernel/pi/Makefile                      |   2 +-
>  arch/arm64/kernel/probes/kprobes.c                 |  31 +-
>  arch/arm64/kernel/probes/kprobes_trampoline.S      |   2 +-
>  arch/arm64/kernel/probes/uprobes.c                 |  24 +-
>  arch/arm64/kernel/process.c                        |  13 +-
>  arch/arm64/kernel/sdei.c                           |   8 +-
>  arch/arm64/kernel/signal.c                         |   7 +-
>  arch/arm64/kernel/stacktrace.c                     |  59 +-
>  arch/arm64/kernel/traps.c                          |  84 +-
>  arch/arm64/kernel/watchdog_hld.c                   |  58 ++
>  arch/arm64/kvm/debug.c                             |   4 +
>  arch/arm64/kvm/hyp/nvhe/debug-sr.c                 |  32 +
>  arch/arm64/kvm/hyp/nvhe/switch.c                   |   2 +-
>  arch/arm64/kvm/sys_regs.c                          |  11 +-
>  arch/arm64/mm/contpte.c                            | 211 ++++-
>  arch/arm64/mm/fault.c                              |  83 +-
>  arch/arm64/mm/gcs.c                                |   6 -
>  arch/arm64/mm/hugetlbpage.c                        |   2 +-
>  arch/arm64/mm/proc.S                               |   2 +-
>  arch/arm64/tools/cpucaps                           |   3 +
>  arch/arm64/tools/sysreg                            | 132 +++
>  drivers/firmware/efi/libstub/Makefile.zboot        |   2 +-
>  drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c    |   3 +
>  drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c        |   3 +
>  drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h        |   2 +
>  drivers/perf/Kconfig                               |  11 +
>  drivers/perf/Makefile                              |   1 +
>  drivers/perf/arm-cmn.c                             |  20 +-
>  drivers/perf/arm-ni.c                              | 153 ++--
>  drivers/perf/arm_brbe.c                            | 805 +++++++++++++++++++
>  drivers/perf/arm_brbe.h                            |  47 ++
>  drivers/perf/arm_pmu.c                             |  16 +-
>  drivers/perf/arm_pmuv3.c                           | 107 ++-
>  drivers/perf/arm_spe_pmu.c                         |  18 +-
>  drivers/perf/cxl_pmu.c                             |  12 +-
>  drivers/perf/fsl_imx9_ddr_perf.c                   |   8 +-
>  drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c      | 354 ++++----
>  drivers/perf/hisilicon/hisi_uncore_hha_pmu.c       |   6 +-
>  drivers/perf/hisilicon/hisi_uncore_pa_pmu.c        |   2 +-
>  drivers/perf/hisilicon/hisi_uncore_pmu.c           |  11 +-
>  drivers/perf/hisilicon/hisi_uncore_pmu.h           |   2 +
>  drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c      | 220 +++--
>  include/linux/acpi.h                               |   2 +-
>  include/linux/nmi.h                                |   2 +
>  include/linux/perf/arm_pmu.h                       |   8 +
>  include/uapi/linux/prctl.h                         |   2 +
>  kernel/watchdog_perf.c                             |  22 +
>  tools/testing/selftests/arm64/abi/Makefile         |   2 +-
>  tools/testing/selftests/arm64/abi/hwcap.c          |  16 +
>  tools/testing/selftests/arm64/abi/tpidr2.c         | 140 +---
>  tools/testing/selftests/arm64/fp/fp-ptrace.c       |  77 +-
>  tools/testing/selftests/arm64/fp/sve-ptrace.c      |  12 +-
>  .../selftests/arm64/mte/check_buffer_fill.c        |  12 +-
>  .../selftests/arm64/mte/check_child_memory.c       |   8 +-
>  .../selftests/arm64/mte/check_hugetlb_options.c    |  10 +-
>  .../selftests/arm64/mte/check_ksm_options.c        |   6 +-
>  .../selftests/arm64/mte/check_mmap_options.c       | 890 +++++++++++++++++++--
>  tools/testing/selftests/arm64/mte/check_prctl.c    |  29 +-
>  .../selftests/arm64/mte/check_tags_inclusion.c     |  10 +-
>  tools/testing/selftests/arm64/mte/check_user_mem.c |   4 +-
>  .../testing/selftests/arm64/mte/mte_common_util.c  |  84 +-
>  .../testing/selftests/arm64/mte/mte_common_util.h  |   9 +-
>  tools/testing/selftests/arm64/mte/mte_def.h        |   8 +
>  .../testing/selftests/kvm/arm64/debug-exceptions.c |   4 +-
>  100 files changed, 3768 insertions(+), 1249 deletions(-)
>  create mode 100644 drivers/perf/arm_brbe.c
>  create mode 100644 drivers/perf/arm_brbe.h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ