Skip to content

Commit 03a679a

Browse files
committed
Merge tag 'generic-ticket-spinlocks-v6' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/linux into asm-generic
asm-generic: New generic ticket-based spinlock This contains a new ticket-based spinlock that uses only generic atomics and doesn't require as much from the memory system as qspinlock does in order to be fair. It also includes a bit of documentation about the qspinlock and qrwlock fairness requirements. This will soon be used by a handful of architectures that don't meet the qspinlock requirements. * tag 'generic-ticket-spinlocks-v6' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/linux: csky: Move to generic ticket-spinlock RISC-V: Move to queued RW locks RISC-V: Move to generic spinlocks openrisc: Move to ticket-spinlock asm-generic: qrwlock: Document the spinlock fairness requirements asm-generic: qspinlock: Indicate the use of mixed-size atomics asm-generic: ticket-lock: New generic ticket-based spinlock
2 parents fba2689 + 9282d09 commit 03a679a

File tree

15 files changed

+147
-321
lines changed

15 files changed

+147
-321
lines changed

arch/csky/include/asm/Kbuild

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@ generic-y += asm-offsets.h
33
generic-y += extable.h
44
generic-y += gpio.h
55
generic-y += kvm_para.h
6+
generic-y += spinlock.h
7+
generic-y += spinlock_types.h
68
generic-y += qrwlock.h
9+
generic-y += qrwlock_types.h
710
generic-y += parport.h
811
generic-y += user.h
912
generic-y += vmlinux.lds.h

arch/csky/include/asm/spinlock.h

Lines changed: 0 additions & 89 deletions
This file was deleted.

arch/csky/include/asm/spinlock_types.h

Lines changed: 0 additions & 27 deletions
This file was deleted.

arch/openrisc/Kconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ config OPENRISC
3030
select HAVE_DEBUG_STACKOVERFLOW
3131
select OR1K_PIC
3232
select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
33-
select ARCH_USE_QUEUED_SPINLOCKS
3433
select ARCH_USE_QUEUED_RWLOCKS
3534
select OMPIC if SMP
3635
select ARCH_WANT_FRAME_POINTERS

arch/openrisc/include/asm/Kbuild

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
# SPDX-License-Identifier: GPL-2.0
22
generic-y += extable.h
33
generic-y += kvm_para.h
4-
generic-y += mcs_spinlock.h
5-
generic-y += qspinlock_types.h
6-
generic-y += qspinlock.h
4+
generic-y += spinlock_types.h
5+
generic-y += spinlock.h
76
generic-y += qrwlock_types.h
87
generic-y += qrwlock.h
98
generic-y += user.h

arch/openrisc/include/asm/spinlock.h

Lines changed: 0 additions & 27 deletions
This file was deleted.

arch/openrisc/include/asm/spinlock_types.h

Lines changed: 0 additions & 7 deletions
This file was deleted.

arch/riscv/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ config RISCV
3939
select ARCH_SUPPORTS_DEBUG_PAGEALLOC if MMU
4040
select ARCH_SUPPORTS_HUGETLBFS if MMU
4141
select ARCH_USE_MEMTEST
42+
select ARCH_USE_QUEUED_RWLOCKS
4243
select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU
4344
select ARCH_WANT_FRAME_POINTERS
4445
select ARCH_WANT_GENERAL_HUGETLB

arch/riscv/include/asm/Kbuild

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,9 @@ generic-y += early_ioremap.h
33
generic-y += flat.h
44
generic-y += kvm_para.h
55
generic-y += parport.h
6+
generic-y += spinlock.h
7+
generic-y += spinlock_types.h
8+
generic-y += qrwlock.h
9+
generic-y += qrwlock_types.h
610
generic-y += user.h
711
generic-y += vmlinux.lds.h

arch/riscv/include/asm/spinlock.h

Lines changed: 0 additions & 135 deletions
This file was deleted.

0 commit comments

Comments
 (0)