Re: [PATCH v4 1/3] spinlock: extend guard with spinlock_bh variants

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxx>

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@xxxxxxxxxxxxx>

> ---
> 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
> 




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux