I'm working with USB audio on Xcore 200 (XU232) and I got a troublesome thread in debug.
In a par statement, I launch two threads (task1 and task2). task1 will return a value (command) and tell task2 to end by returning 0 :
Code: Select all
unsigned foo(chanend c1, chanend c2)
{
chan c_sync;
unsigned command
par{
{
command = task1(c1, c_sync);
}
{
task2(c2, c_sync);
}
}
return command;
}
While for task1 everything seems OKtile[1] core[1] (Suspended)
4 __start_other_cores() 0x00043fba
3 foo() foo.xc:1009 0x0004253d
2 mainFoo() foo.xc:1302 0x00042d95
1 main() main.xc:275 0x00042e85
Has anybody an hint on this strange __start_other_cores thread ?tile[1] core[2] (Suspended)
3 task1() foo.xc:599 0x000427cc
2 foo.task.0() foo.xc:1013 0x000427cc
1 __start_core() 0x000442b0
I guess this is a problem on task2 launch but I have no clue on how it appears (no unsafe pointers manipulation, no strange synchronization). I already clean-rebuild-unplug-relaunch xTimeComposer-etc... and I got the same problem.
Thanks a lot for your help.
Marc