Message ID | 20241025094734.1614-1-ansuelsmth@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Herbert Xu |
Headers | show |
Series | [v4,1/3] spinlock: extend guard with spinlock_bh variants | expand |
On Fri, Oct 25, 2024 at 11:47:22AM +0200, Christian Marangi wrote: > Extend guard APIs with missing raw/spinlock_bh variants. > > Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Feel free to take this through whatever tree the rest of the patches are targeted at. I don't think I've seen conflicting 'demand' so far. Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> > --- > Changes v4: > - Out of RFC > Changes v2: > - Add this patch > > include/linux/spinlock.h | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h > index 63dd8cf3c3c2..d3561c4a080e 100644 > --- a/include/linux/spinlock.h > +++ b/include/linux/spinlock.h > @@ -548,6 +548,12 @@ DEFINE_LOCK_GUARD_1(raw_spinlock_irq, raw_spinlock_t, > > DEFINE_LOCK_GUARD_1_COND(raw_spinlock_irq, _try, raw_spin_trylock_irq(_T->lock)) > > +DEFINE_LOCK_GUARD_1(raw_spinlock_bh, raw_spinlock_t, > + raw_spin_lock_bh(_T->lock), > + raw_spin_unlock_bh(_T->lock)) > + > +DEFINE_LOCK_GUARD_1_COND(raw_spinlock_bh, _try, raw_spin_trylock_bh(_T->lock)) > + > DEFINE_LOCK_GUARD_1(raw_spinlock_irqsave, raw_spinlock_t, > raw_spin_lock_irqsave(_T->lock, _T->flags), > raw_spin_unlock_irqrestore(_T->lock, _T->flags), > @@ -569,6 +575,13 @@ DEFINE_LOCK_GUARD_1(spinlock_irq, spinlock_t, > DEFINE_LOCK_GUARD_1_COND(spinlock_irq, _try, > spin_trylock_irq(_T->lock)) > > +DEFINE_LOCK_GUARD_1(spinlock_bh, spinlock_t, > + spin_lock_bh(_T->lock), > + spin_unlock_bh(_T->lock)) > + > +DEFINE_LOCK_GUARD_1_COND(spinlock_bh, _try, > + spin_trylock_bh(_T->lock)) > + > DEFINE_LOCK_GUARD_1(spinlock_irqsave, spinlock_t, > spin_lock_irqsave(_T->lock, _T->flags), > spin_unlock_irqrestore(_T->lock, _T->flags), > -- > 2.45.2 >
diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h index 63dd8cf3c3c2..d3561c4a080e 100644 --- a/include/linux/spinlock.h +++ b/include/linux/spinlock.h @@ -548,6 +548,12 @@ DEFINE_LOCK_GUARD_1(raw_spinlock_irq, raw_spinlock_t, DEFINE_LOCK_GUARD_1_COND(raw_spinlock_irq, _try, raw_spin_trylock_irq(_T->lock)) +DEFINE_LOCK_GUARD_1(raw_spinlock_bh, raw_spinlock_t, + raw_spin_lock_bh(_T->lock), + raw_spin_unlock_bh(_T->lock)) + +DEFINE_LOCK_GUARD_1_COND(raw_spinlock_bh, _try, raw_spin_trylock_bh(_T->lock)) + DEFINE_LOCK_GUARD_1(raw_spinlock_irqsave, raw_spinlock_t, raw_spin_lock_irqsave(_T->lock, _T->flags), raw_spin_unlock_irqrestore(_T->lock, _T->flags), @@ -569,6 +575,13 @@ DEFINE_LOCK_GUARD_1(spinlock_irq, spinlock_t, DEFINE_LOCK_GUARD_1_COND(spinlock_irq, _try, spin_trylock_irq(_T->lock)) +DEFINE_LOCK_GUARD_1(spinlock_bh, spinlock_t, + spin_lock_bh(_T->lock), + spin_unlock_bh(_T->lock)) + +DEFINE_LOCK_GUARD_1_COND(spinlock_bh, _try, + spin_trylock_bh(_T->lock)) + DEFINE_LOCK_GUARD_1(spinlock_irqsave, spinlock_t, spin_lock_irqsave(_T->lock, _T->flags), spin_unlock_irqrestore(_T->lock, _T->flags),
Extend guard APIs with missing raw/spinlock_bh variants. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> --- Changes v4: - Out of RFC Changes v2: - Add this patch include/linux/spinlock.h | 13 +++++++++++++ 1 file changed, 13 insertions(+)