From owner-cvs-src@FreeBSD.ORG Sun Apr 18 13:59:43 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6371D16A4CE; Sun, 18 Apr 2004 13:59:43 -0700 (PDT) Received: from ns1.xcllnt.net (209-128-86-226.bayarea.net [209.128.86.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA7B743D53; Sun, 18 Apr 2004 13:59:42 -0700 (PDT) (envelope-from marcel@xcllnt.net) Received: from dhcp01.pn.xcllnt.net (dhcp01.pn.xcllnt.net [192.168.4.201]) by ns1.xcllnt.net (8.12.11/8.12.11) with ESMTP id i3IKxg6M085321; Sun, 18 Apr 2004 13:59:42 -0700 (PDT) (envelope-from marcel@piii.pn.xcllnt.net) Received: from dhcp01.pn.xcllnt.net (localhost [127.0.0.1]) i3IKxgde067270; Sun, 18 Apr 2004 13:59:42 -0700 (PDT) (envelope-from marcel@dhcp01.pn.xcllnt.net) Received: (from marcel@localhost) by dhcp01.pn.xcllnt.net (8.12.11/8.12.11/Submit) id i3IKxg0V067269; Sun, 18 Apr 2004 13:59:42 -0700 (PDT) (envelope-from marcel) Date: Sun, 18 Apr 2004 13:59:42 -0700 From: Marcel Moolenaar To: "David O'Brien" Message-ID: <20040418205942.GA65385@dhcp01.pn.xcllnt.net> References: <200404181609.i3IG9XA1099515@repoman.freebsd.org> <20040418162431.GI12383@ip.net.ua> <20040418163301.GA64947@dhcp01.pn.xcllnt.net> <20040418164651.GB62817@dragon.nuxi.com> <20040418170730.GB65020@dhcp01.pn.xcllnt.net> <20040418175350.GA65307@dragon.nuxi.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040418175350.GA65307@dragon.nuxi.com> User-Agent: Mutt/1.4.2.1i cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: Ruslan Ermilov cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/gnu/usr.bin/binutils/libbfd/i386 bfd.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Apr 2004 20:59:43 -0000 On Sun, Apr 18, 2004 at 10:53:50AM -0700, David O'Brien wrote: > > > > Yes, I'll import to gdb6 > > Please don't do this -- I'll ask Core for a backout. Make sure you tell them what you want to see backed out, who is going to do it and why core needs to be asked about it. They might think you're a whiner otherwise. > I know how bad the > trys at this were before. gdb6 can be tested just fine in ports. Bullshit. gdb depends on bfd, opcodes and libiberty. All three are part of binutils and you don't test gdb with the binutils we have in the tree in you test the port or test outside the tree without also importing a new binutils. In fact, I've been asking for a binutils upgrade for a long time and I don't think I have to tell you how easy it is to get the maintainer to cooperate. See also below. > If the gdb52 port doesn't do all that > src/contrib/gdb[52] does, they can find the missing bits in CVS and add > patches to the port. ??????? If it's already impossible to get committers to cooperate and invest time in something that's not currently their pet peeve, (like trying to get you to upgrade binutils) and user testing is pretty much non-existent if you don't force the code down their throat, then the extend of your stupidity to actually suggest that people collect bits from various places and make a working gdb out of it is beyond my sublime capability to comprehend large concepts. > > > Import it just as src/contrib/gdb. > > > > No. There are too many dependencies. > > What are they? o binutils: most importantly bfd, but the gdb testsuite does depend on having a good assembler to avoid bogus failures. o light-weight processes in the context of libpthread and libthr and how they affect core files. This too may cause changes to bfd to support any new notes we may need (such as NT_LWPSTATUS). o Support for libpthread and libthr as well as libc_r in general. This depends on a new library, libthread_db, and possibly (likely) needs changes to gdb that need to be contributed back. Not to mention that changes to KSE, libpthread and libthr are also needed. There are ABI breakages to be expected here. o Remote debugging the kernel and the bogus dependency on sio(4). The sio(4) driver is too broken to support all platforms and the remote debugging capability is important to have. Not to mention that a more generic approach also allows us to debug over firewire or ethernet. o New platforms: amd64, ia64 and sparc64. Support for gdb is mostly untested or otherwise in an unknown state. Understanding what works and what doesn't work takes time and is likely to trigger changes to the platforms and/or gdb. o Kernel modules. I haven't paid any attention to Peter's work yet, but I'm not at all surprised that it may affect the various hacks we have in that area. We need to be responsive or at least prepared. o Kernel threads. The kernel threads are not visible in gdb because it's new functionality. It's important to have support for that. This affects remote kernel debugging. o TLS. I don't think there's anything in gdb that we need for this, but TLS affects binutils, RTLD, kernel, libthread_db and threading libraries. No doubt that gdb support may have an effect on how we implement that. o Last but not least; all the above is affected by having a gdb upgrade in between. Do you wait for gdb to be upgraded before you work on some part or does gdb depend on that part and do you need to prototype it first with the existing gdb. The point is that kernel, threading libraries, system headers, gdb and binutils need changes. Not each on their own and independent of each other, but triggered and affected by each other. This makes it a highly volatile cross-discipline problem that cannot be solved without planning and collaboration. And it definitely cannot be solved if you pull one element ot of the mix and develop it on the side-lines. Since we don't have much time and resources, planning is crucial. Unfortunately, even that is has been demonstrated to be impossible. -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net