Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Feb 1997 18:18:03 +0200 (EET)
From:      Heikki Suonsivu <hsu@clinet.fi>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   kern/2773: bad dir
Message-ID:  <199702191618.SAA04519@news.clinet.fi>
Resent-Message-ID: <199702191620.IAA29797@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         2773
>Category:       kern
>Synopsis:       bad dir panic
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Feb 19 08:20:04 PST 1997
>Last-Modified:
>Originator:     Heikki Suonsivu
>Organization:
Clinet, Espoo, Finland
>Release:        FreeBSD 2.2-GAMMA i386
>Environment:

2.2 news server, 2940, 128M, 7 * 3G quantum fb.

>Description:

hsu#news.clinet.fi Wed 2: gdb -k kernel.2 vmcore.2
GDB is free software and you are welcome to distribute copies of it
 under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.13 (i386-unknown-freebsd), 
Copyright 1994 Free Software Foundation, Inc...
IdlePTD b21000
current pcb at 0x21b3fc
panic: from debugger
#0  boot (howto=256) at ../../kern/kern_shutdown.c:243
243                                     dumppcb.pcb_cr3 = rcr3();
(kgdb) bt
#0  boot (howto=256) at ../../kern/kern_shutdown.c:243
#1  0xf0116013 in panic (fmt=0xf0101439 "from debugger")
    at ../../kern/kern_shutdown.c:367
#2  0xf0101455 in db_panic (dummy1=-266634537, dummy2=0, dummy3=-1, 
    dummy4=0xefbffc0c "") at ../../ddb/db_command.c:436
#3  0xf0101345 in db_command (last_cmdp=0xf020bb24, cmd_table=0xf020b974, 
    aux_cmd_tablep=0xf0255d00) at ../../ddb/db_command.c:333
#4  0xf01014c2 in db_command_loop () at ../../ddb/db_command.c:458
#5  0xf0103c88 in db_trap (type=12, code=0) at ../../ddb/db_trap.c:73
#6  0xf01cfccb in kdb_trap (type=12, code=0, regs=0xefbffd50)
    at ../../i386/i386/db_interface.c:126
#7  0xf01d953f in trap_fatal (frame=0xefbffd50) at ../../i386/i386/trap.c:738
#8  0xf01d9038 in trap_pfault (frame=0xefbffd50, usermode=0)
    at ../../i386/i386/trap.c:653
#9  0xf01d8cd7 in trap (frame={tf_es = 16, tf_ds = 16, tf_edi = 8191, 
      tf_esi = -169903616, tf_ebp = -272630236, tf_isp = -272630408, 
      tf_ebx = -132091846, tf_edx = -142553356, tf_ecx = 49210, tf_eax = 0, 
      tf_trapno = 12, tf_err = 0, tf_eip = -266634537, tf_cs = 8, 
      tf_eflags = 66182, tf_esp = -174733312, tf_ss = -272630176})
    at ../../i386/i386/trap.c:311
#10 0xf01b7ad7 in ufs_lookup (ap=0xefbffe60) at ../../ufs/ufs/ufs_lookup.c:279
#11 0xf0134299 in lookup (ndp=0xefbfff0c) at vnode_if.h:31
#12 0xf0133ddb in namei (ndp=0xefbfff0c) at ../../kern/vfs_lookup.c:156
#13 0xf01379b9 in unlink (p=0xf58d1400, uap=0xefbfff94, retval=0xefbfff84)
    at ../../kern/vfs_syscalls.c:986
#14 0xf01d97f7 in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi = 0, 
      tf_esi = 20047930, tf_ebp = -272642264, tf_isp = -272629788, 
      tf_ebx = 20047947, tf_edx = 20047908, tf_ecx = 1801, tf_eax = 10, 
      tf_trapno = 7, tf_err = 7, tf_eip = 134834753, tf_cs = 31, 
      tf_eflags = 582, tf_esp = -272642564, tf_ss = 39})
    at ../../i386/i386/trap.c:892
