linux/drivers/perf
Linus Torvalds 1b8b675037 RISC-V updates for v7.4
- Add support for crash hotplug
 
 - Improve user copy performance on cores with fast misaligned
   accesses
 
 - Optimize code paths involving pgtable_l{4,5}_enabled() by patching
   in the return values during early boot (since these don't change
   during runtime), or by specifying the return values directly in
   Kconfig files (for purpose-built kernels)
 
 - Change the PCIe bus reassignment behavior to depend on the
   PCI_REASSIGN_ALL_BUS PCI flag (as ARM64 does)
 
 - Avoid an unnecessary sstatus CSR read during context switch
 
 - Make the sbi_ecall() macro variadic, improving code clarity
 
 - Refactor __switch_to_vector() to prepare for upcoming vector context
   switch optimizations
 
 - Add a kselftest for vectorized user copy
 
 - Add bounds checking on the shadow stack restore token address to
   avoid it being used as an attack vector
 
 - Fix the shadow stack and indirect branch landing pad control functions to
   only update the CPU's envcfg CSR when operating on the current task
 
 - For MIPS RISC-V systems, add support for early boot-applied errata;
   and for P8700 RISC-V systems, avoid WFI usage in the kernel (since
   it is buggy)
 
 - Add the "B" RISC-V ISA extension to hwcap and hwprobe reporting
 
 - Add support for specifying and reporting the "Zic64b" RISC-V ISA
   extension, and add it to the SpacemiT K1, K3, and Sophgo SG2044 DT
   files
 
 - Require the block size of cache management operations to be
   specified in DT schema validation for the RISC-V ISA extensions
   Zicbom, Zicbop, and Zicboz
 
 - Some miscellaneous fixes: fix an incorrect bitfield width in the
   RVG_SYSTEM_CSR_MASK bitmask macro; make RISCV_ALTERNATIVE mandatory,
   now that XIP kernel support has been removed; and remove some
   unnecessary includes in kernel/smp.c
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEElRDoIDdEz9/svf2Kx4+xDQu9KksFAmrivM8ACgkQx4+xDQu9
 KkubQw//ann5hPn4CqJh4UjYlhbHM4QxaVpYs6i9fTGdyw1R+JcWxglcAuCkuEHl
 At5BFt2aR5y1FQwJqbVUYI0nxJCVCQNPf+6aormHtWnCrxM+9e5jE4Wqhae9BDpB
 yUNjRixJVU2Fz8O4WTeJBYsPaOguZXLNltlt5Oi14Zw85hCOX71bSkrORToY3CfQ
 L3FLe1gvGfeZyr6jj3c5RkcLHW01zrR0H3/dOcy8T+rEfVLHp90/fUufZPnrW5rj
 fIlbDRpQ5ZRlYr5hZ8X+U6Zs6qThGV5LX00wPghrfzdCiD6X7EnYNtmMaTV9aLlS
 UZSNrOCHf8lwogvwxYhdQuO+6F72Vj38Y/3CYjwi1+1FuukDlT2mejsXXU3JN8T/
 8tCY7zAB0KpTDK1N2Udr+zDXKCQuZ7YYpQJ9UxKjMAn7NwZKB4PmUjfXfSIsKLps
 FtzGWa8OM8a5GagpSHewA5c/SVLlkmrlE/0/GtzA4DfVMJyNt37OUWfEogXT7A8A
 9neAIgG8K1Dhq8U20scDmDKyZHobOX7+nsVohUiduZgfSgL2P/qHuWhkjNeACliK
 FhJcwtGITsF/lrUUBBoAnSYjZwkytaoOwA8eSnNRRxrfzYCgQWCxyYcXqMKI2KyK
 FQQlKbEm8eML88f+E9W0t6QqeFMtq6h8GXU8+B0TvrVz0DGfoH0=
 =Vdpl
 -----END PGP SIGNATURE-----

Merge tag 'riscv-for-linus-7.4-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux

Pull RISC-V updates from Paul Walmsley:

 - Add support for crash hotplug

 - Improve user copy performance on cores with fast misaligned accesses

 - Optimize code paths involving pgtable_l{4,5}_enabled() by patching in
   the return values during early boot (since these don't change during
   runtime), or by specifying the return values directly in Kconfig
   files (for purpose-built kernels)

 - Change the PCIe bus reassignment behavior to depend on the
   PCI_REASSIGN_ALL_BUS PCI flag (as ARM64 does)

 - Avoid an unnecessary sstatus CSR read during context switch

 - Make the sbi_ecall() macro variadic, improving code clarity

 - Refactor __switch_to_vector() to prepare for upcoming vector context
   switch optimizations

 - Add a kselftest for vectorized user copy

 - Add bounds checking on the shadow stack restore token address to
   avoid it being used as an attack vector

 - Fix the shadow stack and indirect branch landing pad control
   functions to only update the CPU's envcfg CSR when operating on the
   current task

 - For MIPS RISC-V systems, add support for early boot-applied errata;
   and for P8700 RISC-V systems, avoid WFI usage in the kernel (since it
   is buggy)

 - Add the "B" RISC-V ISA extension to hwcap and hwprobe reporting

 - Add support for specifying and reporting the "Zic64b" RISC-V ISA
   extension, and add it to the SpacemiT K1, K3, and Sophgo SG2044 DT
   files

 - Require the block size of cache management operations to be specified
   in DT schema validation for the RISC-V ISA extensions Zicbom, Zicbop,
   and Zicboz

 - Some miscellaneous fixes: fix an incorrect bitfield width in the
   RVG_SYSTEM_CSR_MASK bitmask macro; make RISCV_ALTERNATIVE mandatory,
   now that XIP kernel support has been removed; and remove some
   unnecessary includes in kernel/smp.c

