From owner-freebsd-stable@FreeBSD.ORG Thu Dec 4 07:12:48 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 66B701065679 for ; Thu, 4 Dec 2008 07:12:48 +0000 (UTC) (envelope-from frode@nordahl.net) Received: from smtp3.powertech.no (smtp3.powertech.no [195.159.0.178]) by mx1.freebsd.org (Postfix) with ESMTP id EBC458FC1E for ; Thu, 4 Dec 2008 07:12:47 +0000 (UTC) (envelope-from frode@nordahl.net) Received: from dhcp1.xu.nordahl.net (dhcp1.xu.nordahl.net [195.159.148.120]) by smtp3.powertech.no (Postfix) with ESMTP id 6819BC59F3; Thu, 4 Dec 2008 08:12:46 +0100 (CET) Message-Id: <8A6A8FA5-07A6-4A12-B9AD-6E77E534CED7@nordahl.net> From: Frode Nordahl To: Kostik Belousov In-Reply-To: <20081203194348.GB2401@deviant.kiev.zoral.com.ua> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v929.2) Date: Thu, 4 Dec 2008 08:12:45 +0100 References: <3B675385-956D-4A26-8E09-E338DF7D7244@nordahl.net> <20081203173939.GA2401@deviant.kiev.zoral.com.ua> <20081203194348.GB2401@deviant.kiev.zoral.com.ua> X-Mailer: Apple Mail (2.929.2) Cc: freebsd-stable@freebsd.org Subject: Re: FreeBSD 7.1-PRERELEASE-p1, panic: dqget: free dquot isn't X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Dec 2008 07:12:48 -0000 On 3. des.. 2008, at 20.43, Kostik Belousov wrote: > On Wed, Dec 03, 2008 at 08:12:22PM +0100, Frode Nordahl wrote: >> (moved to freebsd-stable) >> >> On 3. des.. 2008, at 18.39, Kostik Belousov wrote: >> >>>> db> where >>>> Tracing pid 41111 tid 100199 td 0xffffff0056f1f370 >>>> kdb_enter_why() at kdb_enter_why+0x3d >>>> panic() at panic+0x17b >>>> dqget() at dqget+0xaa4 >>>> getinoquota() at getinoquota+0x5b >>>> ufs_access() at ufs_access+0x28c >>>> ufs_lookup() at ufs_lookup+0x9fe >>>> vfs_cache_lookup() at vfs_cache_lookup+0xf8 >>>> VOP_LOOKUP_APV() at VOP_LOOKUP_APV+0x40 >>>> lookup() at lookup+0x531 >>>> namei() at namei+0x35d >>>> kern_rmdir() at kern_rmdir+0xbd >>>> syscall() at syscall+0x256 >>>> Xfast_syscall() at Xfast_syscall+0xab >>> >>> For the start, I want to see the content of the *dq in the dqget() >>> frame. >> >> >> I am unable to get to *dq :-( >> >> (kgdb) frame 10 >> #10 0xffffffff806dbc54 in dqget (vp=0xffffff011e0767e0, id=419444, >> ump=0xffffff00038a9000, type=0, dqp=0xffffff0122e47268) >> at /usr/src/sys/ufs/ufs/ufs_quota.c:1210 >> 1210 panic("dqget: free dquot isn't"); > If this is repeatable, change panic to > panic("dqget: free dquot isn't %p", dq); > > and then in kgdb p/x *(struct dquot *) Got it! panic: dqget: free dquot isn't dq=0xffffff00b3d27000 (kgdb) p/x *(struct dquot *)0xffffff00b3d27000 $1 = {dq_hash = {le_next = 0x0, le_prev = 0xffffff010b9da700}, dq_freelist = { tqe_next = 0xffffff0055e2de00, tqe_prev = 0xffffffff80b03710}, dq_lock = { lock_object = {lo_name = 0xffffffff8088c21c, lo_type = 0xffffffff8088c21c, lo_flags = 0x1030000, lo_witness_data = {lod_list = {stqe_next = 0x0}, lod_witness = 0x0}}, mtx_lock = 0x4, mtx_recurse = 0x0}, dq_flags = 0xc, dq_type = 0x0, dq_cnt = 0x0, dq_id = 0x16a37d, dq_ump = 0xffffff00038e1600, dq_dqb = {dqb_bhardlimit = 0x0, dqb_bsoftlimit = 0x0, dqb_curblocks = 0x0, dqb_ihardlimit = 0x0, dqb_isoftlimit = 0x0, dqb_curinodes = 0x1, dqb_btime = 0x493ef2b5, dqb_itime = 0x493ef2b5}} Let me know if I can provide any more information! Updated the crashinfo archive you got an URL to yesterday if you want to poke around yourself. -- Frode Nordahl