Re: panic while mkdir(2) in msdosfs (deget())

From: Doug White <dwhite_at_gumbysoft.com>
Date: Tue, 14 Jun 2005 19:51:48 -0700 (PDT)
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_at_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 <Address 0x8060360 out of bounds>, 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_at_gumbysoft.com          |  www.FreeBSD.org
Received on Wed Jun 15 2005 - 00:51:48 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:36 UTC