From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/13807 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: Bugs found while working on global thread list Date: Fri, 15 Feb 2019 14:03:12 -0500 Message-ID: <20190215190312.GD23599@brightrain.aerifal.cx> References: <20190215183836.GC23599@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="108988"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Mutt/1.5.21 (2010-09-15) To: musl@lists.openwall.com Original-X-From: musl-return-13823-gllmg-musl=m.gmane.org@lists.openwall.com Fri Feb 15 20:03:36 2019 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.89) (envelope-from ) id 1guilr-000SFK-7z for gllmg-musl@m.gmane.org; Fri, 15 Feb 2019 20:03:35 +0100 Original-Received: (qmail 22100 invoked by uid 550); 15 Feb 2019 19:03:32 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 22041 invoked from network); 15 Feb 2019 19:03:24 -0000 Content-Disposition: inline In-Reply-To: <20190215183836.GC23599@brightrain.aerifal.cx> Original-Sender: Rich Felker Xref: news.gmane.org gmane.linux.lib.musl.general:13807 Archived-At: 3. Not exactly a bug, but found looking at cruft/bloat in struct pthread: the start function pointer and argument are reused in a hackish way for timer threads. There are actually a lot of ugly hacks in the whole way SIGEV_THREAD timers are implemented, that could be eliminated by either waiting for the signal (rather than handling it) or doing away with use of signals and kernel timers entirely for SIGEV_THREAD, and instead implementing it all in userspace with clock_nanosleep.