// SPDX-License-Identifier: GPL-2.0 #include void rust_helper___spin_lock_init(spinlock_t *lock, const char *name, struct lock_class_key *key) { #ifdef CONFIG_DEBUG_SPINLOCK # if defined(CONFIG_PREEMPT_RT) __spin_lock_init(lock, name, key, false); # else /*!CONFIG_PREEMPT_RT */ __raw_spin_lock_init(spinlock_check(lock), name, key, LD_WAIT_CONFIG); # endif /* CONFIG_PREEMPT_RT */ #else /* !CONFIG_DEBUG_SPINLOCK */ spin_lock_init(lock); #endif /* CONFIG_DEBUG_SPINLOCK */ } void rust_helper_spin_lock(spinlock_t *lock) { spin_lock(lock); } void rust_helper_spin_unlock(spinlock_t *lock) { spin_unlock(lock); } int rust_helper_spin_trylock(spinlock_t *lock) { return spin_trylock(lock); }