lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