From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 125560 invoked by alias); 6 Oct 2016 09:32:38 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 125545 invoked by uid 89); 6 Oct 2016 09:32:38 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: mail-pa0-f67.google.com Received: from mail-pa0-f67.google.com (HELO mail-pa0-f67.google.com) (209.85.220.67) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 06 Oct 2016 09:32:28 +0000 Received: by mail-pa0-f67.google.com with SMTP id r9so857158paz.1 for ; Thu, 06 Oct 2016 02:32:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=RS9DqdEhOHu+qLvek0fIhe8rmdKA4fVbbkuyiY8W+Uc=; b=G8Hg+XugjEj/T6hbprEk2wffGlnnKQd5/C1ue58IRsfNpfWYutNschujpqIN8bSdpE SDVDS/ifpNJPqqBWPO9uyaDJr+bPIajCtPGY/xXXooQAWK1wt1XEdCAUCyJwsWLtfa5r Hq1Qv9Lw9NvhrV2ZUCteum1ZsbAkSIr3TZWnuY9MauofEDNTEc+Bci+VaUh/GFxGOXl1 /6hdfZxG/9OpTGz4bcmkQAvbBeaJQ4fAXa8Ee0GanWs13ZjUxn0yNXMDodpWiPNteDIM 70bjTU5mFSff5vqnEzIKFy6M6uQqv9jOuraLjJ89kLUEGpH4sAebFUztQVQgXV3iA0Zp RQnA== X-Gm-Message-State: AA6/9RkzhcjluGIJLnXlGcgdXicfD6hUj1nKoLyaA7Y+LoQECvNUKV0b5sL0BoyaltVMhw== X-Received: by 10.66.246.13 with SMTP id xs13mr20348849pac.57.1475746346642; Thu, 06 Oct 2016 02:32:26 -0700 (PDT) Received: from E107787-LIN (gcc1-power7.osuosl.org. [140.211.15.137]) by smtp.gmail.com with ESMTPSA id r7sm3869687pfk.49.2016.10.06.02.32.21 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Thu, 06 Oct 2016 02:32:25 -0700 (PDT) From: Yao Qi To: Markus Metzger Cc: gdb-patches@sourceware.org, qiyaoltc@gmail.com, palves@redhat.com Subject: Re: [PATCH] stack: fix gdb.dwarf2/dw2-undefined-ret-addr.exp regression References: <1469185962-28925-1-git-send-email-markus.t.metzger@intel.com> Date: Thu, 06 Oct 2016 09:32:00 -0000 In-Reply-To: <1469185962-28925-1-git-send-email-markus.t.metzger@intel.com> (Markus Metzger's message of "Fri, 22 Jul 2016 13:12:42 +0200") Message-ID: <86shs9akm6.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2016-10/txt/msg00110.txt.bz2 Markus Metzger writes: > Commit a038fa3e14a4 stack: check frame_unwind_caller_id adds a frame_id c= heck to > frame_info and treats a missing frame_id as NOT_AVAILABLE_ERROR. This ca= uses a > regression in gdb.dwarf2/dw2-undefined-ret-addr.exp. > > Treat a missing frame_id as OPTIMIZED_OUT_ERROR instead. > > See also https://sourceware.org/ml/gdb-patches/2016-07/msg00273.html. > > 2016-07-22 Markus Metzger > > gdb/ > * stack.c (frame_info): Call val_print_not_saved instead of > val_print_unavailable if frame_id check fails. It is good to me. I read this patch several times since July, because of something else in a038fa3e14a4. Do we need to move frame_unwind_caller_id into try block? like this, TRY { if (!frame_id_p (frame_unwind_caller_id (fi))) val_print_unavailable (gdb_stdout); else { caller_pc =3D frame_unwind_caller_pc (fi); caller_pc_p =3D 1; } } CATCH (ex, ....) frame_unwind_caller_id calls get_prev_frame_always which only catches MEMORY_ERROR. IIUC, get_prev_frame_always and it callees may throw NOT_AVAILABLE_ERROR. --=20 Yao (=E9=BD=90=E5=B0=A7)