dirhash crash in RELENG_6?

From: Mikhail T. <mi_at_aldan.algebra.com>
Date: Sun, 20 Nov 2005 20:03:40 -0500 (EST)
Hello!

I just had a nasty crash, while trying to start a freshly built
abiword.

Here is my kgdb poking around. The system runs 6.0-STABLE from Nov 13.

	-mi

[GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or 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.
This GDB was configured as "amd64-marcel-freebsd".

Unread portion of the kernel message buffer:


Fatal trap 9: general protection fault while in kernel mode
cpuid = 0; apic id = 00
instruction pointer	= 0x8:0xffffffff803c2236
stack pointer	        = 0x10:0xffffffffb80075f0
frame pointer	        = 0x10:0xffffff006ca43000
code segment		= base 0x0, limit 0xfffff, type 0x1b
			= DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags	= interrupt enabled, resume, IOPL = 0
current process		= 38790 (AbiWord-2.4)
trap number		= 9
panic: general protection fault
cpuid = 0
Uptime: 7d8h13m49s
Dumping 4095 MB (3 chunks)
  chunk 0: 1MB (156 pages) ... ok
  chunk 1: 2559MB (655088 pages) 2543 2527 2511 2495 2479 2463 2447 2431 2415 2399 2383 2367 2351 2335 2319 2303 2287 2271 2255 2239 2223 2207 2191 2175 2159 2143 2127 2111 2095 2079 2063 2047 2031 2015 1999 1983 1967 1951 1935 1919 1903 1887 1871 1855 1839 1823 1807 1791 1775 1759 1743 1727 1711 1695 1679 1663 1647 1631 1615 1599 1583 1567 1551 1535 1519 1503 1487 1471 1455 1439 1423 1407 1391 1375 1359 1343 1327 1311 1295 1279 1263 1247 1231 1215 1199 1183 1167 1151 1135 1119 1103 1087 1071 1055 1039 1023 1007 991 975 959 943 927 911 895 879 863 847 831 815 799 783 767 751 735 719 703 687 671 655 639 623 607 591 575 559 543 527 511 495 479 463 447 431 415 399 383 367 351 335 319 303 287 271 255 239 223 207 191 175 159 143 127 111 95 79 63 47 31 15 ... ok
  chunk 2: 1536MB (393216 pages) 1521 1505 1489 1473 1457 1441 1425 1409 1393 1377 1361 1345 1329 1313 1297 1281 1265 1249 1233 1217 1201 1185 1169 1153 1137 1121 1105 1089 1073 1057 1041 1025 1009 993 977 961 945 929 913 897 881 865 849 833 817 801 785 769 753 737 721 705 689 673 657 641 625 609 593 577 561 545 529 513 497 481 465 449 433 417 401 385 369 353 337 321 305 289 273 257 241 225 209 193 177 161 145 129 113 97 81 65 49 33 17 1

#0  doadump () at pcpu.h:172
172		__asm __volatile("movq %%gs:0,%0" : "=r" (td));
(kgdb) where
#0  doadump () at pcpu.h:172
#1  0x0000000000000004 in ?? ()
#2  0xffffffff802ac0f7 in boot (howto=260)
    at ../../../kern/kern_shutdown.c:399
#3  0xffffffff802ac791 in panic (fmt=0xffffff00392a24c0 "Ày\235_at_")
    at ../../../kern/kern_shutdown.c:555
#4  0xffffffff804047d7 in trap_fatal (frame=0xffffff00392a24c0, 
    eva=18446742975281985984) at ../../../amd64/amd64/trap.c:655
#5  0xffffffff80404c82 in trap (frame=
      {tf_rdi = 2272, tf_rsi = -1093962765824, tf_rdx = 207, tf_rcx = 0, tf_r8 = 463, tf_r9 = 6714722, tf_rax = 0, tf_rbx = -1099499642880, tf_rbp = -1097688928256, tf_r10 = 7454421654995730432, tf_r11 = 0, tf_r12 = 512, tf_r13 = 463, tf_r14 = -1099499642880, tf_r15 = -1095121764976, tf_trapno = 9, tf_addr = 0, tf_flags = -1095121764976, tf_err = 0, tf_rip = -2143542730, tf_cs = 8, tf_rflags = 66134, tf_rsp = -1207929344, tf_ss = 16}) at ../../../amd64/amd64/trap.c:467
