From owner-freebsd-hackers Mon Jan 8 0:27:31 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from wantadilla.lemis.com (wantadilla.lemis.com [192.109.197.80]) by hub.freebsd.org (Postfix) with ESMTP id A74E237B400 for ; Mon, 8 Jan 2001 00:27:12 -0800 (PST) Received: by wantadilla.lemis.com (Postfix, from userid 1004) id D1BF76A90D; Mon, 8 Jan 2001 18:57:09 +1030 (CST) Date: Mon, 8 Jan 2001 18:57:09 +1030 From: Greg Lehey To: Roman Shterenzon Cc: hackers@freebsd.org Subject: Dump analysis (was: Ideas? (fwd)) Message-ID: <20010108185709.D83353@wantadilla.lemis.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from roman@xpert.com on Mon, Jan 08, 2001 at 10:04:44AM +0200 Organization: LEMIS, PO Box 460, Echunga SA 5153, Australia Phone: +61-8-8388-8286 Fax: +61-8-8388-8725 Mobile: +61-418-838-708 WWW-Home-Page: http://www.lemis.com/~grog X-PGP-Fingerprint: 6B 7B C3 8C 61 CD 54 AF 13 24 52 F8 6D A4 95 EF Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Monday, 8 January 2001 at 10:04:44 +0200, Roman Shterenzon wrote: > * Roman Shterenzon [010107 10:24] wrote: >> Hi, >> >> Could you please take a look at : >> http://www.freebsd.org/cgi/query-pr.cgi?pr=24019 >> It's my friend's PR. Can you give me some hints on how can I debug this >> issue. I'm completely puzzled here. >> It panics on "goto out" with page fault. What I understand from it is that >> the block at the address it tries to jmp to isn't present. But it's kernel >> code which is never swapped out. Does it mean that the address was >> rewritten? If it's so, what can rewrite this address? Ideas? My first suspicion here is that the sources are out of sync with the kernel you're debugging. It's very important to ensure that they are absolutely in sync. Here are a couple of incantations to throw at this dump (you may recognize the second one from an earlier mail exchange): (kgdb) x/10i epread (kgdb) x/10i 0xc012a038 The first one should show the beginning of the function; if it's in sync it will look like (modulo addresses): (kgdb) x/10i epread 0xc0165f8c : push %ebp 0xc0165f8d : mov %esp,%ebp 0xc0165f8f : sub $0x1c,%esp 0xc0165f92 : push %edi 0xc0165f93 : push %esi 0xc0165f94 : push %ebx 0xc0165f95 : mov 0x8(%ebp),%eax 0xc0165f98 : mov %eax,0xfffffff4(%ebp) 0xc0165f9b : mov 0x118(%eax),%edx 0xc0165fa1 : add $0x8,%edx In particular, those first two instructions are at the beginning of just about every function, so if you don't find them, you should check whether your code is in sync. >> P.S. Can it be due to faulty hardware? Or faulty Italian cuisine? In each case, not if it's repeatable. Greg -- Finger grog@lemis.com for PGP public key See complete headers for address and phone numbers To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message