From owner-freebsd-stable@FreeBSD.ORG Wed Apr 16 16:35:35 2008 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8EF681065670 for ; Wed, 16 Apr 2008 16:35:35 +0000 (UTC) (envelope-from bahamasfranks@gmail.com) Received: from an-out-0708.google.com (an-out-0708.google.com [209.85.132.251]) by mx1.freebsd.org (Postfix) with ESMTP id 3C69C8FC15 for ; Wed, 16 Apr 2008 16:35:35 +0000 (UTC) (envelope-from bahamasfranks@gmail.com) Received: by an-out-0708.google.com with SMTP id c14so732428anc.13 for ; Wed, 16 Apr 2008 09:35:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:reply-to:sender:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; bh=zd2YSfAHj5pKAfKI25TMJ+BWBAvLn2ugB/RQZ6ihRRs=; b=eEjpY3DcRuZCbX0bGs/kT9Su+GlX0RinNVHceb9JC2oihnQzt6JPkA4GB+TEIFZ1Fopcl95ViOK9sTR4qR8eKWoYZ2ObXtIM8b/Y8UHjQOAt4JUaDWzW+G2SF1zDYt8bxo9tGbN9fJ4WPCZkuin35h4V5xw2c4IBYknIVd3ivJU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:sender:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=HO6e2IQlVFM3Cz1zrWOw1KqV4oJKP7XnBp6itHcv6FHx6qRS0I8hHKmAkKvCqHQXNxxh/tR40jWKvT3HWM942kPxYlgDN9K7Vcp+ml9iPWahpQ7j5vCg19YOEYsZ/Dt0tZb32P5H7of042IIajco+UesXm3gvg33Mfrxl8Iq/Dw= Received: by 10.100.252.17 with SMTP id z17mr312178anh.6.1208362223258; Wed, 16 Apr 2008 09:10:23 -0700 (PDT) Received: by 10.100.253.13 with HTTP; Wed, 16 Apr 2008 09:10:23 -0700 (PDT) Message-ID: <539c60b90804160910q3a242d7amb474b40065d6c9c6@mail.gmail.com> Date: Wed, 16 Apr 2008 09:10:23 -0700 From: "Steve Franks" Sender: bahamasfranks@gmail.com To: "Roland Smith" , freebsd-stable@freebsd.org In-Reply-To: <20080415192028.GA31706@slackbox.xs4all.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <539c60b90804111420kcb73e6do8a20dce574d13864@mail.gmail.com> <20080412213225.GB24224@slackbox.xs4all.nl> <539c60b90804141549u6a138ad9u9c77bbfcbbad0ff3@mail.gmail.com> <20080415175347.GA29045@slackbox.xs4all.nl> <539c60b90804151134q7a25a141m1205a1b04d8ffc2c@mail.gmail.com> <20080415192028.GA31706@slackbox.xs4all.nl> X-Google-Sender-Auth: 60462e72f0d26161 Cc: Subject: Re: umass causes panic on 7 amd64 X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: stevefranks@ieee.org List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Apr 2008 16:35:35 -0000 On Tue, Apr 15, 2008 at 12:20 PM, Roland Smith wrote: > On Tue, Apr 15, 2008 at 11:34:31AM -0700, Steve Franks wrote: > > Being a naturally curious guy, with your pointers, I've located the fo= llowing: > > > > [steve@dystant /var/crash]$ sudo cat info.2 > > Yep. This is what you need. > > > > Dump header from device /dev/ad4s1b > > Architecture: amd64 > > Architecture Version: 2 > > Dump Length: 211496960B (201 MB) > > Blocksize: 512 > > Dumptime: Fri Apr 11 11:02:40 2008 > > As you can see it went wrong _just_ after you plugged in the olympus. > > > > Hostname: dystant.franks-development.dyndns.biz > > Magic: FreeBSD Kernel Dump > > Version String: FreeBSD 7.0-STABLE #14: Mon Mar 10 16:35:38 MST 2008 > > steve@dystant.franks-development.dyndns.biz:/usr/obj/usr/src/sys/G= ENERIC > > Panic String: page fault > > This is what caused the crash. The system was trying to access memory > that it shouldn't. The question is where did it happen. > > > > Dump Parity: 2580707083 > > Bounds: 2 > > Dump Status: good > > The developers' handbook* will show you how to debug the crashdump. The > developers will be interested in the cause of the crash and the stack > backtrace. See =A710.2 of the developers' handbook. > > With that info you could post a question on the -amd64 or -stable list. > > (* if installed you should be able to find it at > file:///usr/share/doc/en_US.ISO8859-1/books/developers-handbook/index.ht= ml) > > > > [steve@dystant /var/log]$ cat messages.0 | grep umass > > Apr 11 11:02:39 dystant kernel: umass0: > I presume that the next line is 'Copyright (c) 1992-2008 The FreeBSD Pro= ject.'? > That would indicate that the systems crashes before it gets to assign a > da device to the umass device. > > If it is something like 'da0 at umass-sim0 bus 0 target 0 lun 0' it is > interesting as well, because it can show _where_ things go wrong. > > Try something like "grep -A 1 'umass0: <' /var/log/messages.0" > > By the way, can you reproduce the crash with another umass device? > > > > It could be hardware-related, I guess - the crash is rather faster if > > I plug into the front of the case vs. directly into the motherboard in > > the back. > > That could be interesting. But it could also be caused by the topology > of the usb bus. I'm not an expert on this issue. :-) > > > > The interesting thing is that it is only umass, not ucom, > > ugen, or ums (they all play fine). > > Well, they are different drivers using different code paths through the > kernel. But it will help in narrowing down the cause of the crash. > > My guesstimate would be that it bombs in trying to assign a da device to > the umass device. But I could be wrong. > > BTW, if you post a followup to one of the mailing lists, don't forget to > mention what usb controller you're using. You can easily find that out > with 'dmesg|grep "^usb"'. This will show you how many usb controllers > you have and what type of controller chip they use. > > > > Roland > -- > R.F.Smith http://www.xs4all.nl/~rsmith= / > [plain text _non-HTML_ PGP/GnuPG encrypted/signed email much appreciated= ] > pgp: 1A2B 477F 9970 BA3C 2914 B7CE 1277 EFB0 C321 A725 (KeyID: C321A725= ) > freebsd-stable: as you can see, Roland has been teaching me about crashdumps since my umass brought down one system, and is rather unusable on another. Here's the kgdb output: Best, Steve [steve@dystant /usr/obj/usr/src/sys/GENERIC]$ sudo kgdb kernel.debug /var/crash/vmcore.3 [GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"] GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you ar= e welcome to change it and/or distribute copies of it under certain condition= s. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "amd64-marcel-freebsd". Unread portion of the kernel message buffer: Fatal trap 12: page fault while in kernel mode cpuid =3D 0; apic id =3D 00 fault virtual address =3D 0x0 fault code =3D supervisor read instruction, page not present instruction pointer =3D 0x8:0x0 stack pointer =3D 0x10:0xffffffffa0208570 frame pointer =3D 0x10:0xffffff0001e1ca00 code segment =3D base 0x0, limit 0xfffff, type 0x1b =3D DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags =3D interrupt enabled, resume, IOPL =3D 0 current process =3D 12 (swi4: clock sio) trap number =3D 12 panic: page fault cpuid =3D 0 Uptime: 32s Physical memory: 1002 MB Dumping 96 MB: 81 65 49 33 17 #0 doadump () at pcpu.h:194 194 __asm __volatile("movq %%gs:0,%0" : "=3Dr" (td)); (kgdb)