#6  0xffffffff803f217b in calltrap () at ../../../amd64/amd64/exception.S:168
#7  0xffffffff803c2236 in ufsdirhash_lookup (ip=0xffffff005dc1e3c0, 
    name=0xffffff0089c81c20 "system.profile-uk", namelen=17, 
    offp=0xffffff005dc1e42c, bpp=0xffffffffb80076d0, prevoffp=0x0)
    at ../../../ufs/ufs/ufs_dirhash.c:394
#8  0xffffffff803c3de9 in ufs_lookup (ap=0xffffffffb80077c0)
    at ../../../ufs/ufs/ufs_lookup.c:209
#9  0xffffffff80446c6a in VOP_CACHEDLOOKUP_APV (vop=0x0, a=0xffffff014abcea00)
    at vnode_if.c:150
#10 0xffffffff80307dd5 in vfs_cache_lookup (ap=0x8e0) at vnode_if.h:82
#11 0xffffffff804479ad in VOP_LOOKUP_APV (vop=0xffffffff805e4240, 
    a=0xffffffffb80078a0) at vnode_if.c:99
#12 0xffffffff8030c3c9 in lookup (ndp=0xffffffffb8007a20) at vnode_if.h:56
#13 0xffffffff8030cec5 in namei (ndp=0xffffffffb8007a20)
    at ../../../kern/vfs_lookup.c:203
#14 0xffffffff8031c894 in kern_stat (td=0xffffff00392a24c0, 
    path=0xffffff014abcea00 "", pathseg=207, sbp=0xffffffffb8007af0)
    at ../../../kern/vfs_syscalls.c:2053
#15 0xffffffff8031ca17 in stat (td=0x8e0, uap=0xffffffffb8007bc0)
    at ../../../kern/vfs_syscalls.c:2038
#16 0xffffffff80405631 in syscall (frame=
      {tf_rdi = 12979200, tf_rsi = 140737488346848, tf_rdx = 13036064, tf_rcx = 12979200, tf_r8 = -56960, tf_r9 = 0, tf_rax = 188, tf_rbx = 140737488347040, tf_rbp = 0, tf_r10 = 0, tf_r11 = 0, tf_r12 = 13036192, tf_r13 = 0, tf_r14 = 77, tf_r15 = 12971008, tf_trapno = 12, tf_addr = 13148160, tf_flags = 0, tf_err = 2, tf_rip = 34421415036, tf_cs = 43, tf_rflags = 514, tf_rsp = 140737488346840, tf_ss = 35}) at ../../../amd64/amd64/trap.c:787
#17 0xffffffff803f2318 in Xfast_syscall ()
    at ../../../amd64/amd64/exception.S:270
#18 0x0000000803ad1c7c in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb) frame 7
#7  0xffffffff803c2236 in ufsdirhash_lookup (ip=0xffffff005dc1e3c0, 
    name=0xffffff0089c81c20 "system.profile-uk", namelen=17, 
    offp=0xffffff005dc1e42c, bpp=0xffffffffb80076d0, prevoffp=0x0)
    at ../../../ufs/ufs/ufs_dirhash.c:394
394			for (i = slot; (offset = DH_ENTRY(dh, i)) != DIRHASH_EMPTY;
(kgdb) p dh
$1 = (struct dirhash *) 0xffffff006ca43000
(kgdb) p *dh
$2 = {dh_mtx = {mtx_object = {lo_class = 0xffffffff805caad0, 
      lo_name = 0xffffffff8048b107 "dirhash", 
      lo_type = 0xffffffff8048b107 "dirhash", lo_flags = 196608, lo_list = {
        tqe_next = 0x0, tqe_prev = 0x0}, lo_witness = 0x0}, 
    mtx_lock = 18446742975156987072, mtx_recurse = 0}, 
  dh_hash = 0xffffff014abcea00, dh_narrays = 2, dh_hlen = 512, dh_hused = 75, 
  dh_blkfree = 0xffffff0000c747b0 "\001\002\003\001Hcp_time", dh_nblk = 8, 
  dh_dirblks = 5, dh_firstfree = {-1, 0, 1, 2, -1 <repeats 63 times>, 4}, 
  dh_seqopt = 1, dh_seqoff = 2272, dh_score = 64, dh_onlist = 1, dh_list = {
    tqe_next = 0xffffff0087091400, tqe_prev = 0xffffff00548a8590}}
(kgdb) p i
$3 = 0
(kgdb) p slot
$4 = 463
(kgdb) quit
Received on Mon Nov 21 2005 - 00:03:42 UTC

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