Re: [PATCH] fs/buffer: Make BH_Uptodate_Lock bit_spin_lock a regular spinlock_t

From: Thomas Gleixner
Date: Tue Aug 20 2019 - 14:01:24 EST


On Tue, 20 Aug 2019, Matthew Wilcox wrote:
> On Tue, Aug 20, 2019 at 07:08:18PM +0200, Sebastian Siewior wrote:
> > Bit spinlocks are problematic if PREEMPT_RT is enabled, because they
> > disable preemption, which is undesired for latency reasons and breaks when
> > regular spinlocks are taken within the bit_spinlock locked region because
> > regular spinlocks are converted to 'sleeping spinlocks' on RT. So RT
> > replaces the bit spinlocks with regular spinlocks to avoid this problem.
> > Bit spinlocks are also not covered by lock debugging, e.g. lockdep.
> >
> > Substitute the BH_Uptodate_Lock bit spinlock with a regular spinlock.
> >
> > Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > [bigeasy: remove the wrapper and use always spinlock_t]
>
> Uhh ... always grow the buffer_head, even for non-PREEMPT_RT? Why?

Christoph requested that:

https://lkml.kernel.org/r/20190802075612.GA20962@xxxxxxxxxxxxx

Thanks,

tglx