mirror of
https://github.com/torvalds/linux.git
synced 2026-08-15 12:00:16 +02:00
- A set of commits which reduce the stack usage of various perf event
handling functions which allocated large data structs on stack causing
stack overflows in the worst case.
- Use the proper mechanism for detecting soft interrupts in the recursion
protection.
- Make the resursion protection simpler and more robust.
- Simplify the scheduling of event groups to make the code more robust and
prepare for fixing the issues vs. scheduling of exclusive event groups.
- Prevent event multiplexing and rotation for exclusive event groups
- Correct the perf event attribute exclusive semantics to take pinned
events, e.g. the PMU watchdog, into account
- Make the anythread filtering conditional for Intel's generic PMU
counters as it is not longer guaranteed to be supported on newer
CPUs. Check the corresponding CPUID leaf to make sure.
- Fixup a duplicate initialization in an array which was probably cause by
the usual copy & paste - forgot to edit mishap.
-----BEGIN PGP SIGNATURE-----
iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAl+xIi0THHRnbHhAbGlu
dXRyb25peC5kZQAKCRCmGPVMDXSYofixD/4+4gc8DhOmAkMrN0Z9tiW8ebgMKmb9
wZRkMr5Osi0GzLJOPZ6SdY6jd0A3rMN/sW6P1DT6pDtcty4bKFoW5VZBuUDIAhel
BC4C93L3y1En/GEZu1GTy3LvsBwLBQTOoY4goDjbdAbk60S/0RTHOGyQsRsOQFe6
fVs3iXozAFuaR6I6N3dlxuJAE51zvr8MyBWaUoByNDB//1+lLNW+JfClaAOG1oXx
qZIg/niatBVGzSGgKNRUyh3g8G1HJtabsA/NZ4PH8ZHuYABfmj4lmmUPR77ICLfV
wMITEBG7eaktB8EqM9hvaoOZLA5kpXHO2JbCFSs4c4x11mlC8g7QMV3poCw33YoN
a5TmT1A3muri1riy1/Ee9lXACOq7/tf2+Xfn9o6dvDdBwd6s5pzlhLGR8gILp2lF
2bcg3IwYvHT/Kiurb/WGNpbCqQIPJpcUcfs3tNBCCtKegahUQNnGjxN3NVo9RCit
zfL6xIJ8eZiYnsxXx4NKm744AukWiql3aRNgRkOdBP5WC68xt6VLcxG1YZKUoDhy
jRSOCD/DuPSMSvAAgN7S8OWlPsKWBxVxxWYV+K8FpwhgzbQ3WbS3UDiYkhgjeOxu
OlM692oWpllKvQWlvYthr2Be6oPCRRi1vvADNNbTKzgHk5i61bwympsGl1EZx3Pz
2ROp7NJFRESnqw==
=FzCf
-----END PGP SIGNATURE-----
Merge tag 'perf-urgent-2020-11-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf fixes from Thomas Gleixner:
"A set of fixes for perf:
- A set of commits which reduce the stack usage of various perf
event handling functions which allocated large data structs on
stack causing stack overflows in the worst case
- Use the proper mechanism for detecting soft interrupts in the
recursion protection
- Make the resursion protection simpler and more robust
- Simplify the scheduling of event groups to make the code more
robust and prepare for fixing the issues vs. scheduling of
exclusive event groups
- Prevent event multiplexing and rotation for exclusive event groups
- Correct the perf event attribute exclusive semantics to take
pinned events, e.g. the PMU watchdog, into account
- Make the anythread filtering conditional for Intel's generic PMU
counters as it is not longer guaranteed to be supported on newer
CPUs. Check the corresponding CPUID leaf to make sure
- Fixup a duplicate initialization in an array which was probably
caused by the usual 'copy & paste - forgot to edit' mishap"
* tag 'perf-urgent-2020-11-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
perf/x86/intel/uncore: Fix Add BW copypasta
perf/x86/intel: Make anythread filter support conditional
perf: Tweak perf_event_attr::exclusive semantics
perf: Fix event multiplexing for exclusive groups
perf: Simplify group_sched_in()
perf: Simplify group_sched_out()
perf/x86: Make dummy_iregs static
perf/arch: Remove perf_sample_data::regs_user_copy
perf: Optimize get_recursion_context()
perf: Fix get_recursion_context()
perf/x86: Reduce stack usage for x86_pmu::drain_pebs()
perf: Reduce stack usage of perf_output_begin()
|
||
|---|---|---|
| .. | ||
| probes | ||
| vdso | ||
| vdso32 | ||
| .gitignore | ||
| acpi_numa.c | ||
| acpi_parking_protocol.c | ||
| acpi.c | ||
| alternative.c | ||
| armv8_deprecated.c | ||
| asm-offsets.c | ||
| cacheinfo.c | ||
| cpu_errata.c | ||
| cpu_ops.c | ||
| cpu-reset.h | ||
| cpu-reset.S | ||
| cpufeature.c | ||
| cpuidle.c | ||
| cpuinfo.c | ||
| crash_core.c | ||
| crash_dump.c | ||
| debug-monitors.c | ||
| efi-entry.S | ||
| efi-header.S | ||
| efi-rt-wrapper.S | ||
| efi.c | ||
| entry-common.c | ||
| entry-fpsimd.S | ||
| entry-ftrace.S | ||
| entry.S | ||
| fpsimd.c | ||
| ftrace.c | ||
| head.S | ||
| hibernate-asm.S | ||
| hibernate.c | ||
| hw_breakpoint.c | ||
| hyp-stub.S | ||
| image-vars.h | ||
| image.h | ||
| insn.c | ||
| io.c | ||
| irq.c | ||
| jump_label.c | ||
| kaslr.c | ||
| kexec_image.c | ||
| kgdb.c | ||
| kuser32.S | ||
| machine_kexec_file.c | ||
| machine_kexec.c | ||
| Makefile | ||
| module-plts.c | ||
| module.c | ||
| mte.c | ||
| paravirt.c | ||
| pci.c | ||
| perf_callchain.c | ||
| perf_event.c | ||
| perf_regs.c | ||
| pointer_auth.c | ||
| process.c | ||
| proton-pack.c | ||
| psci.c | ||
| ptrace.c | ||
| reloc_test_core.c | ||
| reloc_test_syms.S | ||
| relocate_kernel.S | ||
| return_address.c | ||
| scs.c | ||
| sdei.c | ||
| setup.c | ||
| signal.c | ||
| signal32.c | ||
| sigreturn32.S | ||
| sleep.S | ||
| smccc-call.S | ||
| smp_spin_table.c | ||
| smp.c | ||
| stacktrace.c | ||
| suspend.c | ||
| sys_compat.c | ||
| sys.c | ||
| sys32.c | ||
| syscall.c | ||
| time.c | ||
| topology.c | ||
| trace-events-emulation.h | ||
| traps.c | ||
| vdso.c | ||
| vmlinux.lds.S | ||