200-spinlock-extend-guard-with-spinlock_bh-variants.patch 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. From 38d2c6aafc5bbcad3ec36f6d3356b3debd40f6fd Mon Sep 17 00:00:00 2001
  2. From: Christian Marangi <[email protected]>
  3. Date: Wed, 16 Oct 2024 20:26:05 +0200
  4. Subject: [RFC PATCH v2 1/3] spinlock: extend guard with spinlock_bh variants
  5. Extend guard APIs with missing raw/spinlock_bh variants.
  6. Signed-off-by: Christian Marangi <[email protected]>
  7. ---
  8. include/linux/spinlock.h | 13 +++++++++++++
  9. 1 file changed, 13 insertions(+)
  10. --- a/include/linux/spinlock.h
  11. +++ b/include/linux/spinlock.h
  12. @@ -519,6 +519,10 @@ DEFINE_LOCK_GUARD_1(raw_spinlock_irq, ra
  13. DEFINE_LOCK_GUARD_1_COND(raw_spinlock_irq, _try, raw_spin_trylock_irq(_T->lock))
  14. +DEFINE_LOCK_GUARD_1(raw_spinlock_bh, raw_spinlock_t,
  15. + raw_spin_lock_bh(_T->lock),
  16. + raw_spin_unlock_bh(_T->lock))
  17. +
  18. DEFINE_LOCK_GUARD_1(raw_spinlock_irqsave, raw_spinlock_t,
  19. raw_spin_lock_irqsave(_T->lock, _T->flags),
  20. raw_spin_unlock_irqrestore(_T->lock, _T->flags),
  21. @@ -540,6 +544,10 @@ DEFINE_LOCK_GUARD_1(spinlock_irq, spinlo
  22. DEFINE_LOCK_GUARD_1_COND(spinlock_irq, _try,
  23. spin_trylock_irq(_T->lock))
  24. +DEFINE_LOCK_GUARD_1(spinlock_bh, spinlock_t,
  25. + spin_lock_bh(_T->lock),
  26. + spin_unlock_bh(_T->lock))
  27. +
  28. DEFINE_LOCK_GUARD_1(spinlock_irqsave, spinlock_t,
  29. spin_lock_irqsave(_T->lock, _T->flags),
  30. spin_unlock_irqrestore(_T->lock, _T->flags),