Pull arm64 updates from Catalin Marinas: - arm64 support for syscall emulation via PTRACE_SYSEMU{,_SINGLESTEP} - Wire up VM_FLUSH_RESET_PERMS for arm64, allowing the core code to manage the permissions of executable vmalloc regions more strictly - Slight performance improvement by keeping softirqs enabled while touching the FPSIMD/SVE state (kernel_neon_begin/end) - Expose a couple of ARMv8.5 features to user (HWCAP): CondM (new XAFLAG and AXFLAG instructions for floating point comparison flags manipulation) and FRINT (rounding floating point numbers to integers) - Re-instate ARM64_PSEUDO_NMI support which was previously marked as BROKEN due to some bugs (now fixed) - Improve parking of stopped CPUs and implement an arm64-specific panic_smp_self_stop() to avoid warning on not being able to stop secondary CPUs during panic - perf: enable the ARM Statistical Profiling Extensions (SPE) on ACPI platforms - perf: DDR performance monitor support for iMX8QXP - cache_line_size() can now be set from DT or ACPI/PPTT if provided to cope with a system cache info not exposed via the CPUID registers - Avoid warning on hardware cache line size greater than ARCH_DMA_MINALIGN if the system is fully coherent - arm64 do_page_fault() and hugetlb cleanups - Refactor set_pte_at() to avoid redundant READ_ONCE(*ptep) - Ignore ACPI 5.1 FADTs reported as 5.0 (infer from the 'arm_boot_flags' introduced in 5.1) - CONFIG_RANDOMIZE_BASE now enabled in defconfig - Allow the selection of ARM64_MODULE_PLTS, currently only done via RANDOMIZE_BASE (and an erratum workaround), allowing modules to spill over into the vmalloc area - Make ZONE_DMA32 configurable * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (54 commits) perf: arm_spe: Enable ACPI/Platform automatic module loading arm_pmu: acpi: spe: Add initial MADT/SPE probing ACPI/PPTT: Add function to return ACPI 6.3 Identical tokens ACPI/PPTT: Modify node flag detection to find last IDENTICAL x86/entry: Simplify _TIF_SYSCALL_EMU handling arm64: rename dump_instr as dump_kernel_instr arm64/mm: Drop [PTE|PMD]_TYPE_FAULT arm64: Implement panic_smp_self_stop() arm64: Improve parking of stopped CPUs arm64: Expose FRINT capabilities to userspace arm64: Expose ARMv8.5 CondM capability to userspace arm64: defconfig: enable CONFIG_RANDOMIZE_BASE arm64: ARM64_MODULES_PLTS must depend on MODULES arm64: bpf: do not allocate executable memory arm64/kprobes: set VM_FLUSH_RESET_PERMS on kprobe instruction pages arm64/mm: wire up CONFIG_ARCH_HAS_SET_DIRECT_MAP arm64: module: create module allocations without exec permissions arm64: Allow user selection of ARM64_MODULE_PLTS acpi/arm64: ignore 5.1 FADTs that are reported as 5.0 arm64: Allow selecting Pseudo-NMI again ...
Showing the changes to include/linux (3 of 64 files). Show all
Unified · Split
| @@ -1303,6 +1303,7 @@ static inline int lpit_read_residency_count_address(u64 *address) · 1302 unmodified lines | ||
| 1303 | 1303 | #ifdef CONFIG_ACPI_PPTT |
| 1304 | 1304 | int find_acpi_cpu_topology(unsigned int cpu, int level); |
| 1305 | 1305 | int find_acpi_cpu_topology_package(unsigned int cpu); |
| 1306 | +int find_acpi_cpu_topology_hetero_id(unsigned int cpu); | |
| 1306 | 1307 | int find_acpi_cpu_cache_topology(unsigned int cpu, int level); |
| 1307 | 1308 | #else |
| 1308 | 1309 | static inline int find_acpi_cpu_topology(unsigned int cpu, int level) |
| @@ -1313,6 +1314,10 @@ static inline int find_acpi_cpu_topology_package(unsigned int cpu) · 4 unmodified lines | ||
| 1313 | 1314 | { |
| 1314 | 1315 | return -EINVAL; |
| 1315 | 1316 | } |
| 1317 | +static inline int find_acpi_cpu_topology_hetero_id(unsigned int cpu) | |
| 1318 | +{ | |
| 1319 | + return -EINVAL; | |
| 1320 | +} | |
| 1316 | 1321 | static inline int find_acpi_cpu_cache_topology(unsigned int cpu, int level) |
| 1317 | 1322 | { |
| 1318 | 1323 | return -EINVAL; |
| @@ -17,6 +17,8 @@ enum cache_type { · 16 unmodified lines | ||
| 17 | 17 | CACHE_TYPE_UNIFIED = BIT(2), |
| 18 | 18 | }; |
| 19 | 19 | |
| 20 | +extern unsigned int coherency_max_size; | |
| 21 | + | |
| 20 | 22 | /** |
| 21 | 23 | * struct cacheinfo - represent a cache leaf node |
| 22 | 24 | * @id: This cache's id. It is unique among caches with the same (type, level). |
| @@ -171,4 +171,6 @@ void armpmu_free_irq(int irq, int cpu); · 170 unmodified lines | ||
| 171 | 171 | |
| 172 | 172 | #endif /* CONFIG_ARM_PMU */ |
| 173 | 173 | |
| 174 | +#define ARMV8_SPE_PDEV_NAME "arm,spe-v1" | |
| 175 | + | |
| 174 | 176 | #endif /* __ARM_PMU_H__ */ |