From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 79687 invoked by alias); 6 Jul 2017 11:17:31 -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 79667 invoked by uid 89); 6 Jul 2017 11:17:29 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-10.5 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,GIT_PATCH_3,SPF_HELO_PASS,SPF_SOFTFAIL autolearn=ham version=3.3.2 spammy=HX-Greylist:0400, HX-Greylist:EDT, HX-Greylist:AUTH, HX-Greylist:succeeded X-HELO: mail.baldwin.cx Received: from bigwig.baldwin.cx (HELO mail.baldwin.cx) (96.47.65.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 06 Jul 2017 11:17:27 +0000 Received: from John-Baldwins-MacBook-Pro-2.local (d-24-245-127-120.cpe.metrocast.net [24.245.127.120]) by mail.baldwin.cx (Postfix) with ESMTPSA id B0ED310AF01 for ; Thu, 6 Jul 2017 07:17:24 -0400 (EDT) Subject: Re: [PATCH 0/8] Add support for $_siginfo on FreeBSD From: John Baldwin To: gdb-patches@sourceware.org References: <20170629233226.20155-1-jhb@FreeBSD.org> Message-ID: <86c318b0-91ea-58b6-8a4e-b3da39e3504e@FreeBSD.org> Date: Thu, 06 Jul 2017 11:17:00 -0000 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 In-Reply-To: <20170629233226.20155-1-jhb@FreeBSD.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2017-07/txt/msg00037.txt.bz2 On 6/29/17 7:32 PM, John Baldwin wrote: > This series adds support for $_siginfo for both live processes and > process cores. siginfo_t for threads is only stored in a per-thread > ELF core note on FreeBSD 12.0 and later. > > The existing code in corelow.c for siginfo_t assumed the Linux-specific > NT_SIGINFO ELF core note, but FreeBSD stores siginfo as one member of a > larger ELF core note. To accomodate this, I added a new gdbarch method > that is used to fetch the signal information from a core dump. I moved > the body of the existing core_get_siginfo function into an implementation > of the new gdbarch method in linux-tdep.c. > > Tested on FreeBSD/amd64 (64-bit and 32-bit binaries), FreeBSD/i386, > and Centos/x86-64 (no regressions in test suite for this last). Ping? The binutils patches (6 and 7) have been approved, but some of the GDB patches (3 and 4) are not FreeBSD-specific (e.g. a new gdbarch method for fetching siginfo from a core). > John Baldwin (8): > Implement the "get_siginfo_type" gdbarch method for FreeBSD > architectures. > Fetch signal information for native FreeBSD processes. > Move the thread_section_name class to gdbcore.h. > Add a new gdbarch method to fetch signal information from core files. > Use the thread_section_name helper class in fbsd_core_thread_name. > Recognize the recently-added FreeBSD core dump note for LWP info. > Create psuedo sections for FreeBSD NT_PTLWPINFO core notes. > Read signal information from FreeBSD core dumps. > > bfd/ChangeLog | 4 ++ > bfd/elf.c | 4 ++ > binutils/ChangeLog | 4 ++ > binutils/readelf.c | 2 + > gdb/ChangeLog | 43 +++++++++++ > gdb/corelow.c | 82 ++++----------------- > gdb/fbsd-nat.c | 155 ++++++++++++++++++++++++++++++++++++++++ > gdb/fbsd-tdep.c | 197 +++++++++++++++++++++++++++++++++++++++++++++++++-- > gdb/gdbarch.c | 32 +++++++++ > gdb/gdbarch.h | 10 +++ > gdb/gdbarch.sh | 5 ++ > gdb/gdbcore.h | 45 ++++++++++++ > gdb/linux-tdep.c | 21 ++++++ > include/ChangeLog | 4 ++ > include/elf/common.h | 1 + > 15 files changed, 536 insertions(+), 73 deletions(-) > -- John Baldwin