diff options
author | Ahmed S. Darwish <a.darwish@linutronix.de> | 2020-07-20 17:55:14 +0200 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2020-07-29 16:14:24 +0200 |
commit | 859247d39fb008ea812e8f0c398a58a20c12899e (patch) | |
tree | c8cbe8dbf4fefa28a62622073a2cdd40a9dd36bb /kernel/locking/lockdep.c | |
parent | lockdep: Add preemption enabled/disabled assertion APIs (diff) | |
download | linux-859247d39fb008ea812e8f0c398a58a20c12899e.tar.xz linux-859247d39fb008ea812e8f0c398a58a20c12899e.zip |
seqlock: lockdep assert non-preemptibility on seqcount_t write
Preemption must be disabled before entering a sequence count write side
critical section. Failing to do so, the seqcount read side can preempt
the write side section and spin for the entire scheduler tick. If that
reader belongs to a real-time scheduling class, it can spin forever and
the kernel will livelock.
Assert through lockdep that preemption is disabled for seqcount writers.
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/20200720155530.1173732-9-a.darwish@linutronix.de
Diffstat (limited to 'kernel/locking/lockdep.c')
0 files changed, 0 insertions, 0 deletions