From bc152699d90bafe211a667fb84ada98969cdcdab Mon Sep 17 00:00:00 2001 From: NicJA Date: Fri, 8 May 2015 01:06:05 +0000 Subject: [PATCH] fix a typo in the execsmp set_this_task macro. alter the exec spinlock macros slightly and add additional macros for actual locking/unlocking git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@50622 fb15a70f-31f2-0310-bbcc-cdcc74a49acc --- arch/arm-native/exec/exec_platform.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/arch/arm-native/exec/exec_platform.h b/arch/arm-native/exec/exec_platform.h index 488a3a8a34..5cbed9a4e0 100644 --- a/arch/arm-native/exec/exec_platform.h +++ b/arch/arm-native/exec/exec_platform.h @@ -12,7 +12,11 @@ #include extern void Kernel_40_KrnSpinInit(spinlock_t *, void *); -#define EXEC_SPINLOCK_INIT(a,b) Kernel_40_KrnSpinInit(a,b) +#define EXEC_SPINLOCK_INIT(a) Kernel_40_KrnSpinInit(a,NULL) +extern void Kernel_43_KrnSpinLock(spinlock_t *, ULONG, void *); +#define EXEC_SPINLOCK_LOCK(a,b) Kernel_43_KrnSpinLock(a,b,NULL) +extern void Kernel_44_KrnSpinUnLock(spinlock_t *, void *); +#define EXEC_SPINLOCK_UNLOCK(a) Kernel_44_KrnSpinUnLock(a,NULL) #endif #include "tls.h" @@ -26,10 +30,10 @@ struct Exec_PlatformData #if !defined(__AROSEXEC_SMP__) #define SET_THIS_TASK(x) TLS_SET(ThisTask,(x)) #else -#define SET_THIS_TASK(x) TLS_SET(ThisTask,(x)) \ +#define SET_THIS_TASK(x) TLS_SET(ThisTask,(x)); \ KrnSpinLock(&PrivExecBase(SysBase)->TaskRunningSpinLock, SPINLOCK_MODE_WRITE); \ AddHead(&PrivExecBase(SysBase)->TaskRunning, (struct Node *)(x)); \ - KrnSpinUnLock(&PrivExecBase(SysBase)->TaskRunningSpinLock); + KrnSpinUnLock(&PrivExecBase(SysBase)->TaskRunningSpinLock) #endif #endif /* __EXEC_PLATFORM_H */ -- 2.11.4.GIT