From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23624 invoked by alias); 3 Aug 2006 03:29:23 -0000 Received: (qmail 23611 invoked by uid 22791); 3 Aug 2006 03:29:23 -0000 X-Spam-Check-By: sourceware.org Received: from cantor2.suse.de (HELO mx2.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 03 Aug 2006 03:29:20 +0000 Received: from Relay2.suse.de (mail2.suse.de [195.135.221.8]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx2.suse.de (Postfix) with ESMTP id 97DA01FC95; Thu, 3 Aug 2006 05:29:17 +0200 (CEST) From: Andi Kleen To: Daniel Jacobowitz Subject: Re: Notes on a frame_unwind_address_in_block problem Date: Thu, 03 Aug 2006 03:29:00 -0000 User-Agent: KMail/1.9.3 Cc: Andreas Jaeger , Mark Kettenis , gdb@sourceware.org, libc-alpha@sourceware.org References: <20060706222157.GA1377@nevyn.them.org> <200608030511.46390.ak@suse.de> <20060803032136.GA7647@nevyn.them.org> In-Reply-To: <20060803032136.GA7647@nevyn.them.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200608030529.13642.ak@suse.de> Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-08/txt/msg00016.txt.bz2 On Thursday 03 August 2006 05:21, Daniel Jacobowitz wrote: > On Thu, Aug 03, 2006 at 05:11:46AM +0200, Andi Kleen wrote: > > On Thursday 03 August 2006 04:48, Daniel Jacobowitz wrote: > > > > > Basically, right now x86_64 signal delivery always uses SA_RESTORER. > > > > It will always. The kernel errors out if SA_RESTORER is not set. > > I figured you'd do what i386 did - if SA_RESTORER isn't set, use a > trampoline in the vDSO. No, it will printk and SIGSEGV in this case. When x86-64 was done a whole lot of old signal stuff was dropped as legacy. > > > Fortunately I don't have to worry about this. The vsyscall pages > > > aren't on the signal path > > > > The signal trampolines are in the vsyscall pages. > > > > x86-64 doesn't actually have a gate page like i386. > > I'm confused now. x86-64 doesn't have signal trmapolines in its > vsyscall pages, unless they've been added in the last week or two. > The only vsyscalls on x86-64 are vgettimeofday and vtime, in the > git pull I've got here. Yes, sorry for the confusion - you're right the vstubs only exist for compat. I nearly added them at some point, but didn't because there was really no advantage of keeping them in glibc. With a vDSO this will be different. > There was a third problem other than the two I mentioned above but > I'm afraid I can't remember what it was now. I'd have to try it again. > I did work around both the uleb128 and sleb128 problems, and there's > actually a signal frame marker in sufficiently recent gas, but I > ran into another problem that made me give up. Which parts exactly of the signal frame does gas have trouble with? -Andi