twx-linux/include
Ahmed S. Darwish 1909760f5f seqlock: PREEMPT_RT: Do not starve seqlock_t writers
On PREEMPT_RT, seqlock_t is transformed to a sleeping lock that do not
disable preemption. A seqlock_t reader can thus preempt its write side
section and spin for the enter scheduler tick. If that reader belongs to
a real-time scheduling class, it can spin forever and the kernel will
livelock.

To break this livelock possibility on PREEMPT_RT, implement seqlock_t in
terms of "seqcount_spinlock_t" instead of plain "seqcount_t".

Beside its pure annotational value, this will leverage the existing
seqcount_LOCKNAME_T PREEMPT_RT anti-livelock mechanisms, without adding
any extra code.

Signed-off-by: Ahmed S. Darwish <a.darwish@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20200904153231.11994-6-a.darwish@linutronix.de
2020-09-10 11:19:31 +02:00
..
acpi
asm-generic iomap: constify ioreadX() iomem argument (as in generic implementation) 2020-08-14 19:56:57 -07:00
clocksource include/: replace HTTP links with HTTPS ones 2020-08-12 10:57:59 -07:00
crypto
drm
dt-bindings Here's some more updates that missed the last pull request because I 2020-08-12 12:19:49 -07:00
keys
kunit
kvm
linux seqlock: PREEMPT_RT: Do not starve seqlock_t writers 2020-09-10 11:19:31 +02:00
math-emu
media
memory
misc
net ipv6: some fixes for ipv6_dev_find() 2020-08-18 15:58:53 -07:00
pcmcia
ras
rdma
scsi
soc include/: replace HTTP links with HTTPS ones 2020-08-12 10:57:59 -07:00
sound
target
trace Improvements to ext4's block allocator performance for very large file 2020-08-21 11:03:38 -07:00
uapi Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf 2020-08-21 12:54:50 -07:00
vdso
video
xen xen: branch for v5.9-rc1b 2020-08-14 13:34:37 -07:00