Task threads are not killed at exit
adam at os.inf.tu-dresden.de
Mon Jun 10 23:48:41 CEST 2013
On Mon Jun 10, 2013 at 00:13:12 -0700, BogDan wrote:
> >> Not all the task threads are killed when a task exits or it crashes.
> >> I've created a simple example here: http://paste.kde.org/760274
> >> After application crashes (line 22), test thread is still alive, I still
> > can
> >> see "Test thread alive" message printed.
> > What happens is that the thread executing 'main' is having a page fault
> > while the other thread is doing fine. I guess exiting the app is easy in
> > that case but nothing left for debugging.
> But if nobody handles that exception (e.g. the debugger), then the kernel
> shouldn't kill the task? This happens on all O.S.s I've tried (linux, *BSD,
> windows, etc.) :)
For the kernel, the fault is handled by the re-kernel because it was
succesfully posted there. Now the re-kernel could exit, like described
> >> If I call exit or return instead to crash the task, the test thread is
> > still alive .
> > That works fine for me.
> Still no joy on my side :(, I comment line 22 (the one which caused
> the page fault), so the main function exists after 5 seconds but I still
> see the "Test thread alive" message printed on my screen every
> second. I'm using Fiasco/L4Re from rev 56 for x86.
Adam adam at os.inf.tu-dresden.de
More information about the l4-hackers