From owner-freebsd-hackers Fri Jan 3 20:55:58 2003 Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2D4CE37B401 for ; Fri, 3 Jan 2003 20:55:57 -0800 (PST) Received: from msgbas1x.cos.agilent.com (msgbas1x.cos.agilent.com [192.25.240.36]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8DCBB43EC5 for ; Fri, 3 Jan 2003 20:55:56 -0800 (PST) (envelope-from ctuffli@rose.agilent.com) Received: from relcos2.cos.agilent.com (relcos2.cos.agilent.com [130.29.152.237]) by msgbas1x.cos.agilent.com (Postfix) with ESMTP id 364B015ED6 for ; Fri, 3 Jan 2003 21:55:46 -0700 (MST) Received: from rtl.rose.agilent.com (rtl.rose.agilent.com [130.30.179.189]) by relcos2.cos.agilent.com (Postfix) with ESMTP id D31A4803 for ; Fri, 3 Jan 2003 21:55:45 -0700 (MST) Received: from mail.rose.agilent.com (mailsrv@bellhop [130.30.179.19]) by rtl.rose.agilent.com (8.9.3 (PHNE_18979)/8.9.3 SMKit7.1.0) with ESMTP id UAA08368 for ; Fri, 3 Jan 2003 20:55:45 -0800 (PST) Received: from thegrail (anu.rose.agilent.com [156.140.225.186]) by mail.rose.agilent.com (Netscape Messaging Server 3.6) with ESMTP id AAACAC for ; Fri, 3 Jan 2003 20:55:42 -0800 Received: by thegrail (Postfix, from userid 1001) id 09A12846AE; Fri, 3 Jan 2003 20:50:48 -0800 (PST) Date: Fri, 3 Jan 2003 20:50:48 -0800 From: Chuck Tuffli To: freebsd-hackers@FreeBSD.ORG Subject: question about SMP stack pointer Message-ID: <20030104045048.GA40466@thegrail.rose.agilent.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG In debugging a new SCSI driver for 4.7-RELEASE on a SMP machine, there is a panic I'm trying to understand. I found a comment in sys/i386/include/globaldata.h that says * SMP_PRIVPAGES: The per-cpu address space is 0xff80000 -> 0xffbfffff The panic I see on the console prints Fatal double fault: eip = 0xc037383c esp = 0xff78fd44 ebp = 0xff80fd70 mp_lock = 01000001; cpuid = 1; lapic.id = 00000000 ... Assuming the first value in the comment is missing a trailing zero, does the value of esp above indicate that CPU #1's stack overflowed? Is this an interrupt (exception?) stack? If so, where does it start and how big is it? Tnx! The particulars: - machine is a SuperMicro with 2 Pentium 4's and hyper-threading enabled - code is 4.7-RELEASE - configuration diffs vs GENERIC ! #cpu I386_CPU ! #cpu I486_CPU ! #cpu I586_CPU cpu I686_CPU ! ident SMP ! makeoptions DEBUG=-g ! options DDB ! options GDB_REMOTE_CHAT ! options BREAK_TO_DEBUGGER ! options CONSPEED=115200 ! options INVARIANTS ! options INVARIANT_SUPPORT ! options SMP # Symmetric MultiProcessor Kernel ! options APIC_IO # Symmetric (APIC) I/O ! device sio0 at isa? port IO_COM1 flags 0x90 irq 4 -- Chuck Tuffli Agilent Technologies, Storage and Networking To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message