From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <5542299B.30409@xenomai.org> Date: Thu, 30 Apr 2015 15:09:47 +0200 From: Philippe Gerum MIME-Version: 1.0 References: <5541FD72.3090806@xenomai.org> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Xenomai] [xenomai-forge] Task blocked in t_delete List-Id: Discussions about the Xenomai project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Ronny Meeus Cc: "martin.bielik.sk" , xenomai@xenomai.org 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.