| /* SPDX-License-Identifier: GPL-2.0 */ | |
| #ifndef _LINUX_LOCAL_LOCK_H | |
| #define _LINUX_LOCAL_LOCK_H | |
| #include <linux/local_lock_internal.h> | |
| /** | |
| * local_lock_init - Runtime initialize a lock instance | |
| */ | |
| #define local_lock_init(lock) __local_lock_init(lock) | |
| /** | |
| * local_lock - Acquire a per CPU local lock | |
| * @lock: The lock variable | |
| */ | |
| #define local_lock(lock) __local_lock(lock) | |
| /** | |
| * local_lock_irq - Acquire a per CPU local lock and disable interrupts | |
| * @lock: The lock variable | |
| */ | |
| #define local_lock_irq(lock) __local_lock_irq(lock) | |
| /** | |
| * local_lock_irqsave - Acquire a per CPU local lock, save and disable | |
| * interrupts | |
| * @lock: The lock variable | |
| * @flags: Storage for interrupt flags | |
| */ | |
| #define local_lock_irqsave(lock, flags) \ | |
| __local_lock_irqsave(lock, flags) | |
| /** | |
| * local_unlock - Release a per CPU local lock | |
| * @lock: The lock variable | |
| */ | |
| #define local_unlock(lock) __local_unlock(lock) | |
| /** | |
| * local_unlock_irq - Release a per CPU local lock and enable interrupts | |
| * @lock: The lock variable | |
| */ | |
| #define local_unlock_irq(lock) __local_unlock_irq(lock) | |
| /** | |
| * local_unlock_irqrestore - Release a per CPU local lock and restore | |
| * interrupt flags | |
| * @lock: The lock variable | |
| * @flags: Interrupt flags to restore | |
| */ | |
| #define local_unlock_irqrestore(lock, flags) \ | |
| __local_unlock_irqrestore(lock, flags) | |
| #endif |