[GIT PULL] arm64 updates for 6.10

Will Deacon will at kernel.org
Mon May 13 08:29:55 PDT 2024


Hi Linus,

Please pull these arm64 updates for 6.10. There's a summary in the tag,
but the most interesting parts are probably the mm changes from Ryan
which optimise the creation of the linear mapping at boot and
(separately) implement write-protect support for userfaultfd.

Outside of our usual directories, the Kbuild-related changes under
scripts/ have been acked by Masahiro whilst the drivers/acpi/ parts have
been acked by Rafael and the addition of cpumask_any_and_but() has been
acked by Yury.

I've also picked up some CPU errata workarounds since tagging this, so
I'll aim to send those next week.

Cheers,

Will

--->8

The following changes since commit e3ba51ab24fddef79fc212f9840de54db8fd1685:

  arm64: tlb: Fix TLBI RANGE operand (2024-04-10 18:22:28 +0100)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-upstream

for you to fetch changes up to 54e1a2aa61a7bf4af2799baf7ab2dc2712844245:

  Merge branch 'for-next/tlbi' into for-next/core (2024-05-09 15:56:26 +0100)

----------------------------------------------------------------
arm64 updates for 6.10

ACPI:
* Support for the Firmware ACPI Control Structure (FACS) signature
  feature which is used to reboot out of hibernation on some systems.

Kbuild:
* Support for building Flat Image Tree (FIT) images, where the kernel
  Image is compressed alongside a set of devicetree blobs.

Memory management:
* Optimisation of our early page-table manipulation for creation of the
  linear mapping.

* Support for userfaultfd write protection, which brings along some nice
  cleanups to our handling of invalid but present ptes.

* Extend our use of range TLBI invalidation at EL1.

Perf and PMUs:
* Ensure that the 'pmu->parent' pointer is correctly initialised by PMU
  drivers.

* Avoid allocating 'cpumask_t' types on the stack in some PMU drivers.

* Fix parsing of the CPU PMU "version" field in assembly code, as it
  doesn't follow the usual architectural rules.

* Add best-effort unwinding support for USER_STACKTRACE

* Minor driver fixes and cleanups.

Selftests:
* Minor cleanups to the arm64 selftests (missing NULL check, unused
  variable).

Miscellaneous
* Add a command-line alias for disabling 32-bit application support.

* Add part number for Neoverse-V2 CPUs.

* Minor fixes and cleanups.

----------------------------------------------------------------
Andrea della Porta (1):
      arm64: Add the arm64.no32bit_el0 command line option

Andy Shevchenko (1):
      drivers/perf: thunderx2_pmu: Replace open coded acpi_match_acpi_device()

Besar Wicaksono (1):
      arm64: Add Neoverse-V2 part

David Woodhouse (2):
      ACPICA: Detect FACS even for hardware reduced platforms
      arm64: acpi: Honour firmware_signature field of FACS, if it exists

Dawei Li (9):
      perf/alibaba_uncore_drw: Avoid placing cpumask on the stack
      perf/arm-cmn: Avoid placing cpumask on the stack
      perf/arm_cspmu: Avoid placing cpumask on the stack
      perf/arm_dsu: Avoid placing cpumask on the stack
      perf/dwc_pcie: Avoid placing cpumask on the stack
      perf/hisi_pcie: Avoid placing cpumask on the stack
      perf/hisi_uncore: Avoid placing cpumask on the stack
      perf/qcom_l2: Avoid placing cpumask on the stack
      perf/thunderx2: Avoid placing cpumask on the stack

Gavin Shan (2):
      arm64: tlb: Improve __TLBI_VADDR_RANGE()
      arm64: tlb: Allow range operation for MAX_TLBI_RANGE_PAGES

George Guo (1):
      arm64: simplify arch_static_branch/_jump function

Hao Chen (1):
      drivers/perf: hisi: hns3: Actually use devm_add_action_or_reset()

Jinjie Ruan (1):
      arm64: Remove unnecessary irqflags alternative.h include

Joel Granados (1):
      drivers: perf: Remove the now superfluous sentinel elements from ctl_table array

Jonathan Cameron (23):
      perf/hisi-pcie: Assign parent for event_source device
      Documentation: hisi-pmu: Drop reference to /sys/devices path
      perf/hisi-uncore: Assign parents for event_source devices
      Documentation: hns-pmu: Use /sys/bus/event_source/devices paths
      perf/hisi-hns3: Assign parents for event_source device
      perf/amlogic: Assign parents for event_source devices
      perf/arm_cspmu: Assign parents for event_source devices
      Documentation: xgene-pmu: Use /sys/bus/event_source/devices paths
      perf/xgene: Assign parents for event_source devices
      Documentation: thunderx2-pmu: Use /sys/bus/event_source/devices paths
      perf/thunderx2: Assign parents for event_source devices
      perf/riscv: Assign parents for event_source devices
      Documentation: qcom-pmu: Use /sys/bus/event_source/devices paths
      perf/qcom: Assign parents for event_source devices
      perf/imx_ddr: Assign parents for event_source devices
      perf/arm_pmu: Assign parents for event_source devices
      perf/alibaba_uncore: Assign parents for event_source device
      perf/arm-cci: Assign parents for event_source device
      perf/arm-ccn: Assign parents for event_source device
      perf/arm-dmc620: Assign parents for event_source device
      perf/arm-dsu: Assign parents for event_source device
      perf/arm-smmuv3: Assign parents for event_source device
      perf/arm-spe: Assign parents for event_source device

Junhao He (2):
      drivers/perf: hisi_pcie: Fix out-of-bound access when valid event group
      drivers/perf: hisi: hns3: Fix out-of-bound access when valid event group

Kunwu Chan (1):
      kselftest: arm64: Add a null pointer check

Mark Rutland (3):
      cpumask: add cpumask_any_and_but()
      arm64: assembler: update stale comment for disable_step_tsk
      arm64: defer clearing DAIF.D

Robin Murphy (1):
      perf/arm-cmn: Set PMU device parent

Ryan Roberts (8):
      arm64: mm: Don't remap pgtables per-cont(pte|pmd) block
      arm64: mm: Batch dsb and isb when populating pgtables
      arm64: mm: Don't remap pgtables for allocate vs populate
      arm64/mm: generalize PMD_PRESENT_INVALID for all levels
      arm64/mm: Remove PTE_PROT_NONE bit
      arm64/mm: Move PTE_PRESENT_INVALID to overlay PTE_NG
      arm64/mm: Add uffd write-protect support
      arm64/mm: Fix pud_user_accessible_page() for PGTABLE_LEVELS <= 2

Shiqi Liu (1):
      arm64/sysreg: Update PIE permission encodings

Simon Glass (2):
      arm64: Add BOOT_TARGETS variable
      arm64: boot: Support Flat Image Tree

Will Deacon (7):
      Merge branch 'for-next/acpi' into for-next/core
      Merge branch 'for-next/kbuild' into for-next/core
      Merge branch 'for-next/misc' into for-next/core
      Merge branch 'for-next/mm' into for-next/core
      Merge branch 'for-next/perf' into for-next/core
      Merge branch 'for-next/selftests' into for-next/core
      Merge branch 'for-next/tlbi' into for-next/core

Yicong Yang (1):
      arm64: arm_pmuv3: Correctly extract and check the PMUVer

chenqiwu (1):
      arm64: Add USER_STACKTRACE support

