Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bluetooth: Acquire sk_lock.slock without disabling interrupts
There was a lockdep which led to commit fad003b ("Bluetooth: Fix inconsistent lock state with RFCOMM") Lockdep noticed that `sk->sk_lock.slock' was acquired without disabling the softirq while the lock was also used in softirq context. Unfortunately the solution back then was to disable interrupts before acquiring the lock which however made lockdep happy. It would have been enough to simply disable the softirq. Disabling interrupts before acquiring a spinlock_t is not allowed on PREEMPT_RT because these locks are converted to 'sleeping' spinlocks. Use spin_lock_bh() in order to acquire the `sk_lock.slock'. Reported-by: Luis Claudio R. Goncalves <[email protected]> Reported-by: kbuild test robot <[email protected]> [missing unlock] Signed-off-by: Sebastian Andrzej Siewior <[email protected]> Signed-off-by: Marcel Holtmann <[email protected]>
- Loading branch information