From owner-freebsd-fs@FreeBSD.ORG Wed Jul 29 16:11:21 2009 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AEAED106570C; Wed, 29 Jul 2009 16:11:21 +0000 (UTC) (envelope-from serenity@exscape.org) Received: from ch-smtp01.sth.basefarm.net (ch-smtp01.sth.basefarm.net [80.76.149.212]) by mx1.freebsd.org (Postfix) with ESMTP id 2CDD98FC14; Wed, 29 Jul 2009 16:11:21 +0000 (UTC) (envelope-from serenity@exscape.org) Received: from c83-253-252-234.bredband.comhem.se ([83.253.252.234]:42542 helo=mx.exscape.org) by ch-smtp01.sth.basefarm.net with esmtp (Exim 4.68) (envelope-from ) id 1MWBkE-0000Fc-52; Wed, 29 Jul 2009 18:11:12 +0200 Received: from [192.168.1.5] (macbookpro [192.168.1.5]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by mx.exscape.org (Postfix) with ESMTPSA id 07EBB164111; Wed, 29 Jul 2009 18:11:08 +0200 (CEST) Message-Id: <6D47A34B-0753-4CED-BF3D-C505B37748FC@exscape.org> From: Thomas Backman To: Andriy Gapon In-Reply-To: <4A70728C.7020004@freebsd.org> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v935.3) Date: Wed, 29 Jul 2009 18:11:05 +0200 References: <20090727072503.GA52309@jpru.ffm.jpru.de> <4A6E06E6.9030300@mail.zedat.fu-berlin.de> <4A6EC9E2.5070200@icyb.net.ua> <20090729084723.GD1586@garage.freebsd.pl> <4A7030B6.8010205@icyb.net.ua> <97D5950F-4E4D-4446-AC22-92679135868D@exscape.org> <4A7048A9.4020507@icyb.net.ua> <52AA86CB-6C06-4370-BA73-CE19175467D0@exscape.org> <4A705299.8060504@icyb.net.ua> <4A7054E1.5060402@icyb.net.ua> <5918824D-A67C-43E6-8685-7B72A52B9CAE@exscape.org> <4A705E50.8070307@icyb.net.ua> <4A70728C.7020004@freebsd.org> X-Mailer: Apple Mail (2.935.3) X-Originating-IP: 83.253.252.234 X-Scan-Result: No virus found in message 1MWBkE-0000Fc-52. X-Scan-Signature: ch-smtp01.sth.basefarm.net 1MWBkE-0000Fc-52 11cadf99453aff79f729591724eaf8de Cc: freebsd-fs@freebsd.org, FreeBSD current , Pawel Jakub Dawidek Subject: Re: zfs: Fatal trap 12: page fault while in kernel mode X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2009 16:11:23 -0000 On Jul 29, 2009, at 18:02, Andriy Gapon wrote: > on 29/07/2009 17:36 Andriy Gapon said the following: >> on 29/07/2009 17:10 Thomas Backman said the following: >> [snip] >>> (kgdb) fr 11 >> [snip] >>> (kgdb) p *sx >>> $8 = {lock_object = {lo_name = 0xffffffff80b5634c "zp->z_lock", >>> lo_flags >>> = 40894464 [0x2700000, btw], lo_data = 0, lo_witness = 0x0}, >>> sx_lock = 6} >>> >>> ... as you might notice, I'm mostly clueless as to what I'm doing >>> here. :o >>> Hope that helps (a bit), though. >> >> Yes, it does and a lot. >> sx_lock = 6 means that this sx lock is destroyed: >> #define >> SX_LOCK_DESTROYED \ >> (SX_LOCK_SHARED_WAITERS | SX_LOCK_EXCLUSIVE_WAITERS) >> >> And lo_name tells that this is zp->z_lock. >> This lock is destroyed in zfs_znode_cache_destructor. >> Not enough knowledge for me to proceed further. > > So I guess that this is a case when zfs_znode_delete() was called on > znode that > was still referenced from some vnode. When the vnode gets reclaimed > we get this > problem. > Could you please examine vp in frame 15 or 16? > > -- > Andriy Gapon Sure. Lots of info in that one: (kgdb) fr 15 #15 0xffffffff803c839e in vgonel (vp=0xffffff0009252588) at vnode_if.h: 830 830 in vnode_if.h (kgdb) p *vp $3 = {v_type = VDIR, v_tag = 0xffffffff80b56347 "zfs", v_op = 0xffffffff80b5af00, v_data = 0xffffff00090d5000, v_mount = 0xffffff0002cd7bc0, v_nmntvnodes = {tqe_next = 0xffffff00090f5000, tqe_prev = 0xffffff0009252960}, v_un = {vu_mount = 0x0, vu_socket = 0x0, vu_cdev = 0x0, vu_fifoinfo = 0x0, vu_yield = 0}, v_hashlist = { le_next = 0x0, le_prev = 0x0}, v_hash = 0, v_cache_src = {lh_first = 0x0}, v_cache_dst = {tqh_first = 0x0, tqh_last = 0xffffff00092525e8}, v_cache_dd = 0x0, v_cstart = 0, v_lasta = 0, v_lastw = 0, v_clen = 0, v_lock = { lock_object = {lo_name = 0xffffffff80b56347 "zfs", lo_flags = 91947008, lo_data = 0, lo_witness = 0x0}, lk_lock = 18446742974952890368, lk_timo = 51, lk_pri = 80}, v_interlock = {lock_object = { lo_name = 0xffffffff806126d9 "vnode interlock", lo_flags = 16973824, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, v_vnlock = 0xffffff0009252620, v_holdcnt = 1, v_usecount = 0, v_iflag = 128, v_vflag = 0, v_writecount = 0, v_freelist = {tqe_next = 0xffffff00090c3760, tqe_prev = 0xffffff002c0bfc18}, v_bufobj = { bo_mtx = {lock_object = {lo_name = 0xffffffff806126e9 "bufobj interlock", lo_flags = 16973824, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, bo_clean = {bv_hd = {tqh_first = 0x0, tqh_last = 0xffffff00092526c0}, bv_root = 0x0, bv_cnt = 0}, bo_dirty = {bv_hd = {tqh_first = 0x0, tqh_last = 0xffffff00092526e0}, bv_root = 0x0, bv_cnt = 0}, bo_numoutput = 0, bo_flag = 0, bo_ops = 0xffffffff8079afa0, bo_bsize = 131072, bo_object = 0x0, bo_synclist = {le_next = 0x0, le_prev = 0x0}, bo_private = 0xffffff0009252588, __bo_vnode = 0xffffff0009252588}, v_pollinfo = 0x0, v_label = 0x0, v_lockf = 0x0} Regards, Thomas