#15 0x8096a41 in ?? ()
#16 0x32fe in ?? ()
#17 0x53dc in ?? ()
#18 0xcfeb in ?? ()
#19 0xedc7 in ?? ()
#20 0xf477 in ?? ()
#21 0x99eb in ?? ()
#22 0xc592 in ?? ()
#23 0x1096 in ?? ()
(kgdb) frame 10
#10 0xf01b7ad7 in ufs_lookup (ap=0xefbffe60) at ../../ufs/ufs/ufs_lookup.c:279
279                     ep = (struct direct *)((char *)bp->b_data + entryoffsetinblock);
(kgdb) list
274                      * Full validation checks are slow, so we only check
275                      * enough to insure forward progress through the
276                      * directory. Complete checks can be run by patching
277                      * "dirchk" to be true.
278                      */
279                     ep = (struct direct *)((char *)bp->b_data + entryoffsetinblock);
280                     if (ep->d_reclen == 0 ||
281                         (dirchk && ufs_dirbadentry(vdp, ep, entryoffsetinblock))) {
282                             int i;
283
(kgdb) print ep
$1 = (struct direct *) 0xf820703a
(kgdb) print *ep
Cannot access memory at address 0xf820703a.
(kgdb) print bp
$2 = (struct buf *) 0xf780cef4
(kgdb) print *bp
$3 = {b_hash = {le_next = 0xf77e5b9c, le_prev = 0xf77e3784}, b_vnbufs = {
    le_next = 0xf78131c8, le_prev = 0xf595c830}, b_freelist = {
    tqe_next = 0xf78169a4, tqe_prev = 0xf022bb0c}, b_act = {tqe_next = 0x0, 
    tqe_prev = 0xf57b91d4}, b_proc = 0x0, b_flags = 1049104, b_qindex = 0, 
  b_usecount = 4 '\004', b_error = 0, b_bufsize = 8192, b_bcount = 8192, 
  b_resid = 0, b_dev = 1132, b_un = {
    b_addr = 0xf8205000 "Path: news.clinet.fi!news.cs.hut.fi!news.funet.fi!newsfeed.sunet.se!news00.sunet.se!sunic!mn6.swip.net!plug.news.pipex.net!pipex!oleane!newsxfer3.itd.umich.edu!news.bbnplanet.com!su-news-hub1.bbnplane"...}, 
  b_kvabase = 0xf8205000 "Path: news.clinet.fi!news.cs.hut.fi!news.funet.fi!newsfeed.sunet.se!news00.sunet.se!sunic!mn6.swip.net!plug.news.pipex.net!pipex!oleane!newsxfer3.itd.umich.edu!news.bbnplanet.com!su-news-hub1.bbnplane"..., 
  b_kvasize = 8192, b_saveaddr = 0x0, b_lblkno = 5, b_blkno = 760176, 
  b_iodone = 0, b_iodone_chain = 0x0, b_vp = 0xf595c800, b_dirtyoff = 0, 
  b_dirtyend = 0, b_rcred = 0x0, b_wcred = 0x0, b_validoff = 0, 
  b_validend = 0, b_pblkno = 760176, b_savekva = 0x0, b_driver1 = 0x0, 
  b_driver2 = 0x0, b_spc = 0x0, b_cluster = {cluster_head = {
      tqh_first = 0xf78169a4, tqh_last = 0xf7813258}, cluster_entry = {
      tqe_next = 0xf78169a4, tqe_prev = 0xf7813258}}, b_pages = {0xf0c3e3e8, 
    0xf0c08a84, 0x0 <repeats 14 times>}, b_npages = 1016327}
(kgdb) print entryoffsetinblock
$4 = 8250
(kgdb)

dumps available on request

>How-To-Repeat:

run a busy news server

>Fix:
	

>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199702191618.SAA04519>