From owner-freebsd-arch@freebsd.org Tue Oct 20 21:04:17 2015 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DB452A1A0D7 for ; Tue, 20 Oct 2015 21:04:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-yk0-x22c.google.com (mail-yk0-x22c.google.com [IPv6:2607:f8b0:4002:c07::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9F464867; Tue, 20 Oct 2015 21:04:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by ykdr3 with SMTP id r3so29859596ykd.1; Tue, 20 Oct 2015 14:04:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=oNBw4xRDxQ5f1XQGd9FS3QDYYjRAnLbTA6rz7CcuJG0=; b=DFecacDx4ra1q44sE828TPPiuH5/i7Ehq6X6HkO4EQo1eBjW7Nb6mSUFnA4K91o5bh WP9jVote5cLAbp8ZfIJIzfjoKpgWAS0B92FZQr0XPVX1/AS35gK5S1nJQ+3tInN2Vq1/ 2gD1KcTJYIfZmnmh/ZGzqr959gMnaJaX8Xzs9fnXtcauW8aJ1EGtCAb/fvP8Dl3QDS5e lE0tahDgZAaG4m5F0QY7TUCh9vDJrLkgjA+lKRx8+cJgkjDEdTVC6gKdnnJlBK7NYLWV 1TzVi81SlGZx3fzaNctsEGVWlNSUSMx04xJLWAoNUUZc68qrA4s+Vx2iZXI40jgu/ij7 IKZQ== X-Received: by 10.129.102.135 with SMTP id a129mr4403533ywc.104.1445375056853; Tue, 20 Oct 2015 14:04:16 -0700 (PDT) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.37.84.134 with HTTP; Tue, 20 Oct 2015 14:03:57 -0700 (PDT) In-Reply-To: <2678091.es0AGJQ0Ou@ralph.baldwin.cx> References: <2678091.es0AGJQ0Ou@ralph.baldwin.cx> From: Ed Maste Date: Tue, 20 Oct 2015 17:03:57 -0400 X-Google-Sender-Auth: QKubs0fphwYtIQDctb6BgeNBRCM Message-ID: Subject: Re: Retiring in-tree GDB To: John Baldwin Cc: freebsd-arch Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Oct 2015 21:04:18 -0000 On 20 October 2015 at 16:36, John Baldwin wrote: > > However, I would like to propose that we retire the in-tree GDB for some of > our platforms (namely x86) for 11. In particular, I think we should default > to enabling lldb and disabling gdb for platforms that meet the following > criteria: > > 1) devel/gdb works including thread and kgdb support > 2) lldb works > > We could perhaps be more aggressive and handle lldb and gdb toggles > independently, but I think we want to ship some sort of userland debugger > out of the box on all of our platforms. The question I think might be if > we end up with platforms where 1) is true but 2) is not (such as powerpc). > > I believe that these conditions are only true for x86 currently. For 11 I'd go further, and stop shipping the in-tree gdb if either 1 or 2 is true. Our in-tree gdb is over a decade old and has a number of issues. I'm not sure there's much value in keeping it if 'pkg install gdb' provides a gdb that's better in every way. I'd suggest we do it in several steps, perhaps: - Turn on lldb by default on amd64 (where it's at least as functional as in-tree gdb) and on arm64 (where it's the most functional debugger with FreeBSD support now). - Send an announcement with the current status, information on the gdb port, next steps, and to encourage testing of lldb on arm, powerpc, and mips. - Fix LLDB/i386 support - Turn on lldb by default on remaining platforms (excluding sparc64, which lacks support upstream) - Fix remaining devel/gdb issues - Turn off in-tree gdb on all platforms where either devel/gdb or lldb works There is a Phabricator review open for the first step at https://reviews.freebsd.org/D2 > When this topic was last raised (by Warner I believe), the primary objection > (certainly my main one) was that the in-tree kgdb was the only kernel debugger > available. kgdb is now available via the devel/gdb port in ports (and as of > last week was enabled by default, so 'pkg install gdb' will get you a kgdb > binary). The kgdb in ports is in general superior to the one in the base > system. It is a cross debugger by default (and with my pending patches to > libkvm it even supports cross debugging of vmcores). > > There are some issues still with devel/gdb: namely it does not currently > support some of the platforms supported by our in tree gdb such as arm and > mips. For these platforms I think the in-tree gdb will need to remain until > there is a suitable alternative. > > Comments? > > -- > John Baldwin > _______________________________________________ > freebsd-arch@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arch > To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"