From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18053 invoked by alias); 31 Aug 2004 16:20:54 -0000 Mailing-List: contact libc-hacker-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-hacker-owner@sources.redhat.com Received: (qmail 18037 invoked from network); 31 Aug 2004 16:20:53 -0000 Received: from unknown (HELO sunsite.ms.mff.cuni.cz) (195.113.15.26) by sourceware.org with SMTP; 31 Aug 2004 16:20:53 -0000 Received: from sunsite.ms.mff.cuni.cz (sunsite.mff.cuni.cz [127.0.0.1]) by sunsite.ms.mff.cuni.cz (8.12.8/8.12.8) with ESMTP id i7VDxk3j031351; Tue, 31 Aug 2004 15:59:46 +0200 Received: (from jakub@localhost) by sunsite.ms.mff.cuni.cz (8.12.8/8.12.8/Submit) id i7VDxjVH031347; Tue, 31 Aug 2004 15:59:45 +0200 Date: Tue, 31 Aug 2004 16:20:00 -0000 From: Jakub Jelinek To: davidm@hpl.hp.com Cc: Ulrich Drepper , libc-hacker@sources.redhat.com Subject: Re: fix ia64 longjmp() to work from alternate signal-stack Message-ID: <20040831135945.GJ30497@sunsite.ms.mff.cuni.cz> Reply-To: Jakub Jelinek References: <16684.49335.802840.212013@napali.hpl.hp.com> <412DAC31.1050404@redhat.com> <16692.38122.52348.850833@napali.hpl.hp.com> <413499B2.2030900@redhat.com> <16692.41948.53308.392397@napali.hpl.hp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <16692.41948.53308.392397@napali.hpl.hp.com> User-Agent: Mutt/1.4.1i X-SW-Source: 2004-08/txt/msg00091.txt.bz2 On Tue, Aug 31, 2004 at 09:14:20AM -0700, David Mosberger wrote: > So you want me to create an ia64-specific version of __libc_longjmp() > which will be sigaltstack-safe while everything else goes to > the old longjmp implementation, right? > > The only callers of __libc_longjmp() I found are: > > ./linuxthreads/sysdeps/pthread/ptlongjmp.c: __libc_longjmp (env, val); > ./nptl/sysdeps/pthread/pt-longjmp.c: __libc_longjmp (env, val); > ./nptl/unwind.c: __libc_longjmp ((struct __jmp_buf_tag *) buf->cancel_jmp_buf, 1); > ./nptl/unwind.c: __libc_longjmp ((struct __jmp_buf_tag *) ibuf->cancel_jmp_buf, 1); > > so I think this would have the desired effect. The first two should use the old longjmp implementation, the latter two the sigaltstack-safe one. Jakub