mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-02-21 11:54:15 +01:00
Get rid of the mutex when enabling/disabling soft IRQs. This isn't ideal but
it seems to be triggering deadlocks.
This commit is contained in:
parent
6adc74f6f9
commit
6df2df6eec
@ -109,7 +109,7 @@ static pthread_mutex_t xRunningThread = PTHREAD_MUTEX_INITIALIZER;
|
|||||||
#endif
|
#endif
|
||||||
static pthread_mutex_t xSuspendResumeThreadMutex = PTHREAD_MUTEX_INITIALIZER;
|
static pthread_mutex_t xSuspendResumeThreadMutex = PTHREAD_MUTEX_INITIALIZER;
|
||||||
static pthread_mutex_t xSwappingThreadMutex = PTHREAD_MUTEX_INITIALIZER;
|
static pthread_mutex_t xSwappingThreadMutex = PTHREAD_MUTEX_INITIALIZER;
|
||||||
static pthread_mutex_t xIrqMutex = PTHREAD_MUTEX_INITIALIZER;
|
//static pthread_mutex_t xIrqMutex = PTHREAD_MUTEX_INITIALIZER;
|
||||||
static pthread_t hMainThread = ( pthread_t )NULL;
|
static pthread_t hMainThread = ( pthread_t )NULL;
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
@ -514,18 +514,18 @@ tskTCB * oldTask, * newTask;
|
|||||||
void vPortDisableInterrupts( void )
|
void vPortDisableInterrupts( void )
|
||||||
{
|
{
|
||||||
//debug_printf("\r\n");
|
//debug_printf("\r\n");
|
||||||
assert( pthread_mutex_lock( &xIrqMutex ) == 0);
|
//assert( pthread_mutex_lock( &xIrqMutex ) == 0);
|
||||||
xInterruptsEnabled = pdFALSE;
|
xInterruptsEnabled = pdFALSE;
|
||||||
assert( pthread_mutex_unlock( &xIrqMutex) == 0);
|
//assert( pthread_mutex_unlock( &xIrqMutex) == 0);
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
void vPortEnableInterrupts( void )
|
void vPortEnableInterrupts( void )
|
||||||
{
|
{
|
||||||
//debug_printf("\r\n");
|
//debug_printf("\r\n");
|
||||||
assert( pthread_mutex_lock( &xIrqMutex ) == 0);
|
//assert( pthread_mutex_lock( &xIrqMutex ) == 0);
|
||||||
xInterruptsEnabled = pdTRUE;
|
xInterruptsEnabled = pdTRUE;
|
||||||
assert( pthread_mutex_unlock( &xIrqMutex) == 0);
|
//assert( pthread_mutex_unlock( &xIrqMutex) == 0);
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user