From owner-freebsd-current@FreeBSD.ORG Wed Jun 15 02:51:48 2005 Return-Path: X-Original-To: freebsd-current@FreeBSD.org Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3792D16A41C for ; Wed, 15 Jun 2005 02:51:48 +0000 (GMT) (envelope-from dwhite@gumbysoft.com) Received: from carver.gumbysoft.com (carver.gumbysoft.com [66.220.23.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DA2C43D49 for ; Wed, 15 Jun 2005 02:51:48 +0000 (GMT) (envelope-from dwhite@gumbysoft.com) Received: by carver.gumbysoft.com (Postfix, from userid 1000) id 0F79C72DDB; Tue, 14 Jun 2005 19:51:48 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by carver.gumbysoft.com (Postfix) with ESMTP id 0D6C372DD9; Tue, 14 Jun 2005 19:51:48 -0700 (PDT) Date: Tue, 14 Jun 2005 19:51:48 -0700 (PDT) From: Doug White To: Jeremie Le Hen In-Reply-To: <20050614143403.GL30017@obiwan.tataz.chchile.org> Message-ID: <20050614195053.F24745@carver.gumbysoft.com> References: <20050614143403.GL30017@obiwan.tataz.chchile.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: freebsd-current@FreeBSD.org Subject: Re: panic while mkdir(2) in msdosfs (deget()) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jun 2005 02:51:48 -0000 On Tue, 14 Jun 2005, Jeremie Le Hen wrote: > Hi, > > I got a panic on friday while I was uploading files through FTP at a > high rate (100Mb/s). Given this panic occured while doing an mkdir(2), > you understand that the msdosfs partition is where the FTP daemon > was writing. > > The system is > %%% > jarjarbinks:tataz$ uname -a > FreeBSD jarjarbinks.tataz.chchile.org 6.0-CURRENT FreeBSD 6.0-CURRENT #149: Thu Jun 9 00:25:52 CEST 2005 root@jarjarbinks.tataz.chchile.org:/usr/src/sys/i386/compile/JARJARBINKS i386 > %%% > > Here is the stack trace: > %%% > #22 0xc055f075 in panic (fmt=0xc0729ff0 "wrong dirclust") > at ../../../kern/kern_shutdown.c:537 > #23 0xc050e207 in deget (pmp=0xc2914900, dirclust=366469, diroffset=0, > depp=0xe50ecae8) at ../../../fs/msdosfs/msdosfs_denode.c:142 This is in a KASSERT so you must have INVARIANTS compiled in. What is the value of dirclust and (*depp)->de_dirclust in this frame? > #24 0xc05122c1 in createde (dep=0xe50ecafc, ddep=0xc2b30400, depp=0xe50ecae8, > cnp=0xe50ecc18) at ../../../fs/msdosfs/msdosfs_lookup.c:673 > #25 0xc05170d0 in msdosfs_mkdir (ap=0xe50ecbb0) > at ../../../fs/msdosfs/msdosfs_vnops.c:1375 > #26 0xc07017ac in VOP_MKDIR_APV (vop=0x0, a=0xe50ecbb0) at vnode_if.c:1248 > #27 0xc05ce054 in kern_mkdir (td=0xc2575190, > path=0x8060360
, segflg=UIO_USERSPACE, > mode=511) at vnode_if.h:653 > #28 0xc05cdd19 in mkdir (td=0x0, uap=0x0) at ../../../kern/vfs_syscalls.c:3321 > #29 0xc06e6540 in syscall (frame= > {tf_fs = -1078001605, tf_es = -452067269, tf_ds = 59, tf_edi = 203, tf_esi = 134611360, tf_ebp = -1077943752, tf_isp = -452014748, tf_ebx = 134611808, tf_edx = 0, tf_ecx = 134684744, tf_eax = 136, tf_trapno = 0, tf_err = 2, tf_eip = 672334223, tf_cs = 51, tf_eflags = 582, tf_esp = -1077943780, tf_ss = 59}) > at ../../../i386/i386/trap.c:976 > #30 0xc06d219f in Xint0x80_syscall () at ../../../i386/i386/exception.s:200 > %%% > > I checked the source code, but my skills are not as high as I'd like and > I wasn't able to understand where this panic has its source. All I can > see is that it has good chances to be related to phk's vfs_hash updates. > > A dump is available, if needed. > > Regards, > -- Doug White | FreeBSD: The Power to Serve dwhite@gumbysoft.com | www.FreeBSD.org