All of lore.kernel.org
 help / color / mirror / Atom feed
* patch related to SIGSEGV handling in multiple threads and hung  threads
@ 2009-05-15 11:05 Sudarshan Soma
  2009-05-16  1:15 ` Robert Hancock
  0 siblings, 1 reply; 2+ messages in thread
From: Sudarshan Soma @ 2009-05-15 11:05 UTC (permalink / raw)
  To: linux-kernel

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.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: patch related to SIGSEGV handling in multiple threads and hung threads
  2009-05-15 11:05 patch related to SIGSEGV handling in multiple threads and hung threads Sudarshan Soma
@ 2009-05-16  1:15 ` Robert Hancock
  0 siblings, 0 replies; 2+ messages in thread
From: Robert Hancock @ 2009-05-16  1:15 UTC (permalink / raw)
  To: Sudarshan Soma; +Cc: linux-kernel

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.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-05-16  1:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-15 11:05 patch related to SIGSEGV handling in multiple threads and hung threads Sudarshan Soma
2009-05-16  1:15 ` Robert Hancock

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.