On 04/30/2015 02:39 PM, Ronny Meeus wrote:
> If I run the test I see:
> 
> /tmp # ./task_delete
> Start of test
> Create and start main task:Create task M:
> Create task L:
> Start task M:
> Start task L:
> M: entry
> L: entry
> M: Dead loop starts
> Cleaning ..
> End of test
> 
> Here is the piece of the code that goes wrong:
> 
>   printf("Cleaning ..\r\n");
>   /* Remove tasks */
>   t_delete(L_id);
>   /* Followed code is not executed because t_delete is somehow blocked */
>   printf("Removed L task id = 0x%lx\r\n", L_id);
>   t_delete(M_id);
>   printf("Removed M task id = 0x%lx\r\n", M_id);
> }
> 
> Since the trace "Removed L task id..." is not generated, my assumption
> it that the t_delete(L_id) blocks.
> 
> 

Could you attach GDB to the hung process, then dump a backtrace for all
the remaining threads?

-- 
Philippe.

_______________________________________________
Xenomai mailing list
Xenomai@xenomai.org
http://www.xenomai.org/mailman/listinfo/xenomai

Reply via email to