From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9007 invoked by alias); 2 Jul 2018 15:48:53 -0000 Mailing-List: contact gnu-gabi-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Post: List-Help: List-Subscribe: Sender: gnu-gabi-owner@sourceware.org Received: (qmail 8657 invoked by uid 89); 2 Jul 2018 15:48:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.99.4 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_PASS autolearn=ham version=3.3.2 spammy=Ie, blindly, argue, dumb X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-Spam-User: qpsmtpd, 3 recipients X-HELO: mx1.suse.de Received: from mx2.suse.de (HELO mx1.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 02 Jul 2018 15:48:35 +0000 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id C37BAADCC; Mon, 2 Jul 2018 15:48:32 +0000 (UTC) Date: Mon, 01 Jan 2018 00:00:00 -0000 From: Michael Matz To: Jeff Law cc: Florian Weimer , GCC , GNU C Library , Binutils , gnu-gabi@sourceware.org Subject: Re: Invalid program counters and unwinding In-Reply-To: <6c555c05-e6d7-f37a-577f-4e0559c36f76@redhat.com> Message-ID: References: <6feeaf09-0bc2-238b-42df-2ff915f3581e@redhat.com> <2b47dbd9-f1a2-1bf0-06ca-fca40660fabf@redhat.com> <6c555c05-e6d7-f37a-577f-4e0559c36f76@redhat.com> User-Agent: Alpine 2.21 (LSU 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-IsSubscribed: yes X-SW-Source: 2018-q3/txt/msg00000.txt.bz2 Hi, On Thu, 28 Jun 2018, Jeff Law wrote: > I believe "dumb" is referring to the fact that we're already in a bit of > a weird state as evidenced by the NULL FDE. Blindly trying to read the > contents of the PC that we couldn't map to an FDE is, IMHO, dumb. > > One might even be able to argue in this day and age that we should have > suitable descriptors for everything. If no suitable descriptor is found > then backtracing should stop. Lack of suitable descriptors in any code > would be considered a bug in that scenario. I disagree. ASM code often lacks unwind descriptors (now less than in the past, but still). My rule of thumb is always: no descriptor -> has to be a framepointer-using routine with standard calling sequence. (I.e. declare the combination of no descriptor and no fp to be a bug). Some of the callee-saved register will temporarily be wrong but unwinding can continue. Ciao, Michael.