From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14133 invoked by alias); 22 Dec 2005 15:38:52 -0000 Received: (qmail 14123 invoked by uid 22791); 22 Dec 2005 15:38:51 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 22 Dec 2005 15:38:49 +0000 Received: from elgar.sibelius.xs4all.nl (root@elgar.sibelius.xs4all.nl [192.168.0.2]) by sibelius.xs4all.nl (8.13.4/8.13.4) with ESMTP id jBMFcEv7031336; Thu, 22 Dec 2005 16:38:14 +0100 (CET) Received: from elgar.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by elgar.sibelius.xs4all.nl (8.13.4/8.13.3) with ESMTP id jBMFcEQf028239; Thu, 22 Dec 2005 16:38:14 +0100 (CET) Received: (from kettenis@localhost) by elgar.sibelius.xs4all.nl (8.13.4/8.13.4/Submit) id jBMFcErG006442; Thu, 22 Dec 2005 16:38:14 +0100 (CET) Date: Fri, 23 Dec 2005 14:29:00 -0000 Message-Id: <200512221538.jBMFcErG006442@elgar.sibelius.xs4all.nl> From: Mark Kettenis To: drow@false.org CC: mark.kettenis@xs4all.nl, gdb-patches@sourceware.org In-reply-to: <20051222152615.GA4248@nevyn.them.org> (message from Daniel Jacobowitz on Thu, 22 Dec 2005 10:26:15 -0500) Subject: Re: [commit] Fix OpenBSD/i386 and OpenBSD/amd64 kernel trapframe unwinders References: <200512221409.jBME9L7W005129@elgar.sibelius.xs4all.nl> <20051222142013.GA3110@nevyn.them.org> <200512221520.jBMFK7fL029527@elgar.sibelius.xs4all.nl> <20051222152615.GA4248@nevyn.them.org> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2005-12/txt/msg00266.txt.bz2 > Date: Thu, 22 Dec 2005 10:26:15 -0500 > From: Daniel Jacobowitz > > On Thu, Dec 22, 2005 at 04:20:07PM +0100, Mark Kettenis wrote: > > I've struggled with this for a while. Apart from adding DWARF2 CFI to > > the kernel, there's no real alternative to matching function names. > > And DWARF2 doesn't allow me to terminate the backtrace at the user to > > kernel transition. > > Yes it does - what do you think inspired my patches for an undefined > return address column? :-) They were for Linux's KGDB. > > Unless the OpenBSD kernel has a distressingly large number of entry > points, the same thing should work there. It's only if you want to do > something besides stop at the boundary that things get really > complicated. Yup. There's a seperate entry point for every interrupt vector (hence the strncmp() for "Xintr") and on top of that, interrupts can come from both userland and from within the kernel. I only want to terminate the backtrace when the interrupt came from userland. > > P.S. The new Xorg X11R6.9/X11R7.0 doesn't need any special patches > > anymore since they now use dlopen(3) to load modules. > > Ooh, that's good news. The Linux kernel module loader still does, > though - they've been talking about loading objects as shared libraries > for years, but I don't think it's going to happen soon. A monilithic kernel has its benefits ;-).