* tag 'riscv-for-linus-7.4-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (28 commits)
  riscv: mm: unexport _pgtable_l4_enabled and _pgtable_l5_enabled
  riscv: introduce RISCV_ISA_SV48 and RISCV_ISA_SV57
  riscv: support early isa ext and use it to optimize pgtable_l4|l5_enabled
  riscv: convert pgtable_l4|l5_enabled to inline function
  riscv: remove RISCV_ALTERNATIVE Kconfig option
  riscv: Add a getter for user PMLEN support
  riscv: dts: sophgo: sg2044: Add Zic64b ISA extension
  riscv: dts: spacemit: k1: Add Zic64b ISA extension
  riscv: dts: spacemit: k3: Add Zic64b ISA extension
  riscv: Add Zic64b to cpufeature and hwprobe
  dt-bindings: riscv: Add Zic64b extension description
  dt-bindings: riscv: Require block-size for Zicbom, Zicbop, and Zicboz
  riscv: Add B to hwcap and hwprobe
  riscv: remove unused profile.h includes
  riscv: cfi: Only write envcfg CSR when task is current
  riscv: cfi: Bounds check restore token before swap
  riscv: Add ERRATA_MIPS_P8700_WFI to replace WFI with mips.pause
  selftest: riscv: test vectorized user copy
  riscv: vector: refactor context switch for kernel-mode vector
  riscv: do not read csr in vector context switch
  ...
2026-10-29 12:33:25 -10:00
..
amlogic perf: Use sysfs_emit() for cpumask show callbacks 2026-07-22 15:38:37 -04:00
arm_cspmu drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
hisilicon Driver core changes for 7.4-rc1 2026-10-21 18:53:14 -10:00
alibaba_uncore_drw_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
apple_m1_cpu_pmu.c drivers/perf: apple_m1: Add macOS 27 M2 Event 2026-10-04 21:19:37 +00:00
arm_brbe.c Core features: 2026-10-20 07:55:19 -10:00
arm_brbe.h
arm_dmc620_pmu.c perf: Use sysfs_emit() for cpumask show callbacks 2026-07-22 15:38:37 -04:00
arm_dsu_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
arm_pmu_acpi.c perf: arm_pmu_acpi: Get rid of the edge-triggered interrupt oddity 2026-08-02 11:16:22 +00:00
arm_pmu_platform.c
arm_pmu.c bitmap updates for v7.3 2026-08-20 11:41:46 -07:00
arm_pmuv3.c perf: arm_pmuv3: Zero initialize hw_id branch stack field 2026-08-07 11:55:16 +00:00
arm_smmuv3_pmu.c perf: Use sysfs_emit() for cpumask show callbacks 2026-07-22 15:38:37 -04:00
arm_spe_pmu.c Driver core changes for 7.4-rc1 2026-10-21 18:53:14 -10:00
arm_v6_pmu.c
arm_v7_pmu.c
arm_xscale_pmu.c
arm-cci.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
arm-ccn.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
arm-cmn.c perf/arm-cmn: Fix multi-filter encoding 2026-09-18 11:11:34 +00:00
arm-ni.c perf: Use sysfs_emit() for cpumask show callbacks 2026-07-22 15:38:37 -04:00
cxl_pmu.c Driver core changes for 7.4-rc1 2026-10-21 18:53:14 -10:00
dwc_pcie_pmu.c perf/dwc_pcie: Fix PCI device reference leak in probe 2026-10-04 17:19:37 +00:00
fsl_imx8_ddr_perf.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
fsl_imx9_ddr_perf.c bitmap updates for v7.3 2026-08-20 11:41:46 -07:00
fujitsu_uncore_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
Kconfig
Makefile
marvell_cn10k_ddr_pmu.c perf: marvell: avoid large stack variables 2026-10-04 17:22:11 +00:00
marvell_cn10k_tad_pmu.c perf/marvell: cn10k_tad: Publish the OF module alias 2026-10-04 21:18:50 +00:00
marvell_pem_pmu.c perf: Use sysfs_emit() for cpumask show callbacks 2026-07-22 15:38:37 -04:00
nvidia_t410_c2c_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
nvidia_t410_cmem_latency_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
qcom_l2_pmu.c bitmap updates for v7.3 2026-08-20 11:41:46 -07:00
qcom_l3_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
riscv_pmu_legacy.c perf: RISC-V: store available counter mask as bitmap 2026-09-01 19:19:26 -06:00
riscv_pmu_sbi.c RISC-V: make use of variadic sbi_ecall 2026-10-05 19:02:54 -06:00
riscv_pmu.c
starfive_starlink_pmu.c drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute 2026-09-16 18:17:40 +01:00
thunderx2_pmu.c perf: Use sysfs_emit() for cpumask show callbacks 2026-07-22 15:38:37 -04:00
xgene_pmu.c Driver core changes for 7.4-rc1 2026-10-21 18:53:14 -10:00