[PATCH 36/44] leon, grpsw_pkt: set unique work-task name
Daniel Hellstrom
daniel at gaisler.com
Fri Mar 3 14:57:09 UTC 2017
---
c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c b/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c
index e445c2a..b64a807 100644
--- a/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c
+++ b/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c
@@ -3160,6 +3160,7 @@ rtems_id grspw_work_spawn(int prio, int stack, rtems_id *pMsgQ, int msgMax)
{
rtems_id tid;
int created_msgq = 0;
+ static char work_name = 'A';
if (pMsgQ == NULL)
return OBJECTS_ID_NONE;
@@ -3169,7 +3170,7 @@ rtems_id grspw_work_spawn(int prio, int stack, rtems_id *pMsgQ, int msgMax)
msgMax = 32;
if (rtems_message_queue_create(
- rtems_build_name('S', 'G', 'L', 'Q'),
+ rtems_build_name('S', 'G', 'Q', work_name),
msgMax, 4, RTEMS_FIFO, pMsgQ) !=
RTEMS_SUCCESSFUL)
return OBJECTS_ID_NONE;
@@ -3181,7 +3182,7 @@ rtems_id grspw_work_spawn(int prio, int stack, rtems_id *pMsgQ, int msgMax)
if (stack < 0x800)
stack = RTEMS_MINIMUM_STACK_SIZE; /* default stack size */
- if (rtems_task_create(rtems_build_name('S', 'G', 'L', 'T'),
+ if (rtems_task_create(rtems_build_name('S', 'G', 'T', work_name),
prio, stack, RTEMS_PREEMPT | RTEMS_NO_ASR,
RTEMS_NO_FLOATING_POINT, &tid) != RTEMS_SUCCESSFUL)
tid = OBJECTS_ID_NONE;
@@ -3194,6 +3195,9 @@ rtems_id grspw_work_spawn(int prio, int stack, rtems_id *pMsgQ, int msgMax)
if (tid == OBJECTS_ID_NONE && created_msgq) {
rtems_message_queue_delete(*pMsgQ);
*pMsgQ = OBJECTS_ID_NONE;
+ } else {
+ if (++work_name > 'Z')
+ work_name = 'A';
}
return tid;
}
--
2.7.4
More information about the devel
mailing list