diff --git a/src/sys/include/ubixos/spinlock.h b/src/sys/include/ubixos/spinlock.h index 83e9861..a934564 100755 --- a/src/sys/include/ubixos/spinlock.h +++ b/src/sys/include/ubixos/spinlock.h @@ -18,6 +18,7 @@ } spinlock_t * spinlockCreate(); +void spinlockInit(spinlock_t &); void spinlockDelete(spinlock_t *); int spinlockLock(spinlock_t *, int); diff --git a/src/sys/kernel/spinlock.c b/src/sys/kernel/spinlock.c index 5230928..1ae13b8 100755 --- a/src/sys/kernel/spinlock.c +++ b/src/sys/kernel/spinlock.c @@ -12,6 +12,11 @@ return lock; } +void spinlockInit(spinlock_t & lock) +{ + memset(lock, '\0', sizeof(spinlock_t)); +} + void spinlockDelete(spinlock_t * lock) { int i;