xieming (1):
      kselftest/arm64: Remove unused parameters in abi test

 Documentation/admin-guide/kernel-parameters.txt  |   3 +
 Documentation/admin-guide/perf/hisi-pmu.rst      |   1 -
 Documentation/admin-guide/perf/hns3-pmu.rst      |   8 +-
 Documentation/admin-guide/perf/qcom_l2_pmu.rst   |   2 +-
 Documentation/admin-guide/perf/qcom_l3_pmu.rst   |   2 +-
 Documentation/admin-guide/perf/thunderx2-pmu.rst |   2 +-
 Documentation/admin-guide/perf/xgene-pmu.rst     |   2 +-
 Documentation/process/changes.rst                |   9 +
 MAINTAINERS                                      |   7 +
 arch/arm64/Kconfig                               |   2 +
 arch/arm64/Makefile                              |  11 +-
 arch/arm64/boot/.gitignore                       |   1 +
 arch/arm64/boot/Makefile                         |   6 +-
 arch/arm64/include/asm/assembler.h               |  13 +-
 arch/arm64/include/asm/cputype.h                 |   2 +
 arch/arm64/include/asm/el2_setup.h               |   9 +-
 arch/arm64/include/asm/irqflags.h                |   1 -
 arch/arm64/include/asm/jump_label.h              |  28 ++-
 arch/arm64/include/asm/pgtable-prot.h            |  19 +-
 arch/arm64/include/asm/pgtable.h                 | 114 ++++++---
 arch/arm64/include/asm/sysreg.h                  |  24 +-
 arch/arm64/include/asm/tlbflush.h                |  33 ++-
 arch/arm64/kernel/acpi.c                         |  10 +
 arch/arm64/kernel/perf_callchain.c               | 118 +--------
 arch/arm64/kernel/pi/idreg-override.c            |   2 +
 arch/arm64/kernel/setup.c                        |  11 +-
 arch/arm64/kernel/smp.c                          |   7 +
 arch/arm64/kernel/stacktrace.c                   | 120 ++++++++++
 arch/arm64/mm/mmu.c                              | 101 ++++----
 arch/arm64/mm/proc.S                             |  10 -
 drivers/acpi/acpica/tbfadt.c                     |  30 +--
 drivers/acpi/acpica/tbutils.c                    |   7 +-
 drivers/perf/alibaba_uncore_drw_pmu.c            |  11 +-
 drivers/perf/amlogic/meson_ddr_pmu_core.c        |   1 +
 drivers/perf/arm-cci.c                           |   1 +
 drivers/perf/arm-ccn.c                           |   1 +
 drivers/perf/arm-cmn.c                           |  11 +-
 drivers/perf/arm_cspmu/arm_cspmu.c               |   9 +-
 drivers/perf/arm_dmc620_pmu.c                    |   1 +
 drivers/perf/arm_dsu_pmu.c                       |  20 +-
 drivers/perf/arm_pmu_platform.c                  |   1 +
 drivers/perf/arm_smmuv3_pmu.c                    |   1 +
 drivers/perf/arm_spe_pmu.c                       |   1 +
 drivers/perf/dwc_pcie_pmu.c                      |  10 +-
 drivers/perf/fsl_imx8_ddr_perf.c                 |   1 +
 drivers/perf/hisilicon/hisi_pcie_pmu.c           |  24 +-
 drivers/perf/hisilicon/hisi_uncore_pmu.c         |   7 +-
 drivers/perf/hisilicon/hns3_pmu.c                |  17 +-
 drivers/perf/qcom_l2_pmu.c                       |   9 +-
 drivers/perf/qcom_l3_pmu.c                       |   1 +
 drivers/perf/riscv_pmu_legacy.c                  |   1 +
 drivers/perf/riscv_pmu_sbi.c                     |   2 +-
 drivers/perf/thunderx2_pmu.c                     |  30 +--
 drivers/perf/xgene_pmu.c                         |   1 +
 include/linux/cpumask.h                          |  23 ++
 scripts/Makefile.lib                             |  16 ++
 scripts/make_fit.py                              | 290 +++++++++++++++++++++++
 tools/arch/arm64/include/asm/sysreg.h            |  24 +-
 tools/testing/selftests/arm64/abi/tpidr2.c       |   2 +-
 tools/testing/selftests/arm64/tags/tags_test.c   |   4 +
 60 files changed, 859 insertions(+), 376 deletions(-)
 create mode 100755 scripts/make_fit.py



More information about the linux-arm-kernel mailing list