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: <Z44md4du6C1un3FB@gmail.com>
Date: Mon, 20 Jan 2025 11:33:27 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Peter Zijlstra <peterz@...radead.org>,
	Arnaldo Carvalho de Melo <acme@...hat.com>,
	Jiri Olsa <jolsa@...nel.org>,
	Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
	Mark Rutland <mark.rutland@....com>,
	Namhyung Kim <namhyung@...nel.org>,
	linux-perf-users@...r.kernel.org
Subject: [GIT PULL] Performance events changes for v6.14

Linus,

Please pull the latest perf/core Git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-core-2025-01-20

   # HEAD: b709eb872e19a19607bbb6d2975bc264d59735cf perf: map pages in advance

Performance events changes for v6.14:

 - Seqlock optimizations that arose in a perf context and were
   merged into the perf tree:

   - seqlock: Add raw_seqcount_try_begin (Suren Baghdasaryan)
   - mm: Convert mm_lock_seq to a proper seqcount ((Suren Baghdasaryan)
   - mm: Introduce mmap_lock_speculate_{try_begin|retry} (Suren Baghdasaryan)
   - mm/gup: Use raw_seqcount_try_begin() (Peter Zijlstra)

 - Core perf enhancements:

   - Reduce 'struct page' footprint of perf by mapping pages
     in advance (Lorenzo Stoakes)
   - Save raw sample data conditionally based on sample type (Yabin Cui)
   - Reduce sampling overhead by checking sample_type in
     perf_sample_save_callchain() and perf_sample_save_brstack() (Yabin Cui)
   - Export perf_exclude_event() (Namhyung Kim)

 - Uprobes scalability enhancements: (Andrii Nakryiko)

   - Simplify find_active_uprobe_rcu() VMA checks
   - Add speculative lockless VMA-to-inode-to-uprobe resolution
   - Simplify session consumer tracking
   - Decouple return_instance list traversal and freeing
   - Ensure return_instance is detached from the list before freeing
   - Reuse return_instances between multiple uretprobes within task
   - Guard against kmemdup() failing in dup_return_instance()

 - AMD core PMU driver enhancements:

   - Relax privilege filter restriction on AMD IBS (Namhyung Kim)

 - AMD RAPL energy counters support: (Dhananjay Ugwekar)

   - Introduce topology_logical_core_id() (K Prateek Nayak)

   - Remove the unused get_rapl_pmu_cpumask() function
   - Remove the cpu_to_rapl_pmu() function
   - Rename rapl_pmu variables
   - Make rapl_model struct global
   - Add arguments to the init and cleanup functions
   - Modify the generic variable names to *_pkg*
   - Remove the global variable rapl_msrs
   - Move the cntr_mask to rapl_pmus struct
   - Add core energy counter support for AMD CPUs

 - Intel core PMU driver enhancements:

   - Support RDPMC 'metrics clear mode' feature (Kan Liang)
   - Clarify adaptive PEBS processing (Kan Liang)
   - Factor out functions for PEBS records processing (Kan Liang)
   - Simplify the PEBS records processing for adaptive PEBS (Kan Liang)

 - Intel uncore driver enhancements: (Kan Liang)

   - Convert buggy pmu->func_id use to pmu->registered
   - Support more units on Granite Rapids

 Thanks,

	Ingo

------------------>
Andrii Nakryiko (7):
      uprobes: simplify find_active_uprobe_rcu() VMA checks
      uprobes: add speculative lockless VMA-to-inode-to-uprobe resolution
      uprobes: Simplify session consumer tracking
      uprobes: Decouple return_instance list traversal and freeing
      uprobes: Ensure return_instance is detached from the list before freeing
      uprobes: Reuse return_instances between multiple uretprobes within task
      uprobes: Guard against kmemdup() failing in dup_return_instance()

Dhananjay Ugwekar (9):
      perf/x86/rapl: Remove the unused get_rapl_pmu_cpumask() function
      perf/x86/rapl: Remove the cpu_to_rapl_pmu() function
      perf/x86/rapl: Rename rapl_pmu variables
      perf/x86/rapl: Make rapl_model struct global
      perf/x86/rapl: Add arguments to the init and cleanup functions
      perf/x86/rapl: Modify the generic variable names to *_pkg*
      perf/x86/rapl: Remove the global variable rapl_msrs
      perf/x86/rapl: Move the cntr_mask to rapl_pmus struct
      perf/x86/rapl: Add core energy counter support for AMD CPUs

K Prateek Nayak (1):
      x86/topology: Introduce topology_logical_core_id()

Kan Liang (6):
      perf/x86/intel/ds: Clarify adaptive PEBS processing
      perf/x86/intel/ds: Factor out functions for PEBS records processing
      perf/x86/intel/ds: Simplify the PEBS records processing for adaptive PEBS
      perf/x86/intel: Support RDPMC metrics clear mode
      perf/x86/intel/uncore: Clean up func_id
      perf/x86/intel/uncore: Support more units on Granite Rapids

Lorenzo Stoakes (1):
      perf: map pages in advance

Namhyung Kim (2):
      perf/core: Export perf_exclude_event()
      perf/x86: Relax privilege filter restriction on AMD IBS

Peter Zijlstra (1):
      mm/gup: Use raw_seqcount_try_begin()

Suren Baghdasaryan (3):
      seqlock: add raw_seqcount_try_begin
      mm: convert mm_lock_seq to a proper seqcount
      mm: introduce mmap_lock_speculate_{try_begin|retry}

Yabin Cui (3):
      perf/core: Save raw sample data conditionally based on sample type
      perf/core: Check sample_type in perf_sample_save_callchain
      perf/core: Check sample_type in perf_sample_save_brstack


 Documentation/arch/x86/topology.rst   |   4 +
 arch/s390/kernel/perf_cpum_cf.c       |   2 +-
 arch/s390/kernel/perf_cpum_sf.c       |   6 +-
 arch/s390/kernel/perf_pai_crypto.c    |   2 +-
 arch/s390/kernel/perf_pai_ext.c       |   2 +-
 arch/x86/events/amd/core.c            |   3 +-
 arch/x86/events/amd/ibs.c             |  64 ++++--
 arch/x86/events/core.c                |   3 +-
 arch/x86/events/intel/core.c          |  20 +-
 arch/x86/events/intel/ds.c            | 198 +++++++++-------
 arch/x86/events/intel/uncore.c        |  20 +-
 arch/x86/events/intel/uncore.h        |   1 -
 arch/x86/events/intel/uncore_snb.c    |   2 +-
 arch/x86/events/intel/uncore_snbep.c  |  48 ++--
 arch/x86/events/perf_event.h          |   1 +
 arch/x86/events/rapl.c                | 415 ++++++++++++++++++++++------------
 arch/x86/include/asm/perf_event.h     |  20 +-
 arch/x86/include/asm/processor.h      |   1 +
 arch/x86/include/asm/topology.h       |   1 +
 arch/x86/kernel/cpu/debugfs.c         |   1 +
 arch/x86/kernel/cpu/topology_common.c |   1 +
 include/linux/mm.h                    |  12 +-
 include/linux/mm_types.h              |   7 +-
 include/linux/mmap_lock.h             |  84 +++++--
 include/linux/perf_event.h            |  32 ++-
 include/linux/seqlock.h               |  22 ++
 include/linux/uprobes.h               |  16 +-
 kernel/events/core.c                  | 156 ++++++++-----
 kernel/events/ring_buffer.c           |  19 +-
 kernel/events/uprobes.c               | 225 +++++++++++++-----
 kernel/fork.c                         |   5 +-
 kernel/trace/bpf_trace.c              |  11 +-
 mm/gup.c                              |   3 +-
 mm/init-mm.c                          |   2 +-
 tools/testing/vma/vma.c               |   4 +-
 tools/testing/vma/vma_internal.h      |   4 +-
 36 files changed, 938 insertions(+), 479 deletions(-)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