From 65edcf0417fcadad74a2635cd265f43fdaf67db3 Mon Sep 17 00:00:00 2001 From: Matheus Date: Sun, 1 Sep 2024 21:40:40 -0300 Subject: [PATCH] spinlock: helpers for ipl --- kernel-src/include/spinlock.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/kernel-src/include/spinlock.h b/kernel-src/include/spinlock.h index a2999fc5..f81f108f 100644 --- a/kernel-src/include/spinlock.h +++ b/kernel-src/include/spinlock.h @@ -31,4 +31,15 @@ static inline void spinlock_releaseirqrestore(spinlock_t *lock, bool irqstate){ interrupt_set(irqstate); } +static inline long spinlock_acquireraiseipl(spinlock_t *lock, long ipl) { + long ret = interrupt_raiseipl(ipl); + spinlock_acquire(lock); + return ret; +} + +static inline void spinlock_releaseloweripl(spinlock_t *lock, long ipl) { + spinlock_release(lock); + interrupt_loweripl(ipl); +} + #endif