From owner-kdb@oss.sgi.com Mon Apr 1 16:08:42 2002 Received: (from majordomo@localhost) by oss.sgi.com (8.11.6/8.11.3) id g3208gJ05875 for kdb-outgoing; Mon, 1 Apr 2002 16:08:42 -0800 Received: from afara.com (h218-19.afara.com [63.113.218.19]) by oss.sgi.com (8.11.6/8.11.3) with SMTP id g3208bo05871 for ; Mon, 1 Apr 2002 16:08:37 -0800 Received: (from tduffy@localhost) by afara.com (8.11.6/8.11.6) id g3208B017369; Mon, 1 Apr 2002 16:08:12 -0800 X-Authentication-Warning: tduffy-lnx.afara.com: tduffy set sender to Thomas.Duffy.99@alumni.brown.edu using -f Subject: fix waring if you #include From: Thomas Duffy To: Keith Owens Cc: kdb@oss.sgi.com Content-Type: multipart/mixed; boundary="=-JOBgixTSMZLPIh2X0txi" X-Mailer: Ximian Evolution 1.0.3.99 Date: 01 Apr 2002 16:08:11 -0800 Message-Id: <1017706091.32762.38.camel@tduffy-lnx.afara.com> Mime-Version: 1.0 Sender: owner-kdb@oss.sgi.com Precedence: bulk --=-JOBgixTSMZLPIh2X0txi Content-Type: text/plain Content-Transfer-Encoding: 7bit if you include kdb.h and CONFIG_KDB is not on, gcc will generate this warning: warning: statement with no effect if your code calls kdb(). this patch fixes this (so you can compile -Werror like I like to do with my code :) -tduffy -- He who receives an idea from me, receives instruction himself without lessening mine; as he who lights his taper at mine, receives light without darkening me. -- Thomas Jefferson --=-JOBgixTSMZLPIh2X0txi Content-Disposition: attachment; filename=kdb-warning-fix.patch Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; name=kdb-warning-fix.patch; charset=ISO-8859-1 --- linux_kdb/include/linux/kdb.h.orig Wed Feb 13 11:54:17 2002 +++ linux_kdb/include/linux/kdb.h Mon Apr 1 15:57:07 2002 @@ -164,7 +164,7 @@ #ifdef CONFIG_KDB extern int kdb(kdb_reason_t, int, kdb_eframe_t); #else -#define kdb(reason,error_code,frame) (0) +#define kdb(reason,error_code,frame) do { } while(0) #endif =20 typedef int (*kdb_func_t)(int, const char **, const char **, kdb_eframe_t)= ; --=-JOBgixTSMZLPIh2X0txi-- From owner-kdb@oss.sgi.com Wed Apr 10 15:45:22 2002 Received: from oss.sgi.com (localhost.localdomain [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3AMjM8d025148 for ; Wed, 10 Apr 2002 15:45:22 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3AMjMjS025147 for kdb-outgoing; Wed, 10 Apr 2002 15:45:22 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from afara-gw.afara.com (mx1.afara.com [63.113.218.20]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3AMjC8d025137 for ; Wed, 10 Apr 2002 15:45:13 -0700 Received: from afara-ex.afara.com ([10.2.4.29]) by afara-gw.afara.com with Microsoft SMTPSVC(5.0.2195.2966); Wed, 10 Apr 2002 15:45:36 -0700 Received: from cs.columbia.edu ([10.2.4.63]) by afara-ex.afara.com with Microsoft SMTPSVC(5.0.2195.2966); Wed, 10 Apr 2002 15:45:36 -0700 Message-ID: <3CB4C090.91851329@cs.columbia.edu> Date: Wed, 10 Apr 2002 15:45:36 -0700 From: Ethan Solomita X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.4.3-SGI_XFS_1.0.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: kdb@oss.sgi.com Subject: kdb problems with SMP systems Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 10 Apr 2002 22:45:36.0917 (UTC) FILETIME=[6E7F1450:01C1E0E1] Sender: owner-kdb@oss.sgi.com Precedence: bulk It seems that kdb has some serious problems in SMP environments. I get regular lockups when I set a breakpoint at a common location and a second CPU hits the breakpoint before the first CPU has gathered up all the other CPUs. Have others tried kdb in SMP situations and had problems? I'm running on sparc64, which I realize isn't the most common platform for kdb. If you look at the main kdb() function, it's clear that it won't work reliably for SMP. There are a number of issues. One involves kdb_state. There is no synchronization performed until after you hit the DEBUG line "kdb 4". The code leading up to this point will set various flags in kdb_state, for example KDB and KDB_CONTROL are set, SUPPRESS is cleared, REENTRY is either set or cleared, etc. So let's say we enter kdb(), change kdb_state, then lose the race after "kdb 4" to become kdb_initial_cpu. We will then receive the IPI from the CPU that won the race, we'll re-enter kdb() but with state flags set which shouldn't be, we'll then go through all of kdb() which will do things like clear the KDB and KDB_CONTROL flags before it exits, and then we'll return where we left off and grab kdb_initial_cpu. Except all these state flags which we thought we'd set (or cleared) have now been changed. This has to be wrong. Another problem comes from saying "go" after hitting a breakpoint. This requires some magic to clear the breakpoint we just hit, single step the CPU so as to execute the actual instruction at the breakpoint, quickly re-enter kdb, clear single stepping, and then resume. The catch is, kdb is releasing all the other processors during this. So the breakpoint (which the other CPUs should still hit) is temporarily missing, and for those of us using CPUs without hardware single-step, we have to create a temporary breakpoint at the next instruction, which any other CPU could hit. So this needs to be changed. Also, the very top of kdb() calls kdba_{bp|db}_trap() after hitting a breakpoint. But the different CPUs have not yet synchronized. These functions change state flags, set bp_delay in the breakpoint structure, etc. So if two CPUS hit a breakpoint concurrently, both CPUs will believe that they've set bp_delay, one of them will win the race to own kdb_initial_cpu, but then afterwards the other CPU will enter kdb thinking that it has correctly set bp_delay, when it's possible that the breakpoint doesn't even exist, or worse the first CPU is playing its single-step-after-breakpoint game and then we hit on the breakpoint that temporarily doesn't exist. Bad stuff. I've been working on fixes to this, but it's complicated stuff. I've gotten some feedback from Keith, but I was hoping to let others who know the code voice their opinions too. It seems to me that the synchronization step (ie. grabbing kdb_initial_cpu) has to come much earlier in kdb(), before any state has been set. This seems simplest -- don't allow contention. I noticed one issue, and Keith pointed out another. One is that you may get recursion in kdb(), and sometimes this is legal. So if kdb_initial_cpu == smp_processor_id() we need to evaluate whether this is a legal recursion. This also implies that the RECURSE env var needs to be evaluated this far up in the function. The other issue is on i386 systems (and possibly others) where the user-land breakpoint instruction is the same as kdb's kernel-space breakpoint instruction. If the user is in gdb and has set a breakpoint with "ignore 100000" or with some condition that occurs rarely, we can't afford to waste a lot of kernel resources (ie. synchronizing all the CPUs) before we realize that the breakpoint wasn't for us. But the same function (kdba_bp_trap()) that checks to see if the breakpoint was ours, also sets a lot of state that shouldn't be done without all the CPUs happily synchronized. My thought on this was to create a second function ala kdba_bp_check() which scans the breakpoint list without making assumptions about your state, and without changing state. If this says the breakpoint is real, then you synchronize processors and call kdba_bp_trap(). This would change arch-specific code, so I wanted to get feedback on it. If you've read this far, thanks! -- Ethan From owner-kdb@oss.sgi.com Fri Apr 12 00:41:49 2002 Received: from oss.sgi.com (localhost.localdomain [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3C7fn8d029961 for ; Fri, 12 Apr 2002 00:41:49 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3C7fmPX029960 for kdb-outgoing; Fri, 12 Apr 2002 00:41:48 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from web14608.mail.yahoo.com (web14608.mail.yahoo.com [216.136.224.88]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3C7fk8d029957 for ; Fri, 12 Apr 2002 00:41:46 -0700 Message-ID: <20020412074218.68517.qmail@web14608.mail.yahoo.com> Received: from [202.138.119.130] by web14608.mail.yahoo.com via HTTP; Fri, 12 Apr 2002 00:42:18 PDT Date: Fri, 12 Apr 2002 00:42:18 -0700 (PDT) From: patil kaustubh Subject: kdb for SMP To: kdb@oss.sgi.com MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: owner-kdb@oss.sgi.com Precedence: bulk hello, I have a device driver for a Audio/video card which is fully functional on a uni-processor system. i have made the device driver SMP compliant and i am able to run the stream ,but the playing of stream ceases after some time. Can i use kdb to debug?.if yes,can any body guide me with complete info or even links where there is enough info ? i would be thankful. -regards, kaustubh patil __________________________________________________ Do You Yahoo!? Yahoo! Tax Center - online filing with TurboTax http://taxes.yahoo.com/ From owner-kdb@oss.sgi.com Wed Apr 17 21:42:00 2002 Received: from oss.sgi.com (localhost.localdomain [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3I4g08d013953 for ; Wed, 17 Apr 2002 21:42:00 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3I4g026013952 for kdb-outgoing; Wed, 17 Apr 2002 21:42:00 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from uranus.planet.shaolinmicro.com ([210.176.202.14]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3I4ft8d013935 for ; Wed, 17 Apr 2002 21:41:56 -0700 Received: from star8.staff.shaolinmicro.com (star8.staff.shaolinmicro.com [192.168.0.8]) by uranus.planet.shaolinmicro.com (8.11.6/linuxconf) with ESMTP id g3I4gsJ29794 for ; Thu, 18 Apr 2002 12:42:55 +0800 Subject: kdb documentation From: Joe Wong To: kdb@oss.sgi.com Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Evolution/1.0.1 Date: 18 Apr 2002 12:42:54 +0800 Message-Id: <1019104975.1274.2.camel@star8.staff.shaolinmicro.com> Mime-Version: 1.0 Sender: owner-kdb@oss.sgi.com Precedence: bulk Hello, Is there any detailed documentation on how to interpret the information output by 'bt' command. I would like to know how to relate the address on the screen to the source code, how to locate a variable within a certain stack frame and print its value for debugging. In addition, is there any way to instruct gcc to build a CODE file that contain both assembly code and the original C source code? TIA. - Joe From owner-kdb@oss.sgi.com Wed Apr 17 22:00:04 2002 Received: from oss.sgi.com (localhost.localdomain [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3I5048d014771 for ; Wed, 17 Apr 2002 22:00:04 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3I504d0014770 for kdb-outgoing; Wed, 17 Apr 2002 22:00:04 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from mail.ocs.com.au (mail.ocs.com.au [203.34.97.2]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3I4xx8d014757 for ; Wed, 17 Apr 2002 22:00:01 -0700 Received: (qmail 23702 invoked from network); 18 Apr 2002 05:00:59 -0000 Received: from ocs3.intra.ocs.com.au (192.168.255.3) by mail.ocs.com.au with SMTP; 18 Apr 2002 05:00:59 -0000 Received: by ocs3.intra.ocs.com.au (Postfix, from userid 16331) id 6D2033001E3; Thu, 18 Apr 2002 15:00:56 +1000 (EST) Received: from ocs3.intra.ocs.com.au (localhost [127.0.0.1]) by ocs3.intra.ocs.com.au (Postfix) with ESMTP id 223A994; Thu, 18 Apr 2002 15:00:56 +1000 (EST) X-Mailer: exmh version 2.2 06/23/2000 with nmh-1.0.4 From: Keith Owens To: Joe Wong Cc: kdb@oss.sgi.com Subject: Re: kdb documentation In-reply-to: Your message of "18 Apr 2002 12:42:54 +0800." <1019104975.1274.2.camel@star8.staff.shaolinmicro.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 18 Apr 2002 15:00:50 +1000 Message-ID: <31659.1019106050@ocs3.intra.ocs.com.au> Sender: owner-kdb@oss.sgi.com Precedence: bulk On 18 Apr 2002 12:42:54 +0800, Joe Wong wrote: > Is there any detailed documentation on how to interpret the >information output by 'bt' command. I would like to know how to relate >the address on the screen to the source code, how to locate a variable >within a certain stack frame and print its value for debugging. > >In addition, is there any way to instruct gcc to build a CODE file that >contain both assembly code and the original C source code? All covered in linux/Documentation/kdb/kdb_bt.man. From owner-kdb@oss.sgi.com Tue Apr 30 09:07:13 2002 Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3UG7DwJ023921 for ; Tue, 30 Apr 2002 09:07:13 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3UG7DuH023920 for kdb-outgoing; Tue, 30 Apr 2002 09:07:13 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from rwcrmhc52.attbi.com (rwcrmhc52.attbi.com [216.148.227.88]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3UG7AwJ023917 for ; Tue, 30 Apr 2002 09:07:10 -0700 Received: from attbi.com ([24.60.61.209]) by rwcrmhc52.attbi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with ESMTP id <20020430160757.TWAJ4412.rwcrmhc52.attbi.com@attbi.com> for ; Tue, 30 Apr 2002 16:07:57 +0000 Message-ID: <3CCEC226.54575A34@attbi.com> Date: Tue, 30 Apr 2002 12:11:18 -0400 From: Jim Houston Reply-To: jim.houston@attbi.com X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.4.17 i686) X-Accept-Language: en MIME-Version: 1.0 To: kdb@oss.sgi.com Subject: Re: kdb problems with SMP systems Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-kdb@oss.sgi.com Precedence: bulk Hi! I have been seeing the problems Ethan described on SMP i386. I was impressed by his writing and clear analysis of the problems. I'm very interested in seeing this fixed and would like to work with you. I have some time to work on this, and I'm up to speed on the code. I have done similar work on debuggers for a couple of proprietary UNIX systems. If there is a fix in the works, I would like see what you're doing. I also noticed that single stepping saves and restores the interrupt enable flag. If you single step over an instruction which changes this flag, you lose its effect. Thanks Jim Houston - Concurrent Computer From owner-kdb@oss.sgi.com Tue Apr 30 10:24:43 2002 Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3UHOhwJ024885 for ; Tue, 30 Apr 2002 10:24:43 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3UHOhr8024884 for kdb-outgoing; Tue, 30 Apr 2002 10:24:43 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from rwcrmhc51.attbi.com (rwcrmhc51.attbi.com [204.127.198.38]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3UHOdwJ024876 for ; Tue, 30 Apr 2002 10:24:39 -0700 Received: from linux ([12.224.214.127]) by rwcrmhc51.attbi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with SMTP id <20020430172527.YUQN9799.rwcrmhc51.attbi.com@linux> for ; Tue, 30 Apr 2002 17:25:27 +0000 Content-Type: text/plain; charset="iso-8859-15" From: Charles Johnson Reply-To: cjnaj1@attbi.com To: kdb@oss.sgi.com Subject: kdb newbie question Date: Tue, 30 Apr 2002 10:25:43 -0700 X-Mailer: KMail [version 1.2] MIME-Version: 1.0 Message-Id: <02043010254302.00996@linux> Content-Transfer-Encoding: 8bit Sender: owner-kdb@oss.sgi.com Precedence: bulk I'm trying to apply the SGI kernel debugger patch to 2.4.18 and I have a couple of questions. First do I apply all three of the common patch files or just last one ? ( kdb-v2.1-2.4.18-common-3) Also when I apply the last achitecture specific file ( patch -p1 < kdb-v2.1-2.4.18-i386-1) I get: cfj@linux:~/linux > patch -p1 < kdb-v2.1-2.4.18-i386-1 can't find file to patch at input line 4 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |Index: 18.1/kdb-2.4-arch-i386/include/asm-i386/hw_irq.h |--- 18.1/kdb-2.4-arch-i386/include/asm-i386/hw_irq.h Thu, 17 Jan 2002 18:01:02 +1100 kaos (kdb-2.4-arch-i386/0_hw_irq.h 1.1 644) |+++ 18.2/kdb-2.4-arch-i386/include/asm-i386/hw_irq.h Thu, 17 Jan 2002 18:03:37 +1100 kaos (kdb-2.4-arch-i386/0_hw_irq.h 1.2 644) -------------------------- File to patch: Anyone have some words of wisdom ?? Thanks. --Charlie cjnaj1@attbi.com From owner-kdb@oss.sgi.com Tue Apr 30 11:39:12 2002 Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3UIdCwJ026248 for ; Tue, 30 Apr 2002 11:39:12 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3UIdCKn026247 for kdb-outgoing; Tue, 30 Apr 2002 11:39:12 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from afara-gw.afara.com (mx1.afara.com [63.113.218.20]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3UId5wJ026244 for ; Tue, 30 Apr 2002 11:39:06 -0700 Received: from afara-ex.afara.com ([10.2.4.29]) by afara-gw.afara.com with Microsoft SMTPSVC(5.0.2195.2966); Tue, 30 Apr 2002 11:39:52 -0700 Received: from tduffy-lnx.afara.com ([10.2.4.191]) by afara-ex.afara.com with Microsoft SMTPSVC(5.0.2195.2966); Tue, 30 Apr 2002 11:39:52 -0700 Subject: Re: kdb newbie question From: Thomas Duffy To: kdb@oss.sgi.com In-Reply-To: <02043010254302.00996@linux> References: <02043010254302.00996@linux> Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Ximian Evolution 1.0.4.99 Date: 30 Apr 2002 11:38:16 -0700 Message-Id: <1020191896.29539.16.camel@tduffy-lnx.afara.com> Mime-Version: 1.0 X-OriginalArrivalTime: 30 Apr 2002 18:39:52.0382 (UTC) FILETIME=[6A5495E0:01C1F076] Sender: owner-kdb@oss.sgi.com Precedence: bulk On Tue, 2002-04-30 at 10:25, Charles Johnson wrote: > First do I apply all three of the common patch files or just last one ? > ( kdb-v2.1-2.4.18-common-3) just the last one. > Also when I apply the last achitecture specific file ( patch -p1 < > kdb-v2.1-2.4.18-i386-1) I get: > > cfj@linux:~/linux > patch -p1 < kdb-v2.1-2.4.18-i386-1 > can't find file to patch at input line 4 > Perhaps you used the wrong -p or --strip option? > The text leading up to this was: > -------------------------- > |Index: 18.1/kdb-2.4-arch-i386/include/asm-i386/hw_irq.h > |--- 18.1/kdb-2.4-arch-i386/include/asm-i386/hw_irq.h Thu, 17 Jan 2002 > > 18:01:02 > +1100 kaos (kdb-2.4-arch-i386/0_hw_irq.h 1.1 644) > |+++ 18.2/kdb-2.4-arch-i386/include/asm-i386/hw_irq.h Thu, 17 Jan 2002 > > 18:03:37 > +1100 kaos (kdb-2.4-arch-i386/0_hw_irq.h 1.2 644) > -------------------------- > File to patch: > > Anyone have some words of wisdom ?? hrm, my copy starts off looking like this: Index: 18.1/include/asm-i386/hw_irq.h --- 18.1/include/asm-i386/hw_irq.h Thu, 17 Jan 2002 18:01:02 +1100 kaos (kdb-2.4-arch-i386/0_hw_irq.h 1.1 644) +++ 18.2/include/asm-i386/hw_irq.h Thu, 17 Jan 2002 18:03:37 +1100 kaos (kdb-2.4-arch-i386/0_hw_irq.h 1.2 644) @@ -23,6 +23,7 @@ #define FIRST_EXTERNAL_VECTOR 0x20 #define SYSCALL_VECTOR 0x80 +#define KDBENTER_VECTOR 0x81 /* * Vectors 0x20-0x2f are used for ISA interrupts. maybe you have a weird copy of the patch... what version of patch do you have on your system? by the looks of your copy of the patch, maybe you can try -p2. -tduffy From owner-kdb@oss.sgi.com Tue Apr 30 11:43:18 2002 Received: from oss.sgi.com (localhost [127.0.0.1]) by oss.sgi.com (8.12.3/8.12.3) with ESMTP id g3UIhIwJ026386 for ; Tue, 30 Apr 2002 11:43:18 -0700 Received: (from majordomo@localhost) by oss.sgi.com (8.12.3/8.12.3/Submit) id g3UIhIK6026385 for kdb-outgoing; Tue, 30 Apr 2002 11:43:18 -0700 X-Authentication-Warning: oss.sgi.com: majordomo set sender to owner-kdb@oss.sgi.com using -f Received: from rwcrmhc52.attbi.com (rwcrmhc52.attbi.com [216.148.227.88]) by oss.sgi.com (8.12.3/8.12.3) with SMTP id g3UIhEwJ026369 for ; Tue, 30 Apr 2002 11:43:14 -0700 Received: from cs.columbia.edu ([12.234.195.52]) by rwcrmhc52.attbi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with ESMTP id <20020430184402.BNVN4412.rwcrmhc52.attbi.com@cs.columbia.edu>; Tue, 30 Apr 2002 18:44:02 +0000 Message-ID: <3CCEE5F2.D1024627@cs.columbia.edu> Date: Tue, 30 Apr 2002 11:44:02 -0700 From: Ethan Solomita X-Mailer: Mozilla 4.78 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: jim.houston@attbi.com CC: kdb@oss.sgi.com Subject: Re: kdb problems with SMP systems References: <3CCEC226.54575A34@attbi.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-kdb@oss.sgi.com Precedence: bulk Jim Houston wrote: > > I have been seeing the problems Ethan described on > SMP i386. I was impressed by his writing and clear > analysis of the problems. > OK, fine: you're flattery has convinced me to just finish the fixes and make them public. They're about 80-85% done, at least on my sparc64 system. > I'm very interested in seeing this fixed and would > like to work with you. I have some time to work on > this, and I'm up to speed on the code. I have done > similar work on debuggers for a couple of proprietary > UNIX systems. If there is a fix in the works, I would > like see what you're doing. > Once I put out the patch, you can figure out why it doesn't work on i386. 8-) > I also noticed that single stepping saves and > restores the interrupt enable flag. If you single > step over an instruction which changes this flag, you > lose its effect. > On sparc64 this isn't a big issue (%pil vs. pstate.IE), so I hadn't looked into it. -- Ethan