[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4A0E13B7.90200@gmail.com>
Date: Fri, 15 May 2009 19:15:35 -0600
From: Robert Hancock <hancockrwd@...il.com>
To: Sudarshan Soma <sudarshan12s@...il.com>
CC: linux-kernel@...r.kernel.org
Subject: Re: patch related to SIGSEGV handling in multiple threads and hung
threads
Sudarshan Soma wrote:
> Hi ,
> I have a program which will create multiple threads. One of the thread
> receives SIGSEGV and it prints stacktrace in its handler and calls
> _exit(-1). The call to exit wont terminate all threads in a process
> and hence thread hangs here. This causes resouce leaks and other
> problems. It is seen only on linux 2.4.20.
>
> For printing stacktrace it uses
> __builtin_return_address and __builtin_frame_address
>
>
> The same program works fine on linux 2.6.26 kernel. It will exit the
> whole process when one of its thread dies as above.
>
>
> Please let me know the patch details or any workaround, if any. This
> is a bit urgent, so please let me know for any pointers , if any
>
> Thanks and Best Regards,
> Pavan.
That doesn't seem surprising, the old LinuxThreads thread implementation
normally used with the 2.4 kernels was pretty poor. However it would
likely be better to re-raise the signal rather than trying to exit out
of the signal handler.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists