From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4681 invoked by alias); 6 Jul 2011 22:42:41 -0000 Received: (qmail 4670 invoked by uid 22791); 6 Jul 2011 22:42:39 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from rock.gnat.com (HELO rock.gnat.com) (205.232.38.15) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 06 Jul 2011 22:42:24 +0000 Received: from localhost (localhost.localdomain [127.0.0.1]) by filtered-rock.gnat.com (Postfix) with ESMTP id 217452BADE2; Wed, 6 Jul 2011 18:42:24 -0400 (EDT) Received: from rock.gnat.com ([127.0.0.1]) by localhost (rock.gnat.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 77JpeakbbF8C; Wed, 6 Jul 2011 18:42:24 -0400 (EDT) Received: from joel.gnat.com (localhost.localdomain [127.0.0.1]) by rock.gnat.com (Postfix) with ESMTP id DE1682BAD92; Wed, 6 Jul 2011 18:42:23 -0400 (EDT) Received: by joel.gnat.com (Postfix, from userid 1000) id 0C52A145615; Wed, 6 Jul 2011 15:42:22 -0700 (PDT) Date: Wed, 06 Jul 2011 22:42:00 -0000 From: Joel Brobecker To: Yuri Cc: Tom Tromey , gdb@sourceware.org, Steven Kreuzer Subject: Re: 7.3 is broken on FreeBSD Message-ID: <20110706224222.GV15572@adacore.com> References: <4E14C877.6080402@rawbw.com> <4E14D646.5090003@rawbw.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4E14D646.5090003@rawbw.com> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2011-07/txt/msg00026.txt.bz2 > Here is the debugging session log, debugging gdb-7.3 running debug > thunderbird with gdb-7.2: [...] > (gdb) r > Starting program: /usr/local/lib/thunderbird/thunderbird-bin > > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 8018041c0 (LWP 101940)] Can you look at gdb/config.in in the build directory, and tell me if the following macro is defined? HAVE_PT_GETDBREGS It looks like there definitely is a weakness that leaves the i386_dr_low structure unset if that macro is not defined. But as far as I can tell, it's working just great for me. The code in question is _initialize_i386fbsd_nat: #ifdef HAVE_PT_GETDBREGS i386_use_watchpoints (t); i386_dr_low.set_control = i386bsd_dr_set_control; i386_dr_low.set_addr = i386bsd_dr_set_addr; i386_dr_low.reset_addr = i386bsd_dr_reset_addr; i386_dr_low.get_status = i386bsd_dr_get_status; i386_set_debug_register_length (4); #endif /* HAVE_PT_GETDBREGS */ I don't have FreeBSD 8.2 lying around, can you see if PT_GETDBREGS is defined in /usr/include/sys/ptrace.h? As fra as I can tell, it's still available in FreeBSD 8.1. In the meantime, I think we'll process with the first pre-release, with a question mark on FreeBSD 8.2. We might release with 8.2 being known to be broken, we'll see when we're ready to make the release whether to wait for a fix or not (just to be clear, I am not planning on working on this, I won't even have time). -- Joel