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: <aDLdBucNJqaA4T4R@gmail.com>
Date: Sun, 25 May 2025 11:04:06 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Peter Zijlstra <peterz@...radead.org>,
	Thomas Gleixner <tglx@...utronix.de>, Will Deacon <will@...nel.org>,
	Waiman Long <longman@...hat.com>, Boqun Feng <boqun.feng@...il.com>,
	Borislav Petkov <bp@...en8.de>, Uros Bizjak <ubizjak@...il.com>,
	Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Subject: [GIT PULL] locking changes for v6.16

Linus,

Please pull the latest locking/core Git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git locking-core-2025-05-25

   # HEAD: 94ec70880fd376dd5cc60ba2bd7ddf830b3d4f28 Merge branch 'locking/futex' into locking/core, to pick up pending futex changes

Locking changes for v6.16:

  Futexes:

   - Add support for task local hash maps (Sebastian Andrzej Siewior,
     Peter Zijlstra)

   - Implement the FUTEX2_NUMA ABI, which feature extends the futex
     interface to be NUMA-aware. On NUMA-aware futexes a second u32
     word containing the NUMA node is added to after the u32 futex value
     word. (Peter Zijlstra)

   - Implement the FUTEX2_MPOL ABI, which feature extends the futex
     interface to be mempolicy-aware as well, to further refine futex
     node mappings and lookups. (Peter Zijlstra)

  Locking primitives:

   - Misc cleanups (Andy Shevchenko, Borislav Petkov, Colin Ian King,
                    Ingo Molnar, Nam Cao, Peter Zijlstra)

  Lockdep:

   - Prevent abuse of lockdep subclasses (Waiman Long)
   - Add number of dynamic keys to /proc/lockdep_stats (Waiman Long)

Plus misc cleanups and fixes.

Note that the tree includes the following dependent out-of-subsystem
changes as well:

 - rcuref: Provide rcuref_is_dead()
 - mm: Add vmalloc_huge_node()
 - mm: Add the mmap_read_lock guard to <linux/mmap_lock.h>

 Thanks,

	Ingo

------------------>
Andy Shevchenko (1):
      locking/lockdep: Move hlock_equal() to the respective #ifdeffery

Borislav Petkov (AMD) (1):
      futex: Fix kernel-doc comments

Colin Ian King (1):
      selftests/futex: Fix spelling mistake "unitiliazed" -> "uninitialized"

Ingo Molnar (1):
      futex: Relax the rcu_assign_pointer() assignment of mm->futex_phash in futex_mm_init()

Nam Cao (1):
      futex: Fix outdated comment in struct restart_block

Peter Zijlstra (10):
      mm: Add vmalloc_huge_node()
      futex: Move futex_queue() into futex_wait_setup()
      futex: Pull futex_hash() out of futex_q_lock()
      futex: Create hb scopes
      futex: Create futex_hash() get/put class
      futex: Create private_hash() get/put class
      futex: Implement FUTEX2_NUMA
      futex: Implement FUTEX2_MPOL
      selftests/futex: Build without headers nonsense
      futex,selftests: Add another FUTEX2_NUMA selftest

Sebastian Andrzej Siewior (18):
      rcuref: Provide rcuref_is_dead()
      futex: Acquire a hash reference in futex_wait_multiple_setup()
      futex: Decrease the waiter count before the unlock operation
      futex: Introduce futex_q_lockptr_lock()
      futex: Create helper function to initialize a hash slot
      futex: Add basic infrastructure for local task local hash
      futex: Allow automatic allocation of process wide futex hash
      futex: Allow to resize the private local hash
      futex: Allow to make the private hash immutable
      tools headers: Synchronize prctl.h ABI header
      tools/perf: Allow to select the number of hash buckets
      selftests/futex: Add futex_priv_hash
      selftests/futex: Add futex_numa_mpol
      selftests/futex: Use TAP output in futex_priv_hash
      selftests/futex: Use TAP output in futex_numa_mpol
      futex: Use RCU_INIT_POINTER() in futex_mm_init().
      tools headers: Synchronize prctl.h ABI header
      futex: Correct the kernedoc return value for futex_wait_setup().

Waiman Long (2):
      locking/lockdep: Prevent abuse of lockdep subclass
      locking/lockdep: Add number of dynamic keys to /proc/lockdep_stats


 include/linux/futex.h                              |  36 +-
 include/linux/mm_types.h                           |   7 +-
 include/linux/mmap_lock.h                          |   4 +
 include/linux/rcuref.h                             |  22 +-
 include/linux/restart_block.h                      |   2 +-
 include/linux/vmalloc.h                            |   9 +-
 include/uapi/linux/futex.h                         |   9 +-
 include/uapi/linux/prctl.h                         |   7 +
 init/Kconfig                                       |  10 +
 io_uring/futex.c                                   |   4 +-
 kernel/fork.c                                      |  24 +
 kernel/futex/core.c                                | 803 +++++++++++++++++++--
 kernel/futex/futex.h                               |  74 +-
 kernel/futex/pi.c                                  | 308 ++++----
 kernel/futex/requeue.c                             | 460 ++++++------
 kernel/futex/waitwake.c                            | 207 +++---
 kernel/locking/lockdep.c                           |  76 +-
 kernel/locking/lockdep_internals.h                 |   1 +
 kernel/locking/lockdep_proc.c                      |   2 +
 kernel/sys.c                                       |   4 +
 mm/nommu.c                                         |  18 +-
 mm/vmalloc.c                                       |  11 +-
 tools/include/uapi/linux/prctl.h                   |  45 +-
 tools/perf/bench/Build                             |   1 +
 tools/perf/bench/futex-hash.c                      |   7 +
 tools/perf/bench/futex-lock-pi.c                   |   5 +
 tools/perf/bench/futex-requeue.c                   |   6 +
 tools/perf/bench/futex-wake-parallel.c             |   9 +-
 tools/perf/bench/futex-wake.c                      |   4 +
 tools/perf/bench/futex.c                           |  67 ++
 tools/perf/bench/futex.h                           |   5 +
 .../testing/selftests/futex/functional/.gitignore  |   6 +-
 tools/testing/selftests/futex/functional/Makefile  |   7 +-
 .../selftests/futex/functional/futex_numa.c        | 262 +++++++
 .../selftests/futex/functional/futex_numa_mpol.c   | 231 ++++++
 .../selftests/futex/functional/futex_priv_hash.c   | 292 ++++++++
 tools/testing/selftests/futex/functional/run.sh    |   7 +
 tools/testing/selftests/futex/include/futex2test.h |  70 ++
 38 files changed, 2523 insertions(+), 599 deletions(-)
 create mode 100644 tools/perf/bench/futex.c
 create mode 100644 tools/testing/selftests/futex/functional/futex_numa.c
 create mode 100644 tools/testing/selftests/futex/functional/futex_numa_mpol.c
 create mode 100644 tools/testing/selftests/futex/functional/futex_priv_hash.c

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