Messages in this thread | | | Date | Mon, 1 Jun 2020 15:32:28 +0200 | From | Ingo Molnar <> | Subject | [GIT PULL] locking changes for v5.8 |
| |
Linus,
Please pull the latest locking/core git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git locking-core-2020-06-01
# HEAD: 19f545b6e07f753c4dc639c2f0ab52345733b6a8 zram: Use local lock to protect per-CPU data
The biggest change to core locking facilities in this cycle is the introduction of local_lock_t - this primitive comes from the -rt project and identifies CPU-local locking dependencies normally handled opaquely beind preempt_disable() or local_irq_save/disable() critical sections.
The generated code on mainline kernels doesn't change as a result, but still there are benefits: improved debugging and better documentation of data structure accesses.
The new local_lock_t primitives are introduced and then utilized in a couple of kernel subsystems. No change in functionality is intended.
There's also other smaller changes and cleanups.
Thanks,
Ingo
------------------> Alex Shi (1): locking/rtmutex: Remove unused rt_mutex_cmpxchg_relaxed()
Gustavo A. R. Silva (1): locking/lockdep: Replace zero-length array with flexible-array
Ingo Molnar (1): mm/swap: Use local_lock for protection
Julia Cartwright (1): squashfs: Make use of local lock in multi_cpu decompressor
Mike Galbraith (2): connector/cn_proc: Protect send_msg() with a local lock zram: Use local lock to protect per-CPU data
Sebastian Andrzej Siewior (2): radix-tree: Use local_lock for protection zram: Allocate struct zcomp_strm as per-CPU memory
Thomas Gleixner (1): locking: Introduce local_lock()
Documentation/locking/locktypes.rst | 215 ++++++++++++++++++++++++++++++-- drivers/block/zram/zcomp.c | 44 +++---- drivers/block/zram/zcomp.h | 5 +- drivers/connector/cn_proc.c | 21 ++-- fs/squashfs/decompressor_multi_percpu.c | 21 ++-- include/linux/idr.h | 2 +- include/linux/local_lock.h | 54 ++++++++ include/linux/local_lock_internal.h | 90 +++++++++++++ include/linux/radix-tree.h | 11 +- include/linux/swap.h | 1 + kernel/locking/lockdep.c | 2 +- kernel/locking/rtmutex.c | 2 - lib/radix-tree.c | 20 ++- mm/compaction.c | 6 +- mm/swap.c | 118 ++++++++++++------ 15 files changed, 502 insertions(+), 110 deletions(-) create mode 100644 include/linux/local_lock.h create mode 100644 include/linux/local_lock_internal.h
| |