Fix an error introduced into ALL implmentations of interrupt dispatch logic
This commit is contained in:
parent
dfdaeb31ac
commit
45f3328247
@ -118,7 +118,7 @@ void up_doirq(int irq, uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -118,7 +118,7 @@ uint32_t *arm_doirq(int irq, uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -134,7 +134,7 @@ void up_decodeirq(uint32_t* regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -141,7 +141,7 @@ void up_decodeirq(uint32_t* regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -1,6 +1,5 @@
|
||||
/********************************************************************************
|
||||
* arch/arm/src/lpc31xx/lpc31_decodeirq.c
|
||||
* arch/arm/src/chip/lpc31_decodeirq.c
|
||||
*
|
||||
* Copyright (C) 2009, 2014 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
@ -142,7 +141,7 @@ void up_decodeirq(uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -113,7 +113,7 @@ uint32_t *up_doirq(int irq, uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -113,7 +113,7 @@ uint8_t *up_doirq(int irq, uint8_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -119,7 +119,7 @@ uint32_t *up_doirq(int irq, uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -170,7 +170,7 @@ uint32_t *pic32mx_decodeirq(uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -121,7 +121,7 @@ uint32_t *up_doirq(int irq, uint32_t* regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -125,7 +125,7 @@ static uint32_t *common_handler(int irq, uint32_t *regs)
|
||||
* thread at the head of the ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -112,7 +112,7 @@ FAR chipreg_t *up_doirq(uint8_t irq, FAR chipreg_t *regs)
|
||||
* ready-to-run list.
|
||||
*/
|
||||
|
||||
(void)group_addrenv(rtcb);
|
||||
(void)group_addrenv(NULL);
|
||||
}
|
||||
|
||||
regs = newregs;
|
||||
|
@ -43,6 +43,7 @@
|
||||
|
||||
#include <nuttx/sched.h>
|
||||
|
||||
#include "sched/sched.h"
|
||||
#include "group/group.h"
|
||||
|
||||
#ifdef CONFIG_ARCH_ADDRENV
|
||||
@ -107,6 +108,15 @@ int group_addrenv(FAR struct tcb_s *tcb)
|
||||
gid_t gid;
|
||||
int ret;
|
||||
|
||||
/* NULL for the tcb means to use the TCB of the task at the head of the
|
||||
* ready to run list.
|
||||
*/
|
||||
|
||||
if (!tcb)
|
||||
{
|
||||
tcb = (FAR struct tcb_s *)g_readytorun.head;
|
||||
}
|
||||
|
||||
DEBUGASSERT(tcb && tcb->group);
|
||||
group = tcb->group;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user