Date: Wed, 26 Mar 2003 01:35:46 +0100 From: Alexander Langer <alex@big.endian.de> To: current@FreeBSD.org Subject: panic: indiracct: botched params (including a sound page fault) Message-ID: <20030326003546.GA819@fump.kawo2.rwth-aachen.de>
next in thread | raw e-mail | index | archive | help
Hi! With Terry's suggestion I turned ATA WC off this morning, and now, this happened: A crash when I pressed play in XMMS (this seems to be the first page fault you see, and then, with fsck in the background: yet another panic (UFS2 related?): The crashdump is a bit odd, since I don't know why it actually paniced (see the very end of this mail). Script started on Wed Mar 26 01:20:39 2003 (kgdb) core-file vmcore.2 panic: indiracct: botched params panic messages: --- Fatal trap 12: page fault while in kernel mode fault virtual address =3D 0x24 fault code =3D supervisor read, page not present instruction pointer =3D 0x8:0xc021cdbb stack pointer =3D 0x10:0xd6828c40 frame pointer =3D 0x10:0xd6828c54 code segment =3D base 0x0, limit 0xfffff, type 0x1b =3D DPL 0, pres 1, def32 1, gran 1 processor eflags =3D interrupt enabled, resume, IOPL =3D 0 current process =3D 24 (irq5: pcm0) trap number =3D 12 panic: page fault syncing disks, buffers remaining... 3668 3668 Copyright (c) 1992-2003 The F= reeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.0-CURRENT #5: Tue Mar 18 16:04:55 CET 2003 alex@fump.kawo2.rwth-aachen.de:/data/obj/usr/src/sys/ZEROGRAVITY Preloaded elf kernel "/boot/kernel/kernel" at 0xc0682000. Preloaded elf module "/boot/kernel/nvidia.ko" at 0xc06820b4. Preloaded elf module "/boot/kernel/linux.ko" at 0xc0682160. Preloaded elf module "/boot/kernel/acpi.ko" at 0xc068220c. Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 1477360975 Hz CPU: AMD Athlon(TM) XP1700+ (1477.36-MHz 686-class CPU) Origin =3D "AuthenticAMD" Id =3D 0x662 Stepping =3D 2 Features=3D0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,= CMOV,PAT,PSE36,MMX,FXSR,SSE> AMD Features=3D0xc0480000<MP,AMIE,DSP,3DNow!> real memory =3D 536788992 (511 MB) avail memory =3D 514334720 (490 MB) Allocating major#253 to "net" Allocating major#252 to "pci" Pentium Pro MTRR support enabled npx0: <math processor> on motherboard npx0: INT 16 interface acpi0: <ASUS A7V266-E> on motherboard ACPI-0625: *** Info: GPE Block0 defined as GPE0 to GPE15 pcibios: BIOS version 2.10 Using $PIR table, 10 entries at 0xc00f13a0 acpi0: power button is handled as a fixed feature programming model. Timecounter "ACPI-fast" frequency 3579545 Hz acpi_timer0: <24-bit timer at 3.579545MHz> port 0xe408-0xe40b on acpi0 acpi_cpu0: <CPU> port 0x530-0x537 on acpi0 acpi_button0: <Power Button> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0 pci1: <ACPI PCI bus> on pcib1 nvidia0: <GeForce2 MX/MX 400> mem 0xf0000000-0xf7ffffff,0xeb000000-0xebffff= ff irq 10 at device 0.0 on pci1 pcm0: <CMedia CMI8738> port 0xd800-0xd8ff irq 5 at device 5.0 on pci0 sym0: <875> port 0xd400-0xd4ff mem 0xea000000-0xea000fff,0xea800000-0xea800= 0ff irq 9 at device 12.0 on pci0 sym0: No NVRAM, ID 7, Fast-20, SE, parity checking xl0: <3Com 3c905B-TX Fast Etherlink XL> port 0xd000-0xd07f mem 0xe9800000-0= xe980007f irq 10 at device 13.0 on pci0 xl0: Ethernet address: 00:50:04:0f:66:6f miibus0: <MII bus> on xl0 xlphy0: <3Com internal media interface> on miibus0 xlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: <display, VGA> at device 15.0 (no driver attached) pci0: <multimedia, video> at device 16.0 (no driver attached) pci0: <multimedia> at device 16.1 (no driver attached) isab0: <PCI-ISA bridge> at device 17.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <VIA 8233 UDMA100 controller> port 0xb800-0xb80f at device 17.1 on= pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <VIA 83C572 USB controller> port 0xb400-0xb41f irq 9 at device 17.2 = on pci0 usb0: <VIA 83C572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered ulpt0: Hewlett-Packard DeskJet 930C, rev 1.00/1.00, addr 2, iclass 7/1 ulpt0: using bi-directional mode uhci1: <VIA 83C572 USB controller> port 0xb000-0xb01f irq 9 at device 17.3 = on pci0 usb1: <VIA 83C572 USB controller> on uhci1 usb1: USB revision 1.0 uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhub1: port error, restarting port 1 uhub1: port error, restarting port 2 uhci2: <VIA 83C572 USB controller> port 0xa800-0xa81f irq 9 at device 17.4 = on pci0 usb2: <VIA 83C572 USB controller> on uhci2 usb2: USB revision 1.0 uhub2: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub2: 2 ports with 2 removable, self powered uhub2: port error, restarting port 1 uhub2: port error, restarting port 2 sio0 port 0x3f8-0x3ff irq 4 on acpi0 sio0: type 16550A sio1 port 0x2f8-0x2ff irq 3 on acpi0 sio1: type 16550A atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model MouseMan+, device ID 0 orm0: <Option ROM> at iomem 0xc0000-0xcc7ff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=3D0x300> vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 10.000 msec ipfw2 initialized, divert enabled, rule-based forwarding enabled, default t= o accept, logging disabled DUMMYNET initialized (011031) IPv6 packet filtering initialized, default to accept, logging disabled acpi_cpu: throttling enabled, 16 steps (100% to 6.2%), currently 100.0% Allocating major#251 to "devstat" ad0: 114473MB <ST3120023A> [232581/16/63] at ata0-master UDMA100 ad2: 57259MB <MAXTOR 4K060H3> [116336/16/63] at ata1-master UDMA100 ad3: 57259MB <MAXTOR 4K060H3> [116336/16/63] at ata1-slave UDMA100 acd0: CD-R <CR-4801TE> at ata0-slave PIO3 Waiting 15 seconds for SCSI devices to settle Mounting root from ufs:/dev/ad0s2a cd1 at ata0 bus 0 target 1 lun 0 cd1: <MITSUMI CR-4801TE 2.03> Removable CD-ROM SCSI-0 device=20 cd1: 11.000MB/s transfers cd1: cd present [359842 x 2352 byte records] cd0 at sym0 bus 0 target 2 lun 0 cd0: <PIONEER DVD-ROM DVD-303 1.10> Removable CD-ROM SCSI-2 device=20 cd0: 20.000MB/s transfers (20.000MHz, offset 8) cd0: Attempt to query device size failed: NOT READY, Medium not present WARNING: / was not properly dismounted WARNING: /usr was not properly dismounted WARNING: / was not properly dismounted WARNING: /data was not properly dismounted /data: mount pending error: blocks 4 files 1 WARNING: /storage was not properly dismounted WARNING: /fun was not properly dismounted WARNING: /tmp was not properly dismounted WARNING: /usr was not properly dismounted WARNING: /var was not properly dismounted link_elf: symbol cdevsw_add undefined WARNING: driver "vmmon" used unreserved major device number 200 /dev/vmmon: Module vmmon: registered with major=3D200 minor=3D0 tag=3D$Name= : build-570 $ /dev/vmmon: Module vmmon: initialized xl0: promiscuous mode enabled vmnet1: promiscuous mode enabled bktr_mem: memory holder loaded bktr0: <BrookTree 878> mem 0xed000000-0xed000fff irq 9 at device 16.0 on pc= i0 bktr0: Hauppauge Model 61344 D421 bktr0: Detected a MSP3415D-B3 at 0x80 bktr0: Hauppauge WinCast/TV, Philips FR1216 PAL FM tuner, msp3400c stereo, = remote control. msp34xx: setvolume: mute=3Doff 0:0 v=3D0x00 b=3D0x00 msp3400: setmode: 0 xl0: transmission error: 90 xl0: tx underrun, increasing tx start threshold to 120 bytes xl0: transmission error: 90 xl0: tx underrun, increasing tx start threshold to 180 bytes vmnet1: promiscuous mode disabled panic: indiracct: botched params syncing disks, buffers remaining... 79 79 75 74 74 68 68 66 66 66 66 66 66 = 66 66 66 66 66 66 66 66 66 66 66 66 66 66=20 giving up on 63 buffers Uptime: 1h40m54s Dumping 511 MB ata0: resetting devices .. done 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 = 336 352 368 384 400 416 432 448 464 480 496 --- #0 doadump () at /usr/src/sys/kern/kern_shutdown.c:239 239 dumping++; (kgdb) up #1 0xc02278bd in boot (howto=3D256) at /usr/src/sys/kern/kern_shutdown.c:3= 71 371 doadump(); (kgdb) up #2 0xc0227bc3 in panic () at /usr/src/sys/kern/kern_shutdown.c:542 542 boot(bootopt); (kgdb) up #3 0xc031f997 in indiracct_ufs2 (snapvp=3D0xc47a85b4, cancelvp=3D0xc49cddb= 0,=20 level=3D0, blkno=3D-2139222244046405632, lbn=3D-12, rlbn=3D12, remblks= =3D8520,=20 blksperindir=3D1, fs=3D0xd13ba000, acctfunc=3D0xc031fcd0 <fullacct_ufs2= >,=20 expungetype=3D1) at /usr/src/sys/ufs/ffs/ffs_snapshot.c:1172 1172 panic("indiracct: botched params"); (kgdb) bt #0 doadump () at /usr/src/sys/kern/kern_shutdown.c:239 #1 0xc02278bd in boot (howto=3D256) at /usr/src/sys/kern/kern_shutdown.c:3= 71 #2 0xc0227bc3 in panic () at /usr/src/sys/kern/kern_shutdown.c:542 #3 0xc031f997 in indiracct_ufs2 (snapvp=3D0xc47a85b4, cancelvp=3D0xc49cddb= 0,=20 level=3D0, blkno=3D-2139222244046405632, lbn=3D-12, rlbn=3D12, remblks= =3D8520,=20 blksperindir=3D1, fs=3D0xd13ba000, acctfunc=3D0xc031fcd0 <fullacct_ufs2= >,=20 expungetype=3D1) at /usr/src/sys/ufs/ffs/ffs_snapshot.c:1172 #4 0xc031f85f in expunge_ufs2 (snapvp=3D0xc47a85b4, cancelip=3D0xc49be7e0,= =20 fs=3D0xd13ba000, acctfunc=3D0xc031fcd0 <fullacct_ufs2>, expungetype=3D1) at /usr/src/sys/ufs/ffs/ffs_snapshot.c:1130 #5 0xc031d05c in ffs_snapshot (mp=3D0xc42fc000, snapfile=3D---Can't read u= serspace from dump, or kernel process--- ) at /usr/src/sys/ufs/ffs/ffs_snapshot.c:449 #6 0xc032c488 in ffs_mount (mp=3D0xc42fc000, path=3D0xc526f180 "/var", dat= a=3D0x0,=20 ndp=3D0xe24ffbe0, td=3D0xc4210e10) at /usr/src/sys/ufs/ffs/ffs_vfsops.c= :311 #7 0xc027a158 in vfs_mount (td=3D0xc4210e10, fstype=3D0xc466ced0 "ffs",=20 fspath=3D0xc526f180 "/var", fsflags=3D18944000, fsdata=3D0x0) at /usr/src/sys/kern/vfs_mount.c:1085 #8 0xc0279808 in mount (td=3D0x0, uap=3D0xe24ffd10) at /usr/src/sys/kern/vfs_mount.c:843 #9 0xc038cb1a in syscall (frame=3D {tf_fs =3D 47, tf_es =3D 47, tf_ds =3D 47, tf_edi =3D 0, tf_esi =3D -= 1077936704, tf_ebp =3D -1077936824, tf_isp =3D -498074252, tf_ebx =3D 13502= 2758, tf_edx =3D 19, tf_ecx =3D 135022592, tf_eax =3D 21, tf_trapno =3D 12,= tf_err =3D 2, tf_eip =3D 134570971, tf_cs =3D 31, tf_eflags =3D 514, tf_es= p =3D -1077937204, tf_ss =3D 47}) at /usr/src/sys/i386/i386/trap.c:1030 #10 0xc037bb8d in Xint0x80_syscall () at {standard input}:138 ---Can't read userspace from dump, or kernel process--- (kgdb) down #2 0xc0227bc3 in panic () at /usr/src/sys/kern/kern_shutdown.c:542 542 boot(bootopt); (kgdb) up #3 0xc031f997 in indiracct_ufs2 (snapvp=3D0xc47a85b4, cancelvp=3D0xc49cddb= 0,=20 level=3D0, blkno=3D-2139222244046405632, lbn=3D-12, rlbn=3D12, remblks= =3D8520,=20 blksperindir=3D1, fs=3D0xd13ba000, acctfunc=3D0xc031fcd0 <fullacct_ufs2= >,=20 expungetype=3D1) at /usr/src/sys/ufs/ffs/ffs_snapshot.c:1172 1172 panic("indiracct: botched params"); (kgdb) list 1167 struct buf *bp; 1168=09 1169 if ((error =3D ufs_getlbns(cancelvp, rlbn, indirs, &num)) !=3D 0) 1170 return (error); 1171 if (lbn !=3D indirs[num - 1 - level].in_lbn || blkno =3D=3D 0 || num = < 2) 1172 panic("indiracct: botched params"); 1173 /* 1174 * We have to expand bread here since it will deadlock looking 1175 * up the block number for any blocks that are not in the cache. 1176 */ (kgdb) print snapvp $1 =3D (struct vnode *) 0xc47a85b4 (kgdb) print *snapvp $2 =3D {v_interlock =3D {mtx_object =3D {lo_class =3D 0xc0405e00,=20 lo_name =3D 0xc03c3823 "vnode interlock",=20 lo_type =3D 0xc03c3823 "vnode interlock", lo_flags =3D 196608, lo_lis= t =3D { tqe_next =3D 0x0, tqe_prev =3D 0x0}, lo_witness =3D 0x0}, mtx_lock = =3D 4,=20 mtx_recurse =3D 0, mtx_blocked =3D {tqh_first =3D 0x0, tqh_last =3D 0xc= 47a85d8},=20 mtx_contested =3D {le_next =3D 0x0, le_prev =3D 0x0}}, v_iflag =3D 512,= =20 v_usecount =3D 1, v_numoutput =3D 0, v_vxproc =3D 0x0, v_holdcnt =3D 17,= =20 v_cleanblkhd =3D {tqh_first =3D 0xce60dd50, tqh_last =3D 0xce665d9c},=20 v_cleanblkroot =3D 0xce5c0460, v_cleanbufcnt =3D 10, v_dirtyblkhd =3D { tqh_first =3D 0xce5b3eb8, tqh_last =3D 0xce66fd74},=20 v_dirtyblkroot =3D 0xce66fcd0, v_dirtybufcnt =3D 7, v_vflag =3D 0,=20 v_writecount =3D 0, v_object =3D 0x0, v_lastw =3D 0, v_cstart =3D 0, v_la= sta =3D 0,=20 v_clen =3D 0, v_un =3D {vu_mountedhere =3D 0x0, vu_socket =3D 0x0, vu_spe= c =3D { vu_cdev =3D 0x0, vu_specnext =3D {sle_next =3D 0x0}}, vu_fifoinfo =3D= 0x0},=20 v_freelist =3D {tqe_next =3D 0xc4d8dc8c, tqe_prev =3D 0xc043cc74}, v_nmnt= vnodes =3D { tqe_next =3D 0x0, tqe_prev =3D 0xc4c121c4}, v_synclist =3D {le_next =3D= 0x0,=20 le_prev =3D 0xc40792d8}, v_type =3D VREG, v_tag =3D 0xc03c6783 "ufs",= =20 v_data =3D 0xc4d95f30, v_lock =3D {lk_interlock =3D 0xc043a1c8,=20 lk_flags =3D 16778304, lk_sharecount =3D 0, lk_waitcount =3D 0,=20 lk_exclusivecount =3D 1, lk_prio =3D 80, lk_wmesg =3D 0xc03c6783 "ufs",= =20 lk_timo =3D 6, lk_lockholder =3D 0xc4210e10, lk_newlock =3D 0x0},=20 v_vnlock =3D 0xc47a8670, v_op =3D 0xc4071a00, v_mount =3D 0xc42fc000,=20 v_cache_src =3D {lh_first =3D 0x0}, v_cache_dst =3D {tqh_first =3D 0x0,= =20 tqh_last =3D 0xc47a86a4}, v_id =3D 7614422, v_dd =3D 0xc47a85b4, v_ddid= =3D 0,=20 v_pollinfo =3D 0x0, v_label =3D {l_flags =3D 0, l_perpolicy =3D {{l_ptr = =3D 0x0,=20 l_long =3D 0}, {l_ptr =3D 0x0, l_long =3D 0}, {l_ptr =3D 0x0, l_lon= g =3D 0}, { l_ptr =3D 0x0, l_long =3D 0}}}, v_cachedfs =3D 1045, v_cachedid =3D= 4294967295} (kgdb) print *cancelvp $3 =3D {v_interlock =3D {mtx_object =3D {lo_class =3D 0xc0405e00,=20 lo_name =3D 0xc03c3823 "vnode interlock",=20 lo_type =3D 0xc03c3823 "vnode interlock", lo_flags =3D 196608, lo_lis= t =3D { tqe_next =3D 0x0, tqe_prev =3D 0x0}, lo_witness =3D 0x0}, mtx_lock = =3D 4,=20 mtx_recurse =3D 0, mtx_blocked =3D {tqh_first =3D 0x0, tqh_last =3D 0xc= 49cddd4},=20 mtx_contested =3D {le_next =3D 0x0, le_prev =3D 0x0}}, v_iflag =3D 1024= ,=20 v_usecount =3D 28, v_numoutput =3D 0, v_vxproc =3D 0x0, v_holdcnt =3D 0,= =20 v_cleanblkhd =3D {tqh_first =3D 0x0, tqh_last =3D 0xc49cddf8},=20 v_cleanblkroot =3D 0x0, v_cleanbufcnt =3D 0, v_dirtyblkhd =3D {tqh_first = =3D 0x0,=20 tqh_last =3D 0xc49cde08}, v_dirtyblkroot =3D 0x0, v_dirtybufcnt =3D 0,= =20 v_vflag =3D 12, v_writecount =3D 1, v_object =3D 0xc48e1688, v_lastw =3D = 0,=20 v_cstart =3D 0, v_lasta =3D 0, v_clen =3D 0, v_un =3D {vu_mountedhere =3D= 0x0,=20 vu_socket =3D 0x0, vu_spec =3D {vu_cdev =3D 0x0, vu_specnext =3D { sle_next =3D 0x0}}, vu_fifoinfo =3D 0x0}, v_freelist =3D {tqe_next = =3D 0x0,=20 tqe_prev =3D 0x0}, v_nmntvnodes =3D {tqe_next =3D 0xc4d17c8c,=20 tqe_prev =3D 0xc48c7d2c}, v_synclist =3D {le_next =3D 0xc4a3b5b4,=20 le_prev =3D 0xc4afdd34}, v_type =3D VREG, v_tag =3D 0xc03c6783 "ufs",= =20 v_data =3D 0xc49be7e0, v_lock =3D {lk_interlock =3D 0xc043a7ac,=20 lk_flags =3D 16778304, lk_sharecount =3D 0, lk_waitcount =3D 0,=20 lk_exclusivecount =3D 1, lk_prio =3D 80, lk_wmesg =3D 0xc03c6783 "ufs",= =20 lk_timo =3D 6, lk_lockholder =3D 0xc4210e10, lk_newlock =3D 0x0},=20 v_vnlock =3D 0xc49cde6c, v_op =3D 0xc4071a00, v_mount =3D 0xc42fc000,=20 v_cache_src =3D {lh_first =3D 0x0}, v_cache_dst =3D {tqh_first =3D 0x0,= =20 tqh_last =3D 0xc49cdea0}, v_id =3D 4388, v_dd =3D 0xc49cddb0, v_ddid = =3D 0,=20 v_pollinfo =3D 0x0, v_label =3D {l_flags =3D 0, l_perpolicy =3D {{l_ptr = =3D 0x0,=20 l_long =3D 0}, {l_ptr =3D 0x0, l_long =3D 0}, {l_ptr =3D 0x0, l_lon= g =3D 0}, { l_ptr =3D 0x0, l_long =3D 0}}}, v_cachedfs =3D 1044, v_cachedid =3D= 16647} (kgdb) print *fs $4 =3D {fs_firstfield =3D 0, fs_unused_1 =3D 0, fs_sblkno =3D 40, fs_cblkno= =3D 48,=20 fs_iblkno =3D 56, fs_dblkno =3D 1088, fs_old_cgoffset =3D 0, fs_old_cgmas= k =3D 0,=20 fs_old_time =3D 0, fs_old_size =3D 0, fs_old_dsize =3D 0, fs_ncg =3D 4,= =20 fs_bsize =3D 16384, fs_fsize =3D 2048, fs_frag =3D 8, fs_minfree =3D 8,= =20 fs_old_rotdelay =3D 0, fs_old_rps =3D 0, fs_bmask =3D -16384, fs_fmask = =3D -2048,=20 fs_bshift =3D 14, fs_fshift =3D 11, fs_maxcontig =3D 8, fs_maxbpg =3D 204= 8,=20 fs_fragshift =3D 3, fs_fsbtodb =3D 2, fs_sbsize =3D 2048, fs_spare1 =3D {= 0, 0},=20 fs_nindir =3D 2048, fs_inopb =3D 64, fs_old_nspf =3D 0, fs_optim =3D 0,= =20 fs_old_npsect =3D 0, fs_old_interleave =3D 0, fs_old_trackskew =3D 0, fs_= id =3D { 1045068191, 750210778}, fs_old_csaddr =3D 0, fs_cssize =3D 2048,=20 fs_cgsize =3D 6144, fs_spare2 =3D 0, fs_old_nsect =3D 0, fs_old_spc =3D 0= ,=20 fs_old_ncyl =3D 0, fs_old_cpg =3D 0, fs_ipg =3D 8256, fs_fpg =3D 32776,= =20 fs_old_cstotal =3D {cs_ndir =3D 0, cs_nbfree =3D 0, cs_nifree =3D 0, cs_n= ffree =3D 0},=20 fs_fmod =3D 1 '\001', fs_clean =3D 0 '\0', fs_ronly =3D 0 '\0',=20 fs_old_flags =3D -128 '\200', fs_fsmnt =3D "/var", '\0' <repeats 463 time= s>,=20 fs_volname =3D '\0' <repeats 31 times>, fs_swuid =3D 0, fs_pad =3D 0,=20 fs_cgrotor =3D 0, fs_ocsp =3D {0x0 <repeats 28 times>},=20 fs_contigdirs =3D 0xc4193810 "", fs_csp =3D 0xc53fa000,=20 fs_maxcluster =3D 0xc53fe000, fs_active =3D 0xc466cd70, fs_old_cpc =3D 0,= =20 fs_maxbsize =3D 16384, fs_sparecon64 =3D {0 <repeats 17 times>},=20 fs_sblockloc =3D 65536, fs_cstotal =3D {cs_ndir =3D 378, cs_nbfree =3D 26= 82,=20 cs_nifree =3D 30813, cs_nffree =3D 969, cs_numclusters =3D 0, cs_spare = =3D {0, 0,=20 0}}, fs_time =3D 1048637187, fs_size =3D 131072, fs_dsize =3D 126839,= =20 fs_csaddr =3D 1088, fs_pendingblocks =3D 0, fs_pendinginodes =3D 0, fs_sn= apinum =3D { 0 <repeats 20 times>}, fs_avgfilesize =3D 16384, fs_avgfpdir =3D 64,=20 fs_save_cgsize =3D 0, fs_sparecon32 =3D {0 <repeats 26 times>}, fs_flags = =3D 3,=20 fs_contigsumsize =3D 8, fs_maxsymlinklen =3D 120, fs_old_inodefmt =3D 0,= =20 fs_maxfilesize =3D 140806241583103, fs_qbmask =3D 16383, fs_qfmask =3D 20= 47,=20 fs_state =3D 0, fs_old_postblformat =3D 0, fs_old_nrpos =3D 0, fs_spare5 = =3D {0, 0},=20 fs_magic =3D 424935705} (kgdb) print *actfunc=08 =08=08 =08=08 =08=08 =08=08 =08ctfunc $5 =3D {int (struct vnode *, ufs2_daddr_t *, ufs2_daddr_t *, struct fs *,= =20 ufs_lbn_t, int)} 0xc031fcd0 <fullacct_ufs2> (kgdb) list 1167 struct buf *bp; 1168=09 1169 if ((error =3D ufs_getlbns(cancelvp, rlbn, indirs, &num)) !=3D 0) 1170 return (error); 1171 if (lbn !=3D indirs[num - 1 - level].in_lbn || blkno =3D=3D 0 || num = < 2) 1172 panic("indiracct: botched params"); 1173 /* 1174 * We have to expand bread here since it will deadlock looking 1175 * up the block number for any blocks that are not in the cache. 1176 */ (kgdb) print lbn $6 =3D -12 (kgdb) prin indirs Ambiguous command "prin indirs": print, printf. (kgdb) print indirs $7 =3D {{in_lbn =3D -12, in_off =3D 0, in_exists =3D 0}, {in_lbn =3D -12, i= n_off =3D 0,=20 in_exists =3D 0}, {in_lbn =3D -1, in_off =3D 1, in_exists =3D -49807611= 6}, { in_lbn =3D -4288968683751867066, in_off =3D -996314160,=20 in_exists =3D -996314136}, {in_lbn =3D -784621568, in_off =3D -1, in_ex= ists =3D 1}} (kgdb) print num $8 =3D 2 (kgdb) print level $9 =3D 0 (kgdb) print indirs[num - 1 - level].in_lbn $10 =3D -12 (kgdb) print blkno $11 =3D -2139222244046405632 (kgdb) quit The most interesting part is this: (kgdb) list 1167 struct buf *bp; 1168=09 1169 if ((error =3D ufs_getlbns(cancelvp, rlbn, indirs, &num)) !=3D 0) 1170 return (error); 1171 if (lbn !=3D indirs[num - 1 - level].in_lbn || blkno =3D=3D 0 || num = < 2) 1172 panic("indiracct: botched params"); 1173 /* 1174 * We have to expand bread here since it will deadlock looking 1175 * up the block number for any blocks that are not in the cache. 1176 */ (kgdb) print lbn $1 =3D -12 (kgdb) print indirs[num - 1 - level].in_lbn $2 =3D -12 (kgdb) print blkno $3 =3D -2139222244046405632 (kgdb) print num $4 =3D 2 (kgdb) quit so, neither is lbn !=3D the indirs[...].in_lbn (both are -12), nor is bklno =3D=3D 0, nor is num < 2. And it still paniced? HUH? Where's the error? :) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030326003546.GA819>