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-next>] [day] [month] [year] [list]
Message-Id: <20250725143925.1674618-1-catalin.marinas@arm.com>
Date: Fri, 25 Jul 2025 15:39:25 +0100
From: Catalin Marinas <catalin.marinas@....com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Catalin Marinas <cmarinas@...nel.org>,
	Will Deacon <will@...nel.org>,
	linux-arm-kernel@...ts.infradead.org,
	linux-kernel@...r.kernel.org
Subject: [GIT PULL] arm64 updates for 6.17

From: Catalin Marinas <cmarinas@...nel.org>

Hi Linus,

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.

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